Android 项目与封装项目

Android project with an encapsulated project

我不知道是否可以实现我要写的内容,但我会尽力解释得更好。

  1. 创建一个Android项目及其活动,我们可以调用它,例如ModuleProject

  2. 创建第二个 Android 项目及其活动,我们可以将其命名为 MainProject。在一个 activity 中,我需要显示 ModuleProject.

  3. 的 activity

我想这样做是为了避免安装两个不同的应用程序。用户应该只安装 MainProject 其中 "encapsulate" ModuleProject.

为此,我尝试了:

  1. 使用样本 Activity 创建 ModuleProjectMainActivityModule)。模块名称是 app1;
  2. 在布局中创建一个带有 MainActivity 和 Button 的 MainProject。模块名称是 app;
  3. 从 Android Studio,文件,新建,导入模块,我选择了 ModuleProject;
  4. 的源代码
  5. 从文件,项目结构,我添加了模块的依赖关系;
  6. 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 变量。