zoukankan      html  css  js  c++  java
  • 使用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:learnFlutterflutter_hybridFlutterhybridandroid>gradlew assembleRelease
    
    Compatible side by side NDK version was not found.
    Unable to strip library 'D:learnFlutterflutter_hybridFlutterhybridandroidappuildintermediatesmerged_native_libs
    eleaseoutlibarm64-v8alibapp.so' due to missing strip tool for ABI 'ARM64_V8A'. Packaging it as is.
    Unable to strip library 'D:learnFlutterflutter_hybridFlutterhybridandroidappuildintermediatesmerged_native_libs
    eleaseoutlibarmeabi-v7alibflutter.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:learnFlutterflutter_hybridFlutterhybridandroidappuildintermediatesmerged_native_libs
    eleaseoutlibarm64-v8alibapp.so' due to missing strip tool for ABI 'ARM64_V8A'. Packaging it as is.
    Unable to strip library 'D:learnFlutterflutter_hybridFlutterhybridandroidappuildintermediatesmerged_native_libs
    eleaseoutlibarmeabi-v7alibflutter.so' due to missing strip tool for ABI 'ARMEABI_V7A'. Packaging it as is.
    62 actionable tasks: 59 executed, 3 up-to-date
    D:learnFlutterflutter_hybridFlutterhybridandroid>gradlew assembleRelease
    62 actionable tasks: 8 executed, 54 up-to-date
    
    

    根据android官网提示进行ndk版本配置在这里插入图片描述

    到安装的ndk目录下找到souce.propertites打开在这里插入图片描述
    根据在这里插入图片描述
    在build.properties中配置ndk版本在这里插入图片描述
    配置完成gradle自动同步在这里插入图片描述

    七、最后执行 gradlew assembleRelease打包

    终于没有提到错误了

    
    D:learnFlutterflutter_hybridFlutterhybridandroid>gradlew assembleRelease
    62 actionable tasks: 5 executed, 57 up-to-date
    
    
    

    在project 目录下也看见了久违的app-release.apk在这里插入图片描述


    最后就可以将这个apk发到真机安装了

  • 相关阅读:
    Linux守护进程
    sequel pro无法连接mysql服务器
    socket编程之并发回射服务器2
    Unix的I/O模型
    nginx.conf laravel 配置
    phpstudy使用PHP+nginx配置Laravel
    nginx配置文件分开配置
    centos安装composer
    linux下 设置php的环境变量 php: command not found
    laravel 安装
  • 原文地址:https://www.cnblogs.com/dengxiaoning/p/11703021.html
Copyright © 2011-2022 走看看