我开发了一些可重用的android组件,它基本上是一个类.这个类有一些资源依赖,例如一些png drawable,一些xml布局等等.所以这个类引用了自动生成的R文件.我想将这个代码分发到一个像jar文件这样的包给其他开发人员,以便在他们的应用程序中使用.
我已经读过,唯一可行的解决方案是将代码与我的所有资源一起分发,其他人必须将其复制到"res"文件夹(源).
所以我创建了一个jar文件,其中包含类文件(比如包中的MyClass com.xyz.android.app)和资源,并尝试在我的新应用程序中使用它.
所以我使用add external jarseclipse中的选项将jar文件添加到我的新应用程序构建路径中,并将所有资源复制到我的新应用程序的res文件夹中.(活动类说我的新应用程序的MainActivity是在com.abc.myapplication包中,只是在它可能有帮助的情况下)
但是当我运行这个新的应用程序java.lang.ClassCastException时,MyClass类就存在了.我试图调试应用程序,然后我发现在MyClass类中,存在"R无法解决"的问题.
然后我将MainActivity的包更改为com.xyz.android.app(这不是方式,其他开发人员将很乐意这样做),但同样的问题.
但是,当我只复制源java文件,使MainActivity.java和MyClass.java都在com.xyz.android.app包中时,应用程序运行正常.
因此,如果我需要分发其他用户不需要打扰这些包命名的东西,我该如何实现呢?请帮忙 !!
编辑
在android.jar中,也有一些资源.它们如何在项目中引用?它们如何在android类中使用?还有android.R文件?
是不是可以做同样的事情,即为我的可重用代码制作像android.jar这样的jar文件?
| 归档时间: |
|
| 查看次数: |
2485 次 |
| 最近记录: |