Xamarin Android API 34在VS2022中构建失败,求解决方案
Xamarin项目升级Android API 34后构建失败无法生成AAB/APK问题
因Google Play政策要求,需将Xamarin项目升级至Android API 34,但修改targetSdkVersion为34后无法正常构建,无法在11月1日前生成*.aab格式归档文件。
报错信息
Skipping target "_CompileToDalvik" because all output files are up-to-date with respect to the input files. Creating "obj\Release\130\android\assets\shrunk\shrunk.flag" because "AlwaysCreate" was specified. The TargetFrameworkVersion (Android API level 33) is lower than the targetSdkVersion (34). Please increase the `$(TargetFrameworkVersion)` or decrease the `android:targetSdkVersion` in the `AndroidManifest.xml` so that the API levels match. XABBA7024: Xamarin.Tools.Zip.ZipIOException: The file 'obj\Release\130\android\bin\base.zip' is not a ZIP archive. at Xamarin.Tools.Zip.ZipArchive.Open(String path, FileMode mode, String defaultExtractionDir, Boolean strictConsistencyChecks, IPlatformOptions options) in /Users/runner/work/1/s/LibZipSharp/Xamarin.Tools.Zip/ZipArchive.cs:line 282 at Xamarin.Android.Tasks.BuildApk.ExecuteWithAbi(String[] supportedAbis, String apkInputPath, String apkOutputPath, Boolean debug, Boolean compress, IDictionary`2 compressedAssembliesInfo, String assemblyStoreApkName) at Xamarin.Android.Tasks.BuildApk.RunTask() at Microsoft.Android.Build.Tasks.AndroidTask.Execute() in /Users/runner/work/1/s/xamarin-android/external/xamarin-android-tools/src/Microsoft.Android.Build.BaseTasks/AndroidTask.cs:line 17 Done building project "Project.Droid.csproj" -- FAILED. Build FAILED.
已尝试的解决方法(均无效)
- 确认API 34已成功下载至路径
C:\Program Files (x86)\Android\android-sdk\platforms - 启用AndroidX Migrator(实验性)
- 清理项目→关闭项目→删除
bin和obj文件夹后重新打开项目 - 确保AndroidManifest.xml中release和debug版本的targetSdkVersion均设为34
- 以管理员权限运行VS2022
- 在.csproj文件中添加
<TargetFrameworkVersion>v14.0</TargetFrameworkVersion> - 尝试将SDK build 33的base.zip替换为34版本
- 更新SDK工具和构建工具至最新版本
- 创建新的空白Xamarin项目并修改targetSdkVersion为34,仍出现相同错误
AndroidManifest.xml修改内容
仅修改了targetSdkVersion从33到34:
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="34" />
观察到的现象
- 改回API 33后一切正常,可正常归档生成aab文件
- 报错时
\obj\Release\130\android\bin路径下的base.zip文件损坏 - 该问题在release和debug模式下均会出现
- 清理、构建和重建过程成功,但归档失败
- APK和AAB打包格式均出现类似问题
环境信息
Android相关版本
- Android SDK Platform-tools v34.0.3
- Android SDK command-line tools v7.0
- Android SDK Build-tools 33.0.2
Visual Studio版本
Microsoft Visual Studio Enterprise 2022 Version 17.6.4
已查阅多篇相关文章但未找到可行解决方案,恳请提供解决思路,谢谢!
内容的提问来源于stack exchange,提问作者Yohanes AI
相关产品推荐
相关产品推荐

