【友盟+】开发者社区

【说明】PushSDK 3.0 Toast提示mPushAgent.register should be called.....

友盟PUSH 发表于 2017-6-7 09:10:42 |

友盟PUSH
友盟PUSH 发表于 2016-10-27 16:12:42 | 显示全部楼层 |阅读模式
各位小伙伴集成PushSDK 3.0有没有遇到Toast提示:mPushAgent.register should be called in both main process and channel process! ?
看到之后是否还有点小紧张?
其实这个是我们为了引导开发者能够正确集成PushSDK所做的动态代码检查。

说明:
PushSDK 3.0初始化时,需在Application类的onCreate中调用mPushAgent.register方法来进行注册。请勿在调用register方法时做进程判断处理,主进程和channel进程(推送进程)均需要调用register才能保证长连接的正确建立。
为了防止开发者初始化错误,我们增加了动态代码检查,并弹出Toast提示。所以看到此提示时,首先要检查你的代码中Application的onCreate方法里是否做了只在主进程中初始化PushSDK的判断,如果是,那么就请修改你的代码哦,将判断是否处于主进程的if语句删除就好了~

需要了解的知识点:      
每个进程在创建后,都会调用Application的onCreate方法。








上一篇:推送V3.0.2版
下一篇:APP没有开的时候不能收到推送消息哦?


MrZhengZ
MrZhengZ 发表于 2016-10-27 17:18:44 | 显示全部楼层
您好 我按照官方的demo集成 推送时有收到消息 但是还是会弹出toast 也没有判断进程

友盟PUSH
友盟PUSH 发表于 2016-10-27 18:27:54 | 显示全部楼层
MrZhengZ 发表于 2016-10-27 17:18
您好 我按照官方的demo集成 推送时有收到消息 但是还是会弹出toast 也没有判断进程 ...

在你们app正式发版前,调用mPushAgent.setDebugMode(false)关闭Debug模式,就不会再弹出Toast了

MrZheng
MrZheng 发表于 2016-10-28 09:42:17 | 显示全部楼层
友盟PUSH 发表于 2016-10-27 18:27
在你们app正式发版前,调用mPushAgent.setDebugMode(false)关闭Debug模式,就不会再弹出Toast了 ...

谢谢您 我昨天下午刚好调用了这个方法

依旧00
依旧00 发表于 2016-12-19 14:18:43 | 显示全部楼层
那么能否对主进程和channel进程进行判断,只在这两个进程进行register方法操作呢?因为我们的app还使用了其他第三方服务也会创建其他进程,这里会被调用4到5次。

友盟PUSH
友盟PUSH 发表于 2016-12-21 18:29:40 | 显示全部楼层
依旧00 发表于 2016-12-19 14:18
那么能否对主进程和channel进程进行判断,只在这两个进程进行register方法操作呢?因为我们的app还使用了其 ...

可以的

沉于海底的信
沉于海底的信 发表于 2017-1-5 11:28:13 | 显示全部楼层
之前有错,代码的问题。

bruse
bruse 发表于 2017-1-5 13:59:23 | 显示全部楼层
为什么我还会有这个toast,调用mPushAgent.setDebugMode(false)只是在规避问题,因为我切回到桌面程序会被杀死

引用代码如下

[Java] 纯文本查看 复制代码
//初始化友盟sdk
        PushAgent mPushAgent = PushAgent.getInstance(this);
        //注册推送服务,每次调用register方法都会回调该接口
//        mPushAgent.setDebugMode(false);
        mPushAgent.register(new IUmengRegisterCallback() {

            @Override
            public void onSuccess(String deviceToken) {
                //注册成功会返回device token
                setmDeviceToken(deviceToken);
            }

            @Override
            public void onFailure(String s, String s1) {

            }
        });

BaseActivity
[AppleScript] 纯文本查看 复制代码
MyApplication.getInstance().finishActivity(this);


棋棋游
棋棋游 发表于 2017-1-6 14:42:04 | 显示全部楼层
您好,我使用最新版本的推送,我使用的是quickcocos2dx 3.6.3进行的开发,在接入推送的过程中,我按照文档所写的接入了推送SDK,接入后,有时候能推送成功,有时候不能推送成功,并且弹出了mPushAgent.register should be called in both main process and channel process! ?这个提示。问题在于,1,某些情况下,能推送成功,2,某些情况下回弹出进程提示,不能成功。。。而且我在cocos2dx的代码里面,就在AppActivity.java里面,如果要再深入,就会到cocos2dx的lib的库里去了。请问,我应该怎么处理下,比较新手,请求Help


