我正在为按需交货配置我的安卓应用程序。这个应用程序使用的是设备管理器API,我正试图将其分解为单独的模块。现在应用程序有了app module和admin module
需要一个xml文件,其中列出了应用程序想要使用的管理策略。当这个xml文件被移动到管理模块( admin /res/xml/device_admin_policies.xml)时,android会在android资源链接错误之后生成
ERROR:...\app\build\intermediates\packaged_manifests\debug\AndroidManifest.xml:376: AAPT: error: resource /device_admin_policies(又名com.app.package: xml/device_admin_policies )未找到。
请注意,错误出现在合并的清单中,在编译时生成。如果我把这个文件移回app模块,它就能工作了。
我正在尝试使用设备管理API ( Device ),为此我需要将这个xml文件放在管理模块中。我不确定是否有可能以某种方式从管理模块中获取文件。
管理模块
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:dist="http://schemas.android.com/apk/distribution"
package="com.app.package.ad">
<dist:module
dist:instant="false"
dist:title="@string/title_lock">
<dist:delivery>
<dist:install-time />
</dist:delivery>
<dist:fusing dist:include="false" />
</dist:module>
<application android:hasCode="true">
<activity
android:name=".MainActivity"
android:exported="false" />
<activity android:name=".AdminPermissionActivity" />
<receiver
android:name=".admin.DeviceAdministrator"
android:permission="android.permission.BIND_DEVICE_ADMIN"
android:exported="false">
<meta-data
android:name="android.app.device_admin"
android:resource="@xml/device_admin_policies" />
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
<action android:name="android.app.action.DEVICE_ADMIN_DISABLED" />
<action android:name="android.app.action.ACTION_PASSWORD_FAILED" />
<action android:name="android.app.action.ACTION_PASSWORD_SUCCEED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
</application>
</manifest>xml文件(device_admin_policies.xml)
<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
<uses-policies>
<force-lock />
<disable-keyguard-features />
<watch-login />
</uses-policies>
</device-admin>发布于 2022-02-04 17:48:25
当AAPT抱怨无法找到XML资源文件时,这是一个给定的事实。
该文件的位置为:src/main/res/xml/device_admin_policies.xml。
将基本模块资源打包到动态功能模块中将无法工作.
只能在动态特性模块中引用基本模块资源。
发布于 2022-02-10 07:29:57
消除视图查找
我们使用数据绑定获得的最基本的东西是消除findViewById。为了使它对布局文件有效,首先我们需要通过创建外部标记来更改布局文件,而不是使用任何ViewGroup (请注意,还应该移动XML名称空间):
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:id="@+id/tvLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>https://stackoverflow.com/questions/70936660
复制相似问题