android 获取渠道号

上文我已经说过,我们采用的打渠道包的方式是在apk文件中写入一个空的文件来标识不同的渠道包,这也是大多数打渠道包的原理。把渠道包解压之后,在META-INF文件夹下就会多出以下框框的中文件:

既然我们已经写入了文件,下面就是要怎么读取这个文件和截取渠道号了。代码如下:

public static String getChannelName(){

String sourceDir = TestApplication.getApp().getPackageCodePath();
ZipFile zipfile = null;
try {
    zipfile = new ZipFile(sourceDir);
    Enumeration<? extends ZipEntry> entries = zipfile.entries();
    while (entries.hasMoreElements()) {
        ZipEntry entry = entries.nextElement();
        String entryName = entry.getName();
        if (entryName.startsWith("META-INF/channel_")) {
            CHANNEL_NAME = entryName.substring(17, entryName.length());
           
        }
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (zipfile != null) {
        try {
            zipfile.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

}

 

注意:渠道包需要重新签名,否者会安装失败!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值