[英]Build unsigned APK file with Android Studio
我正在使用 Android Developer Tool 开发 Android 应用程序。 现在我尝试了新的Android Studio,如果将我的智能手机与PC连接并直接在Android Studio中运行程序,一切正常。 但现在我想用其他智能手机测试该程序,而无需将它们连接到我的 PC。
每次编译程序时,ADT 都会在“projectname/bin”下创建 .apk 文件。 我目前的看法是,Android Studio 不会那样做。
所以,我的问题是:是否可以使用 Android Studio 创建一个未签名的 .apk 文件?
我建议您使用 Gradle 构建您的 APK 文件:
assemble
您未签名的 APK 现在位于
ProjectName\app\build\outputs\apk
有关如何使用 Gradle 的详细信息,请参阅本教程: 在 Android Studio 中使用 Gradle 构建。 我还写了一篇关于如何使用 Gradle 构建未签名 APK 的博客文章。
如果您从其他 IDE 移动了您的项目并且不想重新编译,您可能会发现您的 APK 文件已经在您移动的 IDE 中构建:
如果您使用 Android Studio 生成项目,APK 文件将在ProjectName/ProjectName/build/apk/...
从eclipse导入项目:文件应该在同一目录中。 转到Project
- Show in Explorer
。 在那里你应该找到你的 APK 文件所在的 bin 文件夹。
从 IntelliJ 导入,位置将是ProjectName/out/production/...
旁注:正如克里斯·斯特拉顿在他的评论中提到的:
从技术上讲,您需要的是使用调试密钥签名的 APK。 设备将拒绝实际未签名的 APK。
根据Build Unsigned APK with Gradle,您可以简单地使用 gradle 构建您的应用程序。 为了做到这一点:
Edit configurations
alt+insert
Gradle
Gradle project
Tasks:
输入assemble
OK
之后,您应该在ProjectName\\app\\build\\outputs\\apk
目录中找到未签名的“apk”
最简单的方法,我想:
只需转到 BUILD->Build APK 就完成了
安卓工作室 3.4
Grade Build Running
完成后,您将在右下角看到通知。
单击locate
,您将看到可调试的 APK
步骤 1打开安卓工作室。 构建 -> 生成签名的 APK…。 现在点击“生成签名的APK”。
第2步
单击新建。
第 3 步
jks key details,它会回到上一个窗口。
单击下一步,并提供您存储在密钥中的密码。
第四步
现在单击完成并等待完成构建过程。
现在 apk 生成成功。 单击在资源管理器中显示。
如果您需要更多详细信息,请访问并查看现场演示http://javaant.com/how-to-make-apk-file-in-android-studio/#.VwzedZN96Hs
是的,可以使用 Android Studio 创建未签名的 .apk!
在包浏览器或项目列中突出显示项目,然后File
- Project Structure
- Artifacts
- +
- Android Application
- From module 'your app'
,然后您可以更改位置和其他一些选项。 我启用在 make 上构建,只是为了方便。
Build -> Build APK //unsigned app
Build -> Generate Signed APK //Signed app
对于 OSX 上的 Android Studio 2.2.3,我只使用了顶部菜单:
Build > Build APK
它用.apk
文件打开 Finder。 这不会生成签名的 APK。 如果需要,您可以从同一菜单中选择Generate Signed APK
。
只需转到您的应用程序\\应用程序\\构建\\输出\\apk
并将两者复制到手机并安装 app-debug.apk
以下为我工作:
如果您在 build.gradle 中进行了设置,请将以下设置保留为空白。
signingConfigs {
release {
storePassword ""
keyAlias ""
keyPassword ""
}
}
并从您的编辑器窗口中选择 Gradle 任务。 如果您已创建,它将显示所有风味的列表。
--- 在signingConfigs中创建新配置
unsigned {
//do not sign
}
--- 在 buildTypes 中创建构建类型
unsigned {
versionNameSuffix '-unsigned'
}
--- 去构建变体并选择未签名的标准。 构建项目。
--- 转到“outputs/apk”并找到“XXX-unsigned.apk”。 要检查它是否未签名,请尝试将其安装到设备上 - 你会失败。
对于未签名的 APK:只需将 signatureConfig 设置为 null。 它会给你 appName-debug-unsigned.apk
debug {
signingConfig null
}
并从构建菜单构建。 享受
对于已签名的 APK:
signingConfigs {
def keyProps = new Properties()
keyProps.load(rootProject.file('keystore.properties').newDataInputStream())
internal {
storeFile file(keyProps.getProperty('CERTIFICATE_PATH'))
storePassword keyProps.getProperty('STORE_PASSWORD')
keyAlias keyProps.getProperty('KEY_ALIAS')
keyPassword keyProps.getProperty('KEY_PASSWORD')
}
}
buildTypes {
debug {
signingConfig signingConfigs.internal
minifyEnabled false
}
release {
signingConfig signingConfigs.internal
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
keystore.properties 文件
CERTIFICATE_PATH=./../keystore.jks
STORE_PASSWORD=password
KEY_PASSWORD=password
KEY_ALIAS=key0
现在在 Android Studio v1.1.0 中应该是:
Run
> Run <your app>
<your app>\\build\\outputs\\apk
找到 .apk 文件Android studio 也会在每次编译程序的时候创建apk 文件,只要到你的workspace 文件夹中找到app->build->outputs-> 就可以看到apk 文件了。
您可以单击工具栏上运行按钮附近的下拉菜单,
现在按确定,
您现在需要做的就是从下拉列表中选择您的配置并按下运行按钮。 这将需要一些时间。 您未签名的 apk 现在位于
Project\app\build\outputs\apk
我解决!
首先,你应该添加这些:
defaultConfig {
multiDexEnabled true
}
dependencies {
implementation 'com.android.support:multidex:1.0.3'
}
之后,您应该在 Android Studio 的顶部栏中单击Build :
Build > Build Bundle(s)/APK(s) > Build APK(s)
最后,你有一个app-debug.apk文件:
应用程序 > 构建 > 输出 > apk > 调试 > app-debug.apk
注意:Android Studio 在输出文件中自动创建的 apk、debug、 app-debug.apk文件。
创建未签名 APK 的步骤
Steps for creating unsigned APK • Click the dropdown menu in the toolbar at the top • Select "Edit Configurations" • Click the "+" • Select "Gradle" • Choose your module as a Gradle project • In Tasks: enter assemble • Press Run • Your unsigned APK is now located in - ProjectName\\app\\build\\outputs\\apk Note : Technically, what you want is an APK signed with a debug key. An APK that is actually unsigned will be refused by the device. So, Unsigned APK will give error if you install in device.
注意:从技术上讲,您需要的是使用调试密钥签名的 APK。 设备将拒绝实际未签名的 APK。 因此,如果您安装在设备中,未签名的 APK 会出错。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.