Android工作整理-app上架前的准备工作

/*市场*/
//1. 认证信息:软件著作权、联系人信息、法人信息
//2. 账号信息:第三方账号、市场账号
//3. app信息:文案、图标
/*打包*/
//1. 检查更新功能(bugly)
//2. 生成签名apk (generate signed)
//3. apk加固并设置渠道 (360加固)

市场

1. 认证信息:软件著作权、联系人信息、法人信息
名称 地址/类型
软件著作权 通常要申批30天不等,400元左右。可找第三方加急(收费多一些)最快7天
联系人信息 微信号/手机号 接收短信用(不要轻易更换,不要使用个人手机号)
法人信息 身份证信息/手持身份证照片/公司银行卡号(支行 信息)
营业执照 注册号/纳税登记号/法人代表
邮箱 至少两个,注册或接收验证码用
电话 手机/坐机,接收短信
名称 公司中/英文名称,公司注册用
地址 注册地址/现在所在地址
2. 账号信息:第三方账号、市场账号
  • 第三方账号
名称 功能描述 地址
微信开放平台 微信分享、登录 https://open.weixin.qq.com/
微信公众平台 正式用 https://mp.weixin.qq.com/
微信公众平台 测试用 https://mp.weixin.qq.com/
高德开发者平台 定位功能 http://lbs.amap.com/
友盟 分享功能、第三方登录 https://www.umeng.com/
极光推送 (正式)IM与消息推送 https://www.jiguang.cn/accounts/login/form
极光推送 (开发/测试)IM与消息推送 https://www.jiguang.cn/accounts/login/form
腾讯开放平台 QQ分享、iOS应用宝 http://op.open.qq.com/mobile_appinfov2/detail
bugly bug、安卓检查更新 https://cas.bugly.qq.com/cas/login
阿里云 上传图片功能 http://www.aliyun.com/product/oss/
  • 市场账号建议参考《手机品牌》与《应用商店》的市场份额

《腾讯统计》https://mta.qq.com/mta/data/device
《手机品牌》建议前>=1%:http://mi.talkingdata.com/terminals.html
《应用商店》建议前>=0.5%:http://mi.talkingdata.com/app-rank.html?type=102010

手机品牌

  • 注 有些市场需要注意。
名称 问题
酷派 需要商务合作人(要单独加微信)
PP助手 只审核上架iOS游戏的开发者
安卓市场 被百度收购,在百度市场上传即可
TapTap 这个市场只能上传游戏
2345手机助手 需要收取268服务费用
乐视 审核时间超慢,总是最后一个才通过
360手机助手 不仅要公司认证,还要求联系人实名认证并绑定对应的银行卡账号信息
3. app信息:文案、图标
类型 注意
简介 有些平台不支持特殊符号
一句话推荐 全平台通用:8个字 中间不加空格等符号
关键字 通用 3个
版本升级信息 1. 2. ...
测试信息 测试账号/密码
logo图标 通用png类型 小于300KB 尺寸包括(1024-1024)(512-512)(216-216)(256-256) (16-16)
市场要求截图 通用jpg类型 尺寸包括(400-800)(720-1280)(720-1440)(1080-1920)
隐私政策(URL) 您的隐私政策网址,所有 App 必须提供隐私政策
官网链接 非必填

打包

1. 检查更新功能(bugly)

优点:减少后台开发维护该功能的时间成本

  • 注意:android 8.0 在使用前需要判断权限
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/> 

权限判断推荐第三方:
https://github.com/permissions-dispatcher/PermissionsDispatcher