jiarao
jiarao 发表于 2017-1-17 03:23:28 | 显示全部楼层
同样的问题我也遇到了,每次退到后台就提示:
01-17 03:19:42.622 3015-3071/ E/awcn.DefaultHeartbeatImpl:  close session in background
01-17 03:19:42.622 3015-3071/ I/awcn.DefaultHeartbeatImpl:  heartbeat stop session:Session@[AWCN7_1|http2_0rtt_acs]
01-17 03:19:42.622 3015-3071/ E/awcn.TnetSpdySession: |[seq:AWCN7_1] force close! session:Session@[AWCN7_1|http2_0rtt_acs]
01-17 03:19:42.622 3015-3071/ E/awcn.Session: |[seq:AWCN7_1] notifyStatus status:DISCONNECTING
01-17 03:19:42.623 3015-3073/ E/awcn.TnetSpdySession: |[seq:AWCN7_1] spdySessionCloseCallback  errorCode::-2002
01-17 03:19:42.623 3015-3073/ E/awcn.Session: |[seq:AWCN7_1] notifyStatus status:DISCONNECTED

dsyys
dsyys 发表于 2017-1-18 14:28:19 | 显示全部楼层
您好! 我接入的时候没有判断进程,一直会有这个Toast提示,而且register接口都没有回调,是什么原因?

zaza
zaza 发表于 2017-2-6 17:56:42 | 显示全部楼层
Android Plugin Version(com.android.tools.build:gradle)推荐使用1.5.0及以上版本,使用过旧的版本可能由于编译问题导致无法获取device token。这样应该就能解决问题了

OTK电竞
OTK电竞 发表于 2017-2-14 15:41:51 | 显示全部楼层
并没有进行线程判断为何还是会报这个问题,新建了工程是可以用的,但是集成到正式项目就是会这样,出现这个问题除了这个原因还有其他原因吗以下为代码
QQ截图20170214154054.png


道口
道口 发表于 2017-3-3 10:46:32 | 显示全部楼层
OTK电竞 发表于 2017-2-14 15:41
并没有进行线程判断为何还是会报这个问题,新建了工程是可以用的,但是集成到正式项目就是会这样,出现这个 ...

同样遇到这个问题,没找到原因。。。。

yeyeyeyeye
yeyeyeyeye 发表于 2017-3-9 14:16:00 | 显示全部楼层
我既没有在注册的时候做判断,也关闭了debug模式,但是第一次安装的时候还是会提示这个,为什么?

友盟PUSH
友盟PUSH 发表于 2017-3-13 13:21:03 | 显示全部楼层
yeyeyeyeye 发表于 2017-3-9 14:16
我既没有在注册的时候做判断,也关闭了debug模式,但是第一次安装的时候还是会提示这个,为什么? ...

不会啊,这个只在debug模式下会toast

飞雪寻觅
飞雪寻觅 发表于 2017-3-15 13:55:34 | 显示全部楼层
channel进程(推送进程)在哪,需要我们自己调用注册吗?还是友盟内部自己就注册了?

友盟PUSH
友盟PUSH 发表于 2017-3-15 15:08:30 | 显示全部楼层
飞雪寻觅 发表于 2017-3-15 13:55
channel进程(推送进程)在哪,需要我们自己调用注册吗?还是友盟内部自己就注册了? ...

channel进程是我们默认的推送进程,已经在manifest配置好了

aorong
aorong 发表于 2017-3-27 13:10:04 | 显示全部楼层
我就想问下。 cocos2dx 的应该改哪里?
一样会提示这种错误。
官方认真点啊,起码也把这个常见的问题放到FAQ或者文档里说明一下啊~

冰墨
冰墨 发表于 2017-6-6 16:31:13 | 显示全部楼层

小涂
小涂 发表于 2017-6-7 09:10:42 | 显示全部楼层
冰墨 发表于 2017-6-6 16:31
如果出现这个问题,要看下pushSDK里面的AndroidManifest里面是否没有改包名过来
...

你好 push sdk的module里面需要改包名吗?
您需要登录后才可以发帖 登录 | 立即注册

本版积分规则

发表主题

精彩推荐

社会化分享SDK无法下载
今天本来想集成下分享的,结果发现页面的上下载按钮仿佛是个摆设
iOS11微信分享出问题
微信是最新版本 6.5.12 SDK版本是6.4.5 同型号测试机iOS10微信分享没问题,另一个测试机安装了iOS11微信
图标统计不显示,文字统计的可以是什么原因
这个站点上有图片的显示一个都显示不出来,“站长统计”这个文字的却可以显示,是什么原因??? 只有这一

关注我们

新浪微博
微信

欢迎关注友盟官方微博微信!

在线客服
返回顶部 返回列表