§ Fox2.0 APP打包指南


§ 初始版本包说明

初始版本包是用于在安装app后,第一次打开APP后解压的资源。如下图所示,版本包中一般包含两个文件夹: version目录

§ configuration

放置配置文件,其中client.properties是主要的配置文件,配置说明如下

    #入口页面路径
    web/startUrl=workspace/fox/index.html
    #设备回退键触发事件
    web/backAction=javascript:fox.custom.logout()
    #是否启用更新
    version/updateEnabled=false
    #版本服务器地址,可支持列表,以‘,’分割
    version/address=http://192.144.128.218:9291
    #版本服务器更新策略,选项问:fore:必须更新完成后才能进入,options:可选
    version/updatePolicy=options
1
2
3
4
5
6
7
8
9
10

§ workspace

放置web资源,内部结构如下

  • main_app 主工程(名称可改),必须与client.properties中得入口页面路径保持一致
  • h5_apps 子工程目录(名称不可修改),该目录下面放置对应的h5应用资源
  • cdn 公共JS、CSS库目录,是平台CND路径的本地缓存目录

PS:初始版本包的示例一般会在源代码包的version文件夹下

§ 初始版本包打包

初始版本包打包有两种方式,分别为在线打包手工打包,下面我只介绍手工打包。

§ 步骤一

选中workspace和configuration目录,并使用zip方式压缩这两个目录,切记这两个目录是是顶层目录,他们是不允许有父亲目录的

§ 步骤二

把步骤一产生的压缩包,改名app对应的包名,包名可以在android工程中的app模块中的build.gradle文件获取 包名

§ 步骤三

把初始版本包压缩包,放入android工程中app模块下assets/version目录下。 包位置

§ APP打包

APP打包需要使用android studio,请预先准备环境。

§ 步骤一

选择android studio顶部菜单Build->Generate Signed Bundle/APK,并打开向导选择APK,点击next 向导一

§ 步骤二

选择已有的签名文件或创建新签名文件,点击next 向导2

§ 步骤三

选择需要打包的package,并勾上签名版本,点击finish,打包完成后IDE会弹出提示,并提示apk所在目录。

向导3

§ 多渠道打包说明

在我们开发过程中,通常需要打包几个APK,如开发、UAT和生产。如果同时三份代码,那么维护就比较麻烦了。多渠道打包的办法就能很好的解决这个问题。具体的办法是在app模块中的build.gradle文件中的productFlavors节点中添加配置,如下分别有pad_demo和phone_demo两个flavor,我们在打包的过程中选择所需的flavor进行打包即可。

    productFlavors {
        pad_demo {
            applicationId "fox.app.pad"
            versionCode 1
            versionName "1.0.0"
            minSdkVersion 21
            targetSdkVersion 22
            manifestPlaceholders = [app_name: "移动平台(PAD)", icon: "@mipmap/ic_launcher_fox",bdkey:"ixVXFlhEFLSAXtA2IVeNF0CNw2chONRQ",screenOrientation:"landscape"]
            ndk {
                abiFilters  'armeabi-v7a'
            }
            flavorDimensions "versionCode"
        }

        phone_demo {
            applicationId "fox.app.phone"
            versionCode 2
            versionName "1.0.1"
            minSdkVersion 21
            targetSdkVersion 22
            manifestPlaceholders = [app_name: "移动平台", icon: "@mipmap/ic_launcher_fox",bdkey:"ixVXFlhEFLSAXtA2IVeNF0CNw2chONRQ",screenOrientation:"portrait"]
            ndk {
                abiFilters  'armeabi-v7a'
            }
            flavorDimensions "versionCode"
        }
    }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
最后更新于: 4/15/2022, 2:41:22 PM