使用android studio發布android與flutter混合開發項目


一、生成androd簽名證書

Android studio的Build > Grenerate Signed Bundle
在這里插入圖片描述
選擇apk
在這里插入圖片描述
點擊Create New
在這里插入圖片描述
錄入對應的簽名信息;點擊確定
在這里插入圖片描述
對應盤符下就會生成一個簽名文件
在這里插入圖片描述

二、拷貝簽名到項目目錄

將簽名文件拷入項目的app目錄下在這里插入圖片描述

三、配置 greadle.properties

在greadle.properties中增加如下配置(對應上一步生成的簽名證書的別名,密碼)


MYAPP_RELEASE_KEY_ALIAS=android_keystore # 別名
MYAPP_RELEASE_KEY_PASSWORD=123456 # 別名密碼
MYAPP_RELEASE_STORE_PASSWORD=123456 # 證書密碼
MYAPP_RELEASE_STORE_FILE=android_keystore.jks # 證書路徑

四、配置build.gradle(Module:app)

在android下增加如下配置(注意release中配置的value一定要對應到上一步greadle.properties中配置的key,否則編譯報錯)


android {
	# 省略其他配置 ....

	 # 新增配置
    signingConfigs{
        release{
            storeFile file(MYAPP_RELEASE_STORE_FILE)
            storePassword MYAPP_RELEASE_STORE_PASSWORD
            keyAlias MYAPP_RELEASE_KEY_ALIAS
            keyPassword MYAPP_RELEASE_KEY_PASSWORD
        }
    }
    buildTypes {
        release {
         # 省略其他配置 ....
         # 新增配置
        signingConfig signingConfigs.release
        }
    }
  # 省略其他配置 ....
}

五、解決 Compatible side by side NDK version was not found.

配置完成后
使用android studio運行gradlew assembleRelease 打包發布android與flutter混合開發項目提示

D:\learnFlutter\flutter_hybrid\Flutterhybridandroid>gradlew assembleRelease

Compatible side by side NDK version was not found.
Unable to strip library 'D:\learnFlutter\flutter_hybrid\Flutterhybridandroid\app\build\intermediates\merged_native_libs\release\out\lib\arm64-v8a\libapp.so' due to missing strip tool for ABI 'ARM64_V8A'. Packaging it as is.
Unable to strip library 'D:\learnFlutter\flutter_hybrid\Flutterhybridandroid\app\build\intermediates\merged_native_libs\release\out\lib\armeabi-v7a\libflutter.so' due to missing strip tool for ABI 'ARMEABI_V7A'. Packaging it as is.
62 actionable tasks: 59 executed, 3 up-to-date

Android studio的File->Project Structure窗口下進行NDK的相關下載
在這里插入圖片描述
等待下載完成
在這里插入圖片描述
現在完成后會自動同步ndk路徑
在這里插入圖片描述
點擊OK后gradle會自動同步在這里插入圖片描述

六、解決 Compatible side by side NDK version was not found.

有提示了另一個錯誤


Compatible side by side NDK version was not found.
Unable to strip library 'D:\learnFlutter\flutter_hybrid\Flutterhybridandroid\app\build\intermediates\merged_native_libs\release\out\lib\arm64-v8a\libapp.so' due to missing strip tool for ABI 'ARM64_V8A'. Packaging it as is.
Unable to strip library 'D:\learnFlutter\flutter_hybrid\Flutterhybridandroid\app\build\intermediates\merged_native_libs\release\out\lib\armeabi-v7a\libflutter.so' due to missing strip tool for ABI 'ARMEABI_V7A'. Packaging it as is.
62 actionable tasks: 59 executed, 3 up-to-date
D:\learnFlutter\flutter_hybrid\Flutterhybridandroid>gradlew assembleRelease
62 actionable tasks: 8 executed, 54 up-to-date

根據android官網提示進行ndk版本配置在這里插入圖片描述

到安裝的ndk目錄下找到souce.propertites打開在這里插入圖片描述
根據在這里插入圖片描述
在build.properties中配置ndk版本在這里插入圖片描述
配置完成gradle自動同步在這里插入圖片描述

七、最后執行 gradlew assembleRelease打包

終於沒有提到錯誤了


D:\learnFlutter\flutter_hybrid\Flutterhybridandroid>gradlew assembleRelease
62 actionable tasks: 5 executed, 57 up-to-date


在project 目錄下也看見了久違的app-release.apk在這里插入圖片描述


最后就可以將這個apk發到真機安裝了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM