|
63 | 63 |
|
64 | 64 |  |
65 | 65 |
|
66 | | -本应用主要部署后端的函数,部署成功后, 您会获取一个 url, 比如为 `http://get-apk.apk-repack.1986114430573743.cn-hangzhou.fc.devsapp.net` |
| 66 | +本应用主要部署后端的函数,部署成功后, 您会获取一个 访问域名的 url, 比如为 `https://get-apk-apk-repack-evbilghzjb.cn-hangzhou.fcapp.run` |
67 | 67 |
|
68 | 68 | 之后登录 [CDN 控制台](https://cdn.console.aliyun.com/) 完成配置: |
69 | 69 |
|
70 | | -#### 添加域名 |
71 | | - |
| 70 | +### 添加域名 |
72 | 71 |
|
73 | | -#### 域名管理 |
74 | | -1. 根据控制台引导, 完成域名的 CNAME 解析 |
75 | | - |
| 72 | +比如您有一个名为 `functioncompute.com` 的域名, 如下图所示, 我添加了 `apk-cdn.functioncompute.com`, 源站的域名为前面应用部署的访问域名 url(*注意是 host,不用填写前面的 https://*), 比如本示例为 `get-apk-apk-repack-evbilghzjb.cn-hangzhou.fcapp.run` |
76 | 73 |
|
77 | | -2. 完成管理配置, 主要完成回源配置的域名和开启 Range 回源强制 |
78 | | - |
| 74 | +> 其中前缀 apk-cdn 可以随便, 由您这边自己想最后暴露出去的 url 决定 |
79 | 75 |
|
80 | | - |
| 76 | + |
| 77 | + |
| 78 | + |
| 79 | +### 域名管理 |
| 80 | + |
| 81 | +#### 1. 根据控制台引导, 完成域名的 CNAME 解析 |
| 82 | + |
| 83 | + |
| 84 | + |
| 85 | + |
| 86 | + |
| 87 | + |
| 88 | + |
| 89 | +#### 2. 完成管理配置, 主要完成回源配置的域名和开启 Range 回源强制 |
| 90 | + |
| 91 | + |
| 92 | + |
| 93 | +> 域名应用部署成功后返回的访问域名 url 的 host, 比如本示例为 `get-apk-apk-repack-evbilghzjb.cn-hangzhou.fcapp.run` |
| 94 | +
|
| 95 | + |
| 96 | + |
81 | 97 |
|
82 | 98 | #### 使用浏览器断点下载指定渠道 apk 包 |
83 | 99 |
|
84 | 100 | 比如: |
85 | 101 |
|
86 | | -`http://xiliu.functioncompute.com/foo?src=fc-imm-demo/test-apk/qq.apk&cid=uc` |
| 102 | +`http://apk-cdn.functioncompute.com/foo?src=fc-imm-demo/test-apk/qq.apk&cid=uc` |
87 | 103 |
|
88 | | -`http://xiliu.functioncompute.com/foo?src=fc-imm-demo/test-apk/qq.apk&cid=xiaomi` |
| 104 | +`http://apk-cdn.functioncompute.com/foo?src=fc-imm-demo/test-apk/qq.apk&cid=xiaomi` |
89 | 105 |
|
90 | 106 | 其中 |
91 | 107 | - `xiliu.functioncompute.com` 表示 cdn 对外的域名 |
|
95 | 111 | **Tips** |
96 | 112 |
|
97 | 113 | - 用户在自己程序中获取渠道信息, 只需要读取 apk 包中 `assets/dap.properties` 文件中的内容即可 |
98 | | -- 应用生成的 url, 比如上篇幅中介绍的 `http://get-apk.apk-repack.1986114430573743.cn-hangzhou.fc.devsapp.net` 为临时测试域名, 您可以切换成您自己的生产域名 |
99 | | - > [配置自定义域名](https://help.aliyun.com/document_detail/90763.htm) |
100 | 114 |
|
101 | 115 | - 换用自己的证书, 只需要换掉 target/cert 下面的文件即可: |
102 | 116 | > jarsigner 将 .keystore 文件作为 RSA 密钥的来源,要将其转换为 golang 可识别的 .pem,我们需要以下几行: |
|
114 | 128 | # cert pem |
115 | 129 | $ openssl pkcs12 -in test.p12 -nokeys -out test-cert.pem |
116 | 130 | ``` |
| 131 | +# 本地调试 |
| 132 | + |
| 133 | +1. 将测试证书放置在如下位置 |
| 134 | + |
| 135 | +```bash |
| 136 | +CertPEM_PATH = "/tmp/cert/test-cert.pem" |
| 137 | +PrivateKeyPEM_PATH = "/tmp/cert/test-priv.pem" |
| 138 | +``` |
| 139 | + |
| 140 | +2. 编译, 生成的二进制可执行文件名字为 repack |
| 141 | + |
| 142 | +3. Run Local |
| 143 | + |
| 144 | +```bash |
| 145 | +$ RUN_LOCAL=true OSS_ENDPOINT=http://oss-cn-qingdao.aliyuncs.com SOURCE_OBJECT=test/test_pack.apk CHANNEL_ID=xiaomi ACCESS_KEY_ID=xxx ACCESS_KEY_SECRET=yyy ./repack |
| 146 | +``` |
| 147 | +> 注意将相关 ENV 设置您自己的值即可 |
117 | 148 |
|
118 | 149 | # 打包原理 |
119 | 150 | 对于一个原始的 apk 文件,将一个新文件添加到存档中,然后对 apk 重新签名获取新的 apk 文件。等价于以下命令相同的效果: |
|
0 commit comments