美文网首页
Flutter Android Studio打包Apk包

Flutter Android Studio打包Apk包

作者: AndyLiYL | 来源:发表于2023-08-07 17:02 被阅读0次

    项目收尾,进行打包测试,温习一下安卓打包流程,算是记录一下,便于查询,也加深一下记忆~

    1.使用终端(cmd)创建xxx.keystore文件:

    keytool -genkey -v -keystore xxx(项目名).keystore -alias xxx(项目名) -keyalg RSA -keysize 2048 -validity 10000 -storepass (storePassword密码) -keypass (keyPassword密码)
    

    按照步骤一步步来输入信息即可,成功如图:


    截屏2023-08-08 16.05.00.png

    执行成功后,以mac为例,会保存在磁盘上,会生成一个 test.keystore 文件(这是我的举例),找到后将这个文件复制到Flutter项目的android/app/目录下即可~

    2.创建一个后缀.properties的key.properties的文件,如图:

    截屏2023-08-08 16.36.11.png

    文件内容:
    storePassword=123456
    keyPassword=123456
    keyAlias=testApp
    storeFile=testApp.keystore

    3.编辑/android/app/build.gradle文件配置一下内容:
    def keystorePropertiesFile = rootProject.file("key.properties")
    def keystoreProperties = new Properties()
    if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
    }

    截屏2023-08-08 16.50.45.png

    4.需要注意的是,配置联网权限等一系列你需要的权限,不然打的release包不会请求接口(亲测~ 😄)

    以下是我需要的,可根据自身需要添加

        <uses-permission android:name="android.permission.RECORD_AUDIO"/>
    
        <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    
        <uses-permission android:name="android.permission.VIBRATE"/>
    
        <uses-permission android:name="android.permission.CAMERA"/>
    
        <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    
        <!--允许访问网络,必选权限-->
        <uses-permission android:name="android.permission.INTERNET"/>
        <!--允许获取精确位置,精准定位必选-->
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
        <!--允许获取粗略位置,粗略定位必选-->
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
        <!--允许获取设备和运营商信息,用于问题排查和网络定位(无gps情况下的定位),若需网络定位功能则必选-->
        <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
        <!--允许获取网络状态,用于网络定位(无gps情况下的定位),若需网络定位功能则必选-->
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
        <!--允许获取wifi网络信息,用于网络定位(无gps情况下的定位),若需网络定位功能则必选-->
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
        <!--允许获取wifi状态改变,用于网络定位(无gps情况下的定位),若需网络定位功能则必选-->
        <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
        <!--后台获取位置信息,若需后台定位则必选-->
        <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
        <!--用于申请调用A-GPS模块,卫星定位加速-->
        <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
        <!--允许写设备缓存,用于问题排查-->
        <uses-permission android:name="android.permission.WRITE_SETTINGS"
            tools:ignore="ProtectedPermissions" />
        <!--允许写入扩展存储,用于写入缓存定位数据-->
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <!--允许读设备等信息,用于问题排查-->
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    

    5.打包测试

    截屏2023-08-08 16.57.17.png

    success!!!😄

    相关文章

      网友评论

          本文标题:Flutter Android Studio打包Apk包

          本文链接:https://www.haomeiwen.com/subject/rjmgpdtx.html