我的应用程序已编译,并且可以在调试模式下正常工作。但是在发布模式下,如下所示编译屏幕图像时会出现错误
按需配置是一个孵化功能。 NDK缺少 “平台”目录。如果使用的是NDK,请确认已设置ndk.dir 到有效的NDK目录。当前设置为 C:\ Users \ pel \ AppData \ Local \ Android \ Sdk \ ndk-bundle。如果不是 使用NDK,从ANDROID_NDK_HOME取消设置NDK变量,或者 local.properties删除此警告。
在查找时找不到google-services.json [src / nullnull / debug,src / debug / nullnull,src / nullnull,src / debug, src / nullnullDebug] registerResGeneratingTask已弃用,请使用 registerGeneratedResFolders(FileCollection)找不到 google-services.json,同时查看[src / nullnull / release, src / release / nullnull,src / nullnull,src / release,src / nullnullRelease] registerResGeneratingTask已弃用,请使用 registerGeneratedResFolders(FileCollection):app:preBuild截至日期 :app:preReleaseBuild截止日期:app:compileReleaseAidl截止日期 :app:compileReleaseRenderscript更新日期:app:checkReleaseManifest 截止日期:app:generateReleaseBuildConfig截止日期 :app:prepareLintJar截至日期:app:mainApkListPersistenceRelease UP-TO-DATE:app:generateReleaseResValues UP-TO-DATE :app:generateRelease获取最新资源 :app:processReleaseGoogleServices解析json文件: D:\ SEDAT \ PROJELER \ ANDROIDPROJELER \ egiticioyunlar \ app \ google-services.json :app:mergeReleaseResources D:\ pel \ PROJELER \ ANDROIDPROJELER \ egiticioyunlar \ app \ src \ main \ res \ drawable \ ic_stat_ic_notification.png: 错误:无法读取PNG签名:文件不是以PNG开头 签名。错误:java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception:AAPT2错误: 检查日志以获取详细信息:app:mergeReleaseResources FAILED
答案 0 :(得分:0)
tldr :
路径为“ D:\ pel \ PROJELER \ ANDROIDPROJELER \ egiticioyunlar \”的PNG文件
app \ src \ main \ res \ drawable \ ic_stat_ic_notification.png”已损坏。请确保使用有效的PNG文件。
原因:
调试和发布模式之间的差异来自于每个构建的不同需求。调试版本需要更快,因为它们经常执行。发布版本需要产生优化的(较小的)APK,因为这是将交付给用户的产品。
这就是为什么在调试版本中禁用PNG处理(如果可能的话压缩图像文件),而在发行版本中启用PNG处理的原因。 PNG压缩会彻底查看文件的内容,因此,如果文件有问题,则在发行版本期间会引发错误。
在调试版本期间,PNG运算被禁用。 PNG仍在编译(处理)中,但未进行优化,因此并非所有版本都能像发行版中那样频繁地捕获所有内容。
如果愿意,您也可以为调试版本启用PNG压缩,但是我不建议您这样做,因为它会极大地影响生成时间(最多将资源处理速度降低30%)。同样,您可以为发布版本禁用PNG压缩,但是反过来又会使APK变得更大,更大,我也强烈反对这样做。
android {
buildTypes {
release {
// Disables PNG crunching for the release build type. Don't do this.
crunchPngs false
}
debug {
// Enabled PNG crunching for the debug build type. Don't do this.
crunchPngs true
}
}
}
答案 1 :(得分:0)
我已经在主目录中创建了一个名为“ debug”和“ release”的二进制文件。我将“ google-services.json”文件放入其中,并且该文件已正确编译。