androidstudio打包apk
⑴ androidstudio項目簽名打包生成apk出錯整理
本人由於一些誤操作接觸到打包文件的問題,故作此文避免再次踩坑。
1.入口:build->generate signed bundle/APK,打開後如下圖1.1:
2.選中apk打包,進入next:
3.選擇打包類型:
4.箭頭所指即為生成的混淆+簽名後的打包apk文件。(*簽名文件不可以隨便更改,如果有申請第三方的功能,都需要這個簽名文件去檢驗的,比如說集成了微信支付,我們換簽名文件的話,微信那邊就會檢驗不通過)
5.本文重點並非上述步驟,而是我自己重新生成了一個密鑰後,打包文件變成了.aab後綴文件。於是我想研究下它的打包過程和原理:
5.1在我們的build.gradle中可以更新打包文件版本號名稱(自己配一下):
5.2簽名文件會在此處進行對應生成信息:
5.3當然,你的項目文件也會對應生成相應的簽名文件,例如我此處的文件為yoocarjks.jks:
5.4自己配一下打包生成文件的命名:
以上over
6.*問題點:
6.1.簽名文件生成的亂碼是些啥?
6.2.由於我當時把項目扔垃圾桶了,還有些文件並沒有搞清楚是幹嘛的,如下圖:
buildoutputcleanuo.lock/executionhistory.bin/executionhistory.lock/filehashes.bin/filehashes.lock/outputfiles.bin/xxx.app.iml這些文件分別幹嘛的,從包名看像是打包生成的文件。
作此文激勵下自己空了去學習查閱下,若有知道的小夥伴歡迎留言分享~此文會繼續追更~
7.1關於xxx.app.iml看到一篇不錯的出錯解決方案:
https://blog.csdn.net/qq_38998213/article/details/81907253
設計原理如下:
這個文件,後續遇到問題我再深入了解下
⑵ android studio生成apk在哪
android studio生成的apk存儲路徑在軟體安裝位置app/build/outputs/apk文件夾中,其中app是mole,在對應的mole下即可找到apk。
Android Studio 打包生成APK文件方法如下:
1、在Build中找到生成release的選項,點擊選項;
⑶ android studio怎樣運行打包後的apk
android studio怎樣運行打包後的apk
渠道信息一般在 AndroidManifest.xml中修改以下值: 首先你必須在AndroidManifest.xml中的meta-data修改以下的樣子: 其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle中自定義配置的值。 build.gradle文件就利用proctFlavors
渠道信息一般在 AndroidManifest.xml中修改以下值:
首先你必須在AndroidManifest.xml中的meta-data修改以下的樣子:
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />
其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle中自定義配置的值。
build.gradle文件就利用proctFlavors這樣寫:
proctFlavors {
wandoujia {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]
}
{
manifestPlaceholders = [UMENG_CHANNEL_VALUE: ""]
}
c360 {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "c360"]
}
uc {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "uc"]
}
}
其中[UMENG_CHANNEL_VALUE: "wandoujia"]就是對應${UMENG_CHANNEL_VALUE}的值。
最新更新
後來發現上面的重復代碼太多,就在網上又發現了一個更簡潔的寫法
proctFlavors {
wandoujia {}
{}
c360 {}
uc {}
proctFlavors.all { flavor ->
flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
}
其手液數中name的值對相對應各個proctFlavors的選項值,這樣就達到自動替換渠道值的目的了。
這樣生成apk時,選擇相應的Flavors來生成指定渠道的包就可以了,而且生成的apk會自動幫你加上相應渠道的後綴,非常方便和直觀。大家可以自己反編譯驗證。
一次生成所有渠道包
在android studio底欄中有個命令行工具Terminal,打開後就CMD可以自動切換到當前項目的目錄下。
有的項目下會有graldew.bat這個文件,你就可以輸入這個命令:
gradlew assembleRelease
就可以一次性生成所有的渠道包了
不過我一般不建議大家使用這個命令,gradlew這個命令的gralde的版本無法控制,有時候會莫名其妙的下載老版本的gradle
所以我個人推薦大家使用以下的用法。
先找到gralde的根目錄,在畢首系統變數里添加兩個環境變數:
變數名為:GRADLE_HOME,變數值就為gradle的根目錄;
所以變數值為:C:Usersyazhou.gradlewrapperdistsgradle-2.1--2.1
還有一個在系統變數里PATH裡面添加gradle的bin目錄
我的就是C:Usersyazhou.gradlewrapperdistsgradle-2.1--2.1in
這里配埋指置完成了,接著在Terminal中敲下 gradle assembleRelease就可以一次性生成所有的渠道包了。
所有生成的apk在項目的buildoutputsapk下。
如果只是想生成單個渠道的包呢?
打開Android Studio的Gradle tasks面板(右邊側邊欄),會發現模塊多了很多任務,如下圖所示。
渠道信息一般在 AndroidManifest.xml中修改以下值: 首先你必須在AndroidManifest.xml中的meta-data修改以下的樣子: android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" /> 其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle...
android studio怎麼運行apk包
渠道信息一般在 AndroidManifest.xml中修改以下值:
首先你必須在AndroidManifest.xml中的meta-data修改以下的樣子:
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />
其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle中自定義配置的值。
build.gradle文件就利用proctFlavors這樣寫:
proctFlavors {
wandoujia {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]
}
{
manifestPlaceholders = [UMENG_CHANNEL_VALUE: ""]
}
c360 {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "c360"]
}
uc {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "uc"]
}
}
其中[UMENG_CHANNEL_VALUE: "wandoujia"]就是對應${UMENG_CHANNEL_VALUE}的值。
最新更新
後來發現上面的重復代碼太多,就在網上又發現了一個更簡潔的寫法
proctFlavors {
wandoujia {}
{}
c360 {}
uc {}
proctFlavors.all { flavor ->
flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
}
其中name的值對相對應各個proctFlavors的選項值,這樣就達到自動替換渠道值的目的了。
這樣生成apk時,選擇相應的Flavors來生成指定渠道的包就可以了,而且生成的apk會自動幫你加上相應渠道的後綴,非常方便和直觀。大家可以自己反編譯驗證。
一次生成所有渠道包
在android studio底欄中有個命令行工具Terminal,打開後就CMD可以自動切換到當前項目的目錄下。
有的項目下會有graldew.bat這個文件,你就可以輸入這個命令:
gradlew assembleRelease
就可以一次性生成所有的渠道包了
不過我一般不建議大家使用這個命令,gradlew這個命令的gralde的版本無法控制,有時候會莫名其妙的下載老版本的gradle
所以我個人推薦大家使用以下的用法。
先找到gralde的根目錄,在系統變數里添加兩個環境變數:
變數名為:GRADLE_HOME,變數值就為gradle的根目錄;
所以變數值為:C:Usersyazhou.gradlewrapperdistsgradle-2.1--2.1
還有一個在系統變數里PATH裡面添加gradle的bin目錄
我的就是C:Usersyazhou.gradlewrapperdistsgradle-2.1--2.1in
這里配置完成了,接著在Terminal中敲下 gradle assembleRelease就可以一次性生成所有的渠道包了。
所有生成的apk在項目的buildoutputsapk下。
如果只是想生成單個渠道的包呢?
打開Android Studio的Gradle tasks面板(右邊側邊欄),會發現模塊多了很多任務。
android studio怎麼打包apk的
Android App都需要我們用一個證書對應用進行數字簽名,不然的話是無法安裝到Android手機上,下面介紹Android Studio如何打包簽名的相關經驗,希望能幫助大家。
:jingyan../article/5552ef47e5d18d518efbc96b.
android studio怎麼打包apk
(1)Android Studio菜單Build->Generate Signed APK
(2)彈出窗口
(3)創建密鑰庫及密鑰,創建後會自動選擇剛創建的密鑰庫和密鑰(已擁有密鑰庫跳過)
點擊「Create new...」按鈕創建密鑰庫
Key store path:密鑰庫文件的地址
Password/Confirm:密鑰庫的密碼
Key:
Alias:密鑰名稱
Password/Confirm:密鑰密碼
Validity(years):密鑰有效時間
First and Last Name:密鑰頒發者姓名
Organizational Unit:密鑰頒發組織
City or Locality:城市
Country Code(XX):國家
(4)選擇已存在密鑰庫及密鑰(在(3)中創建密鑰庫後跳過此步驟)
點擊「Choose existing...」按鈕找到密鑰庫文件
Key store password輸入已選擇的密鑰庫文件的密碼
點擊Key alias後的「...」按鈕,選擇或者創建一個密鑰
(5)點擊「Next」按鈕,選擇保存路徑後,點擊「Finish」按鈕完成
android studio怎麼打包成apk
打開你的項目,點擊上面build-->genarate signed apk-->選擇你的moled-->點擊next-->
下面就和eclipse差不多了,有簽名key就choose existing沒有就create一個,next-->選擇你要放apk的文件夾,點擊finish,等待打包完成。
android studio 打包的apk在哪
1.Eclipse下App放置在項目根目錄的bin目錄中2.而Androidstudio大改後,放在了mole中,所以你一定要記得你的存放路徑。也就是工程對應的文件夾。androidstudio工程的存儲路徑下app/build/outputs/apk其中app是你的mole,在對應的mole下即可找到
打包成4.4.2的apk能運行在android 4.3么
有人在電腦上用過android x86 4.4.2系統嗎?為什麼我為什麼我在這個系統...
答:我在上網本上裝過,android_x86_4.4_RC1,確實有很多兼容性問題,可能是開發還未成熟。所以體驗一下後又卸載了。
android studio 怎麼打包各平台apk
(1)Android Studio菜單Build->Generate Signed APK
(2)彈出窗口
(3)創建密鑰庫及密鑰,創建後會自動選擇剛創建的密鑰庫和密鑰(已擁有密鑰庫跳過)
點擊「Create new...」按鈕創建密鑰庫
Key store path:密鑰庫文件的地址
Password/Confirm:密鑰庫的密碼
Key:
Alias:密鑰名稱
Password/Confirm:密鑰密碼
Validity(years):密鑰有效時間
First and Last Name:密鑰頒發者姓名
Organizational Unit:密鑰頒發組織