问题标签 [android-module]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2349 浏览

android - 在动态功能模块中无法访问资源文件

我正在尝试实现动态交付类型的应用程序。首先,我创建新项目,然后为此创建模块以获取动态步骤

从菜单栏和 Create New Module 对话框中选择 File > New > New Module,选择 Dynamic Feature Module 并单击 Next。
文件夹结构

我创建类并希望访问资源文件夹以使用布局、可绘制文件夹。

也在主模块 gradle 中实现

实现 'com.google.android.play:core:1.2.0' 和 dynamicFeatures = [":dynamic_feature"]

但是动态模块出现 错误错误显示

错误:找不到符号变量 activity_main
错误:找不到符号变量 iv_forward
错误:找不到符号变量 seekBar

https://developer.android.com/studio/projects/dynamic-delivery https://proandroiddev.com/dynamic-feature-module-android-ondemand-module-android-app-bundle-ea0d872b32d

0 投票
0 回答
660 浏览

java - 如何在 Android 中获取模块包上下文

如何使用模块包名称获取模块(子模块/作为模块依赖项导入)上下文?

我需要在子模块中使用自己的包名(模块的包名)来使用上下文。

示例:主应用程序 (com.main.app) 有一个称为子应用程序 (com.sub.app) 的模块依赖项。我需要在模块中使用 com.sub.app 的上下文,但是当我尝试访问上下文时,它总是给我 com.main.app,因为它是在 AppController 中初始化的。

有没有办法获取模块的上下文?

0 投票
2 回答
2400 浏览

android - Gradle 错误 debugCompileClasspath' 仅包含一个文件,但是,在添加新的动态功能模块时,它不包含任何文件

创建了一个新的动态功能模块:动态,构建失败,出现以下异常:任务“:动态:processDebugManifest”执行失败。

预期配置 ':dynamic:debugCompileClasspath' 只包含一个文件,但是,它不包含任何文件。

尝试将 baseFeature true 添加到应用程序 gradle,并收到错误:

在 com.android.build.gradle.internal.dsl.BaseAppModuleExtension 类型的对象上找不到参数 [true] 的方法 baseFeature()。

0 投票
0 回答
22 浏览

android - 将第 3 方库 .jar 文件实施到 android 模块中

大家好,我想在我的模块中实现改造库,如下所示:

但是如果任何用户将使用这个模块将在他的 app/gradle 文件中实现相同的库将面临 multidex 的问题,所以任何帮助能够在我的模块中使用这些库?

0 投票
1 回答
351 浏览

android - 是否可以将两个(正在积极开发的)Android 应用程序模块合并到同一个 Android Studio 项目中?

我有两个工作的 android 应用程序模块 A 和 B 作为同一个 Android Studio 项目。它们中的每一个都可以单独构建和运行。但是,如果我通过指定将模块 A 添加为“模块依赖项”

implementation project(':appA') // 在 app B 的 build gradle 中

进入模块 B 然后构建失败并出现以下错误

当单独构建和运行时,它们中的每一个都可以正常工作。构建工具是 'com.android.tools.build:gradle:3.2.1', supportLibraryVersion = '27.1.1' (对于两个模块) & settings.gradle 文件包含 ':appA', ':appB' .

我也试过把模块A的'application'插件改成'library'(如下图)

apply plugin: 'com.android.library' // 通过删除 applicationId

但结果是一样的。

我是否遗漏了任何东西,或者根本不可能将应用程序模块作为同一项目中其他模块的模块依赖项?

我们的要求是我们有两个由两个不同团队积极开发的应用程序,一个主应用程序应该具有其他应用程序的全部功能,用户应该能够在不需要下载第二个应用程序的情况下切换功能。谢谢

0 投票
0 回答
2869 浏览

android - “libModule”中的实施项目“:app”不起作用

我需要在 Android Studio 中创建包含对主项目的依赖项的模块。我创建新项目和模块,将实现添加到库 gradle,如下所示:

但是当我尝试同步 gradle 时,我得到了下一个错误:

任何想法为什么会发生以及如何解决它?

更新

这是app gradle(很空)

这是图书馆毕业典礼:

0 投票
1 回答
206 浏览

java - 来自库/基础的 Android 覆盖文件

我制作了一个项目,其中我将我的源代码作为基础,并使每个客户端的其他模块依赖于我们称之为库的基础源代码。

这些模块依赖于我们的基本代码。他们所做的只是BaseMainActivityMainActivity模块开始。休息由BaseMainActivity

所以这里是一个结构描述如下

  • Client1 ---> 拥有自己的 res 文件夹、主文件夹和 gradle/manifest 文件
  • Client2 ---> 拥有自己的 res 文件夹、主文件夹和 gradle/manifest 文件
  • Client3 ---> 拥有自己的 res 文件夹、主文件夹和 gradle/manifest 文件
  • BaseProject ---> 拥有自己的 res 文件夹、主文件夹和 gradle/manifest 文件

现在,我们的一位客户更改了一些要求。现在对于那个特定的客户端,我必须覆盖那个特定的 java 文件中的一些功能。我知道我已经在为每个客户用作生产和演示的口味概念。但这不符合我的标准。

请告诉我如何实现这一点。??如果我不清楚,请向我提问。

0 投票
1 回答
1544 浏览

android - 都使用 Glide 的 Android App 和 Library - appPackage1.GlideRequests 不能转换为 appPackage2.GlideRequests

我希望有人以前遇到过这种情况,而这只是我缺少的一个简单设置。基本上我已经构建了一个使用 Glide 的 Kotlin 库,并使用 dagger 在该库中设置我的 glide 实例。这个库本身,在一个虚拟应用程序中运行完美,没有问题。

我有一个旧的 Java 项目,我正在使用这个库进行测试。一切似乎都很好,除非我使用 Glide 功能点击屏幕。应用程序和库中都在使用 Glide,它们似乎正在发生冲突。

这是错误:

在旧的 Java 应用程序 Glide 中存在:

在我的 Kotlin 库中,Glide 存在为:

当从我的库中调用它时,它会引发错误:

0 投票
2 回答
562 浏览

android - Android Studio Module gradle clean install 给出错误 com.android.volley 不存在

设想

我正在尝试创建我的第一个 android 库,它是 Volley 的扩展并提供用于Django REST Framework APIs集成的类。没有视图,只有 Java 类。

这是我的依赖项在模块中的样子:

在模块应用程序中构建 gradle 时我没有收到任何错误。

当我执行 gradle task:clean install时,出现以下错误

错误

源代码

GitHub

我一直在互联网上搜索,但没有成功!以前有人遇到过这个错误吗?我究竟做错了什么?

0 投票
2 回答
387 浏览

android - 如何获取模块中没有应用程序类的非活动类的上下文

我正在尝试获取在我的应用程序模块中的 sharedprefs 中使用的上下文。该模块没有扩展任何活动类,应用程序类也没有。下面是代码:

我尝试了不同的解决方案,但无济于事。getApplicationContext、getActivity、this 或 MyApplication.getContext() 都不起作用(全部抛出错误)