Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android库中的Java类或Java库中的可打包对象_Java_Android_Android Studio - Fatal编程技术网

Android库中的Java类或Java库中的可打包对象

Android库中的Java类或Java库中的可打包对象,java,android,android-studio,Java,Android,Android Studio,在我的项目中,我有一组java对象作为我的应用程序模型的一部分,它们都在java库模块中,因为它们是纯java。 Android应用程序模块使用它们,这不是问题,我还需要在我的活动中传递这些信息,因此让它们可打包 但是我在Android Studio中遇到了一些麻烦,因为Parcelable是来自Android的东西,我还没有成功地在Java模块中使用它。所以我已经测试过在Android库中移动我的类,但Android似乎忽略了它们,因为它们是纯Java的,每个类上都有一个带有红色J的图标。为了

在我的项目中,我有一组java对象作为我的应用程序模型的一部分,它们都在java库模块中,因为它们是纯java。 Android应用程序模块使用它们,这不是问题,我还需要在我的活动中传递这些信息,因此让它们
可打包

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

有没有办法将类保存在一个单独的模块中,如果有,是什么方法?还是应该移动应用程序模块中的所有类? (如果可能,我宁愿避免最后一种解决方案)

多谢各位

编辑:解决方案似乎使用了Android库,但我不知道为什么Android Studio在我的模块中表现不好,我无法在库的主包中创建java类和java包:

此外,我无法在
pact44
main包中创建包:

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

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

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

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

如果您想将库代码与应用程序代码分离,但仍希望访问库中的Android类,那么最好的方法是创建一个新的“Android库模块”。记住在app build.gradle中将库作为依赖项添加


看这里:

这已经在帖子中了,我已经尝试过了,但是android studio不建议我在其中创建一个类。。。事实上,这才是真正的问题,我刚刚看到我有另一个android库,我可以在其中创建Java类。我不知道为什么Android Studio不在新模块中向我推荐……gradle在创建新库后是否正在同步项目?您正在尝试在src/main/Java中创建Java类吗?如果您试图在此目录外创建java类,ide将不会给您此选项。因此,我已测试在Android库中移动我的类,但Android似乎忽略了它们,因为它们是纯java。注意:事实上不是这样,对此表示抱歉。我发布了两张显示问题的图片@Flood2d我已经同步了这个项目,它没有改变任何东西,谢谢你,如果性能不是问题的话:你想过使用java Serializable而不是Android Parcelable吗?有关详细信息,请参见是的,是的,抱歉。。。