Android库中的Java类或Java库中的Parcelable对象

时间:2017-02-15 12:56:37

标签: java android android-studio

在我的项目中,我有一组java对象作为我的应用程序模型的一部分,它们都是Java库模块,因为它们是纯Java。 Android应用程序模块使用它们并且这不是问题,我还需要通过我的活动传递它们,因此将它们Parcelable设置为可行。

但我在Android Studio中遇到了一些麻烦,因为Parcelable来自Android,我没有成功在Java模块中使用它。所以我已经测试过在Android库中移动我的类,但是Android似乎忽略了它们,因为它们是纯Java,每个都有一个带有红色J的图标。为了验证我的假设,我已经测试过在Android模块中创建一个Java类,但是没有选择这样做。

有没有办法让类保持在一个独立的模块中,如果有的话,它是什么?或者我应该移动应用程序模块中的所有类? (如果可能,我宁愿避免使用最后的解决方案)

谢谢

编辑:该解决方案似乎使用的是Android库,但我不知道为什么Android Studio在我的模块中表现不佳,我无法在主程序中创建java类和java包图书馆的包裹:

Can't create a Java class in pact44.objects

另外,我无法在pact44主程序包中创建程序包:

Can't create packages in pact44.objects

1 个答案:

答案 0 :(得分:0)

  

所以我已经测试过在Android库中移动我的类,但Android似乎忽略了它们,因为它们是纯Java。

忽略它们?你什么意思?您创建了一个库模块,将代码移入其中,然后您无法从应用程序模块访问此类?

  

为了验证我的假设,我已经测试过在Android模块中创建一个Java类,但是没有选择这样做。

例如,如何创建活动类?必须有创建新Java类的选项。如果IDE没有为您提供创建新Java类的选项,则意味着您尝试在不应该这样做的地方创建它。

如果您想要将库代码与应用程序代码分开,但仍希望能够访问库中的Android类,那么最好的方法是创建一个新的" android库模块"。请记住在app build.gradle

中添加库作为依赖项

请看这里:https://developer.android.com/studio/projects/android-library.html