[英]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.