@RuntimePermissions
public class MainActivity extends Activity {
   

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState); 
        initUpdateApp();
    }

    private void initUpdateApp() {
        /*腾讯bugly 检查更新 */
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
            init();
            Beta.upgradeListener = new UpgradeListener() {
                @Override
                public void onUpgrade(int ret, UpgradeInfo strategy, boolean isManual, boolean isSilence) {
                    if (strategy != null) { // 有新版本
                        MainActivityPermissionsDispatcher.downloadApkWithPermissionCheck(MainActivity.this);
                    }
                }
            };
            Beta.autoCheckUpgrade = false;
            /*
             * isManual  用户手动点击检查,非用户点击操作请传false
             * isSilence 是否显示弹窗等交互,[true:没有弹窗和toast] [false:有弹窗或toast]
             */
            Beta.checkUpgrade(false, true);
            /*
             * 只允许在MainActivity上显示更新弹窗,其他activity上不显示弹窗;
             * 不设置会默认所有activity都可以显示弹窗;
             */
            Beta.canShowUpgradeActs.add(MainActivity.class);
        } else {
            init();
            /*
             * 只允许在MainActivity上显示更新弹窗,其他activity上不显示弹窗;
             * 不设置会默认所有activity都可以显示弹窗;
             */
            Beta.canShowUpgradeActs.add(MainActivity.class);
        }
    } 
   
  
    @TargetApi(Build.VERSION_CODES.M)
    @NeedsPermission({android.Manifest.permission.REQUEST_INSTALL_PACKAGES})
    public void downloadApk() {
        Beta.autoCheckUpgrade = true;
        Beta.checkUpgrade(false, true);
    }

    @TargetApi(Build.VERSION_CODES.M)
    @OnShowRationale({android.Manifest.permission.REQUEST_INSTALL_PACKAGES})
    public void onCheckUpdateRationale(PermissionRequest request) {
        showRationaleDialog("需要应用安装权限才能安装应用。", request);
    }

    @TargetApi(Build.VERSION_CODES.M)
    @OnPermissionDenied({android.Manifest.permission.REQUEST_INSTALL_PACKAGES})
    public void onCheckUpdateDenied() {
        showDeniedDialog("应用安装", "应用安装权限被拒绝。为了程序的正常使用,请允许它!");
    }

    @TargetApi(Build.VERSION_CODES.M)
    @OnNeverAskAgain({android.Manifest.permission.REQUEST_INSTALL_PACKAGES})
    public void onCheckUpdateNeverAskAgain() {
        showDeniedDialog("应用安装", "应用安装权限被拒绝。为了程序的正常使用,请允许它!");
    }
   public static void init() {
        Bugly.init(this, JJBConstanst.BUGLY_APP_ID, false);
        CrashReport.initCrashReport(this);//https://bugly.qq.com/docs/user-guide/instruction-manual-android/?v=20180119105842
    }

}


2. 生成签名apk (generate signed)

优点:生成的包比build apk体积小
步骤:android studio --> build --> 选择签名文件keystore并输入密码 --> 勾选 V1 V2


选择Generate Signed APK...

勾选V1 V2
3. apk加固并设置渠道 (360加固)

优点:支持一键生成多渠道包
步骤1:确定渠道方案,需要嵌入相对应的sdk(我这里用的极光)
友盟名称:UMENG_CHANNEL
极光名称:JPUSH_CHANNEL
bugly名称:BUGLY_APP_CHANNEL

  • 注:每个平台对应的渠道名,如《BUGLY_APP_CHANNEL》是固定的,不可更改。

步骤2:制作渠道配置文件《多渠道配置文件.txt》

JPUSH_CHANNEL 华为 华为
JPUSH_CHANNEL 小米 小米
JPUSH_CHANNEL OPPO OPPO
JPUSH_CHANNEL vivo vivo
JPUSH_CHANNEL 三星 三星
JPUSH_CHANNEL 魅族 魅族
JPUSH_CHANNEL 金立 金立
JPUSH_CHANNEL 联想 联想
JPUSH_CHANNEL 应用宝 应用宝
JPUSH_CHANNEL 百度手机助手 百度手机助手
JPUSH_CHANNEL 豌豆荚 豌豆荚
JPUSH_CHANNEL 搜狗手机助手 搜狗手机助手
JPUSH_CHANNEL bugly bugly
JPUSH_CHANNEL 官网 官网

步骤3:导入多渠道配置,并设置相关的账号信息等。


选择“导入”

步骤4:点击“加固应用”


点击“加固应用”即可

步骤5:在控制台查看渠道(通常要隔天才能看到)
统计-->用户统计-->渠道分布
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,569评论 25 707
  • 关于作者: 李涛,腾讯Android工程师,14年加入腾讯SNG增值产品部,期间主要负责手Q动漫、企鹅电竞等项目的...
    稻草人_3e17阅读 3,510评论 0 10
  • 首先特别感谢纳豆先生~~🤗 最近头脑发热突然想要学画画,又怕自己坚持不下来。纠结了半天,发现简笔画最简单,也好学~...
    GraceLiao阅读 445评论 0 0
  • 半亩地 此刻 文苑的荷花早已选择沉寂 公孙树的果实正悄悄地落下 还好,那些榕树熟睡了 叶子遮掩着路灯的细腻 露出了...
    良人儿2阅读 243评论 0 0
  • 因为自己有些创业的念头,所以,平时工作中的细节,我都在考虑,如果给我这些人,我怎么管?这件事,如果我是老板,我怎么...
    FutureDear阅读 192评论 0 0