uni-app 引入uts插件云打包自定义基座后运行失败 报错Failed for parse custom base AndroidManifest.xml file

发布于 1周前 作者 gougou168 来自 Uni-App

uni-app 引入uts插件云打包自定义基座后运行失败 报错Failed for parse custom base AndroidManifest.xml file

操作步骤:

  • hbuilder创建uniappx项目, 导入uni-getLocation-tencent uts插件, 云打包自定义基座, 本地运行。

预期结果:

  • 期望可以正常运行。

实际结果:

  • 报错 Failed for parse custom base AndroidManifest.xml file

bug描述:

demo引入uni-getLocation-tencent uts插件, 云打包自定义基座后,本地真机运行报错 Failed for parse custom base AndroidManifest.xml file

图片

image


7 回复

应该是你的AndroidManifest.xml配置的不对 发出来看下


<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="io.dcloud.nativeresouce">

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/> <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/> <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/> <meta-data android:name="TencentMapSDK" android:value="ZWMBZ-ZEFs6U-QCI3F-HAF3J" />

回复 rexcoder: 你是怎么使用的呢?我打包后直接运行自定义基座没有报错

回复 爱豆豆: 我也是偶现,今天成功了一次。 我是打包完自定义基座,直接基座运行

回复 rexcoder: 我运行基座不报错 但是使用里面的api就报错

uni-app 中引入 uts 插件并进行云打包时,如果遇到 Failed to parse custom base AndroidManifest.xml file 的错误,通常是由于 AndroidManifest.xml 文件格式不正确或存在冲突导致的。以下是一些可能的解决方案:

1. 检查 AndroidManifest.xml 文件

确保你的 AndroidManifest.xml 文件格式正确,并且没有语法错误。你可以使用 XML 验证工具来检查文件的有效性。

2. 检查插件依赖

某些 uts 插件可能会引入额外的依赖或修改 AndroidManifest.xml 文件。确保这些插件的依赖配置正确,并且没有冲突。

3. 清理项目缓存

有时,项目缓存可能会导致问题。你可以尝试清理项目的缓存,然后重新打包。

# 清理 uni-app 项目缓存
rm -rf ./unpackage
rm -rf ./node_modules
npm install

4. 检查 uts 插件配置

确保 uts 插件的配置正确,特别是涉及到 AndroidManifest.xml 的部分。你可以参考 uts 插件的官方文档,确保配置无误。

5. 手动修改 AndroidManifest.xml

如果问题仍然存在,你可以尝试手动修改 AndroidManifest.xml 文件,确保它符合 Android 的标准格式。

6. 使用自定义基座

如果你正在使用自定义基座,确保自定义基座的 AndroidManifest.xml 文件与你的项目配置一致,并且没有冲突。

7. 查看详细日志

查看云打包的详细日志,找到具体的错误信息。日志通常会提供更详细的错误描述,帮助你定位问题。

8. 更新 uni-appHBuilderX

确保你使用的是最新版本的 uni-appHBuilderX。旧版本可能存在已知的 bug,更新到最新版本可能会解决问题。

9. 联系官方支持

如果以上方法都无法解决问题,你可以联系 uni-app 的官方支持团队,提供详细的错误日志和项目配置,寻求帮助。

示例 AndroidManifest.xml 文件

以下是一个简单的 AndroidManifest.xml 文件示例,供参考:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.myapp">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!