美文网首页
安卓友盟推送中的ApplicationId 与 PackageN

安卓友盟推送中的ApplicationId 与 PackageN

作者: pinkong | 来源:发表于2018-05-08 15:07 被阅读0次

    最近要将一个安卓项目拆出一个精简版,并将推送替换为友盟。包名为原名加个后缀。
    接入umeng的推送sdk费了一番折腾,同时在友盟后台注册一个应用,获取app-key和Umeng Message Secret,并填上应用的ApplicationId。
    启动应用后,能够获取device token,后台发消息,显示已发出但是设备死活收不到~
    回去看文档,发现有这么一句:

    请确保Application Module的build.gradle文件中的applicationId与应用包名package一致。
    

    然而applicationId可能不能和packagename一致的,因为我们还要打多个渠道包,每个渠道包的applicationId都是不一样的。
    继续看文档,在高级设置中有一节:

    自定义资源包名
    
    Android Studio开发工具是基于gradle的配置方式,资源文件的包和应用程序的包是可以分开的,为了正确的找到资源包名,为开发者提供了自定义的设置资源包的接口。当资源包名和应用程序包名不一致时,调用设置资源包名的接口
    
    mPushAgent.setResourcePackageName(String packageName);
    

    加上这句后,设备能收到消息了。

    注意,友盟后台设置中配置包名的地方,填写的应该是applicationid,而且可以配置多个,但是总的包名长度加起来不能超过4k,大概两三百个这样。


    image.png

    相关文章

      网友评论

          本文标题:安卓友盟推送中的ApplicationId 与 PackageN

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