Android资源链接失败:android:platformBuildVersionCode未找到的修复方案
修复AndroidManifest.xml中的资源链接错误
错误信息
Android资源链接失败 D:\AndroidStudioProjects\AndroidStudioProjects\NewProject\app\build\intermediates\packaged_manifests\debug\AndroidManifest.xml:2: error: attribute android:platformBuildVersionCode not found. D:\AndroidStudioProjects\AndroidStudioProjects\NewProject\app\build\intermediates\packaged_manifests\debug\AndroidManifest.xml:2: error: attribute android:platformBuildVersionName not found. error: failed processing manifest.
问题代码(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" android:versionCode="10000" android:versionName="1.0.0" android:compileSdkVersion="32" android:compileSdkVersionCodename="12" android:platformBuildVersionCode="32" android:platformBuildVersionName="12" package="com.newproject.apk"> <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="31" /> <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <application android:allowBackup="true" android:dataExtractionRules="@xml/data_extraction_rules" android:fullBackupContent="@xml/backup_rules" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.NewProject" tools:targetApi="31"> <activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden|screenSize" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <meta-data android:name="android.app.lib_name" android:value="" /> </activity> </application> </manifest>
修复方案
- 删除无效属性:
android:platformBuildVersionCode和android:platformBuildVersionName是旧版构建系统自动生成的属性,新版AGP已不再支持,直接删除原代码第8、9行即可解决核心错误。 - 迁移SDK配置到Gradle:将
android:compileSdkVersion、android:minSdkVersion、android:targetSdkVersion、android:versionCode、android:versionName这些配置从Manifest移到模块级build.gradle(或build.gradle.kts)中统一管理,避免配置冲突。示例Gradle配置:
迁移后可删除Manifest中的android { compileSdk 32 defaultConfig { applicationId "com.newproject.apk" minSdk 19 targetSdk 31 versionCode 10000 versionName "1.0.0" } }uses-sdk标签,或保留标签但移除所有属性。 - 权限适配优化:当前
targetSdkVersion为31,可暂时保留READ_EXTERNAL_STORAGE和WRITE_EXTERNAL_STORAGE权限;若后续升级到Android 13(API 33)及以上,需替换为细分权限(如READ_MEDIA_IMAGES、READ_MEDIA_VIDEO等)。
修复后的Manifest代码示例
<?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="com.newproject.apk"> <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <application android:allowBackup="true" android:dataExtractionRules="@xml/data_extraction_rules" android:fullBackupContent="@xml/backup_rules" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.NewProject" tools:targetApi="31"> <activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden|screenSize" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <meta-data android:name="android.app.lib_name" android:value="" /> </activity> </application> </manifest>
内容的提问来源于stack exchange,提问作者Serzh
相关产品推荐
相关产品推荐

