Android 项目与封装项目
Android project with an encapsulated project
我不知道是否可以实现我要写的内容,但我会尽力解释得更好。
创建一个Android项目及其活动,我们可以调用它,例如ModuleProject
创建第二个 Android 项目及其活动,我们可以将其命名为 MainProject。在一个 activity 中,我需要显示 ModuleProject.
的 activity
我想这样做是为了避免安装两个不同的应用程序。用户应该只安装 MainProject 其中 "encapsulate" ModuleProject.
为此,我尝试了:
- 使用样本 Activity 创建 ModuleProject(MainActivityModule)。模块名称是 app1;
- 在布局中创建一个带有 MainActivity 和 Button 的 MainProject。模块名称是 app;
- 从 Android Studio,文件,新建,导入模块,我选择了 ModuleProject;
的源代码
- 从文件,项目结构,我添加了模块的依赖关系;
从 MainProject 的 Activity 我正在尝试创建以下意图:
Intent intent = new Intent(this, MainActivityFirst.class);
但这不起作用,因为我收到以下 Gradle 错误:
TError:Dependency MainProject:app1:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency. File: C:\MainProkect\app1\build\outputs\apk\app1-release-unsigned.apk
我在 Whosebug 上搜索解决方案,有人建议打开模块项目的 build.gradle 文件并进行以下编辑:
apply plugin: 'com.android.application' --> apply plugin: 'com.android.library'
但现在我得到以下错误:
Error:Library projects cannot set applicationId. applicationId is set to 'com.aaa.moduleproject' in default config.
有人可以帮助我吗?提前谢谢你。
从库的 build.gradle 文件中删除 applicationId 变量。
我不知道是否可以实现我要写的内容,但我会尽力解释得更好。
创建一个Android项目及其活动,我们可以调用它,例如ModuleProject
创建第二个 Android 项目及其活动,我们可以将其命名为 MainProject。在一个 activity 中,我需要显示 ModuleProject.
的 activity
我想这样做是为了避免安装两个不同的应用程序。用户应该只安装 MainProject 其中 "encapsulate" ModuleProject.
为此,我尝试了:
- 使用样本 Activity 创建 ModuleProject(MainActivityModule)。模块名称是 app1;
- 在布局中创建一个带有 MainActivity 和 Button 的 MainProject。模块名称是 app;
- 从 Android Studio,文件,新建,导入模块,我选择了 ModuleProject; 的源代码
- 从文件,项目结构,我添加了模块的依赖关系;
从 MainProject 的 Activity 我正在尝试创建以下意图:
Intent intent = new Intent(this, MainActivityFirst.class);
但这不起作用,因为我收到以下 Gradle 错误:
TError:Dependency MainProject:app1:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency. File: C:\MainProkect\app1\build\outputs\apk\app1-release-unsigned.apk
我在 Whosebug 上搜索解决方案,有人建议打开模块项目的 build.gradle 文件并进行以下编辑:
apply plugin: 'com.android.application' --> apply plugin: 'com.android.library'
但现在我得到以下错误:
Error:Library projects cannot set applicationId. applicationId is set to 'com.aaa.moduleproject' in default config.
有人可以帮助我吗?提前谢谢你。
从库的 build.gradle 文件中删除 applicationId 变量。