测试版本基于 android 构建,无需签名

Testing release builds on android without signing

我正在尝试对 android/JNI 进行一些性能分析。

如何生成用于测试的发布版本?

我知道这是可能的,因为我已经成功地生成了一个二进制文件并通过 Android.mk 文件在没有任何签名的情况下执行了它,但我正在尝试转移到 android 工作室,并且它不会让我生成测试版本。在关键字段中输入垃圾似乎不起作用

这只是一个测试项目,用于验证我能否获得所需的性能。它永远不会分发,也不会 运行 在除我桌上的设备以外的任何设备上。

我可以完全关闭所有代码验证吗?我现在正在进行验证,这个项目的最终用途是一个非互联网连接的设备,旨在被视为一个黑盒设备。

好吧,据我所知,禁用强制要求是不可能的,大概是因为 google 的某个人做出了非常糟糕的设计决定。

但是,您可以只使用调试密钥库:

signingConfigs {
    garbage_key {
        keyAlias 'androiddebugkey'
        keyPassword 'android'
        storeFile file('C:/Users/<your_user>/.android/debug.keystore')
        storePassword 'android'
    }
}

回到尝试让 gradle 做任何明智的事情。这是迄今为止我遇到过的最严重的构建灾难。

从 terminal/console 使用 gradlew 创建发布版本

./gradlew assembleRelease

命令完成后,您可以在以下路径中找到名为 'app-release-unsigned.apk' 的未签名 apk

PROJECT_NAME/app/build/outputs/apk/release/ 

如果您在 build.gradle 文件中有设置发布配置,您可以暂时将其注释掉

buildTypes {
    /*release { ... } */
}

signingConfigs {

    /*release { ... } */
}