• 使用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发到真机安装了

  • 相关阅读:
    使用变焦摄影镜头的10条经验
    Savage 2:灵魂拷问者Linux即时战略游戏
    在FlashCom中检测摄像头和麦克风的方法
    Asp.net 在线转Flv
    linux的启动加密
    一个命令轻轻松松重新初始化Ubuntu软件包
    Firefox扩展开发学习杂记
    使用 XUL 实现浏览器扩展,第 1 部分: 使用用户界面特性创建一个 Firefox 浏览
    ffmpeg参数解释中文详细
    用mencoder解决ffmpeg转换wmv/asf to flv花屏的问题,并支持rm/rmvb
  • 原文地址:https://www.cnblogs.com/dengxiaoning/p/11703021.html
Copyright © 2020-2023  润新知