zoukankan      html  css  js  c++  java
  • flutter Android打包

    以下内容均是在mac版本电脑上的操作

    1、生成签名

    //根目录执行以下命令
    keytool -genkey -v -keystore ~/sign.jks -keyalg RSA -keysize 2048 -validity 10000 -alias sign
    //输出
    输入密钥库口令:  
    再次输入新口令: 
    您的名字与姓氏是什么?
      [Unknown]:  chen
    您的组织单位名称是什么?
      [Unknown]:  gwfx
    您的组织名称是什么?
      [Unknown]:  no
    您所在的城市或区域名称是什么?
      [Unknown]:  深圳
    您所在的省/市/自治区名称是什么?
      [Unknown]:  广东省
    该单位的双字母国家/地区代码是什么?
      [Unknown]:  CN
    CN=chen, OU=gwfx, O=no, L=深圳, ST=广东省, C=CN是否正确?
      [否]:  y
    
    正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 10,000 天):
    	 CN=chen, OU=gwfx, O=no, L=深圳, ST=广东省, C=CN
    [正在存储/Users/admin/sign.jks]
    
    执行命令
    keytool -list -v -keystore sign.jks -alias sign -storepass 123456 -keypass 123456
    打印如下:
    别名: sign
    创建日期: 2019年10月23日
    条目类型: PrivateKeyEntry
    证书链长度: 1
    证书[1]:
    所有者: CN=chen, OU=gwfx, O=no, L=深圳, ST=广东, C=CN
    发布者: CN=chen, OU=gwfx, O=no, L=深圳, ST=广东, C=CN
    序列号: 8e8d3fe
    生效时间: Wed Oct 23 10:47:00 CST 2019, 失效时间: Sun Mar 10 10:47:00 CST 2047
    证书指纹:
    	 SHA1: 2F:CB:5F:42:6D:7D:6F:29:D0:7D:3F:5B:7D:D2:F1:91:2F:D0:83:31
    	 SHA256: D6:5A:49:16:A2:05:CE:83:F5:7B:30:7D:3F:BB:15:CD:ED:06:11:3F:D9:ED:08:87:CB:FB:BD:DD:F4:FD:B9:64
    签名算法名称: SHA256withRSA
    主体公共密钥算法: 2048 位 RSA 密钥
    版本: 3
    
    扩展: 
    
    #1: ObjectId: 2.5.29.14 Criticality=false
    SubjectKeyIdentifier [
    KeyIdentifier [
    0000: D1 08 DA 31 2A 7D 1D B0   FE B8 D0 70 A9 DA 84 18  ...1*......p....
    0010: 07 00 28 17                                        ..(.
    ]
    ]
    

    keytool相关命令

    //查看签名信息
    keytool -v -list -keystore sign.jks
    //修改别名
    keytool -changealias -keystore sign.jks -alias sign -destalias key0
    
    

    2、将签名文件拖拽到flutter项目中 我这里放在 android文件夹目录

    3、填写签名信息

    进入android/app/build.gradle文件,找到android {}开头开头的位置添加如下内容

    android {
            signingConfigs {
        
            key0Config {
                keyAlias 'key0'
                keyPassword '123456'
                storeFile file("../sign.jks")
                storePassword '123456'
                v2SigningEnabled false
            }
        }
        buildTypes {
            release {
                // TODO: Add your own signing config for the release build.
                // Signing with the debug keys for now, so `flutter run --release` works.
                // signingConfig signingConfigs.debug
                signingConfig signingConfigs.key0Config
            }
        }
    }
    

    4、修改包名为指定包名 位置:android/app/build.gradle 修改defaultConfig中applicationId的值

    applicationId "com.xxx.xxx"
    

    5、打包

    flutter build apk
    

    其他

    申请网络权限

        <uses-permission android:name="android.permission.INTERNET"/>
    

    设置splash图片launch_background.xml

        <item android:drawable="@mipmap/splash" />
    

    设置ic_launcher AndroidManifest.xml

        android:icon="@mipmap/ic_launcher">
    
  • 相关阅读:
    UVA 1386 Cellular Automaton
    ZOJ 3331 Process the Tasks
    CodeForces 650B Image Preview
    CodeForces 650A Watchmen
    CodeForces 651B Beautiful Paintings
    CodeForces 651A Joysticks
    HUST 1601 Shepherd
    HUST 1602 Substring
    HUST 1600 Lucky Numbers
    POJ 3991 Seinfeld
  • 原文地址:https://www.cnblogs.com/qqcc1388/p/11726041.html
Copyright © 2011-2022 走看看