Toast.makeText(m.getApplicationContext(), msg, Toast.LENGTH_LONG).show();
这个问题只在华为3C手机上出现,在别的手机上都可以正常弹出显示。
debug跟代码时,在华为手机上发现这行代码也走到了,context不为空,msg也不为空。
请叫大神们,有木有遇到过类似情形的?问题原因在哪儿,怎么解决的?多谢了!
44 个解决方案
#1
没遇到过哟。
#2
是不是context 是 application的原因?
#3
你是在哪里调用的弹Toast呢
#4
post到主线程的一个独立线程。
#5
你把Context换成当前的试试呢?
#6
必须在UI线程调
#7
必须在UI线程调
你是在哪里调用的弹Toast呢
post到主线程的一个独立线程。
这个问题只在华为3C手机上出现,在别的手机上都可以正常弹出显示,这个怎么解释呢?
#8
以前遇到过,被华为手机自带的隐私控制器将通知消息给屏蔽了
#9
以前遇到过,被华为手机自带的隐私控制器将通知消息给屏蔽了
其他手机都OK,就是在在荣耀3C上通知toast不显示,你在设置或者安全管理里面找找看
#10
不要用post线程,创建个主线程的handler,发消息就行了。至于只有华为手机有,估计是手机rom定制问题。还是按照大众方法走吧。
#11
必须在UI线程调
你是在哪里调用的弹Toast呢
post到主线程的一个独立线程。
这个问题只在华为3C手机上出现,在别的手机上都可以正常弹出显示,这个怎么解释呢?
#12
runOnUiThread(new Runnable() {
@Override
public void run() {
toastSomethingLong("111111");
}
});
#13
多换几个手机试试,表示没遇到过这种问题..
#14
一般toast显示不出有2个原因:
1、在非UI线程中执行,建议使用handler显示提示
2、没有执行到,这是逻辑错误
1、在非UI线程中执行,建议使用handler显示提示
2、没有执行到,这是逻辑错误
#15
操蛋 handler 处理 代码据对执行 用自己封装的弹出框 和系统的都不行 只有3c这样
#16
不是代码的问题,是手机的问题,很明显了。还讨论啥?
#17
要整个兼容的东东了
#18
你看下是不是在设置应用程序里面没有勾选你那个程序“显示通知”那项
#19
是不是在允许XX应用发送通知的时候你点拒绝了?如果你点拒绝了之后再次调试你就要按楼上的方法处理了~
#20
我也遇到,也是华为手机,其他手机都没问题。。。操蛋,都不知道华为干什么了,,,吧 taost 都整没了
#21
应该是Rom的问题吧,跟代码关系不大
#22
有些手机可以设置隐藏toast提示,检查下手机设置
#23
找到解决方法了。
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
#24
你看下是不是在设置应用程序里面没有勾选你那个程序“显示通知”那项
就是这个问题。我日
#25
华为消息设置的问题,重新设置一下看行不。
#26
一般toast显示不出有2个原因:
1、在非UI线程中执行,建议使用handler显示提示
2、没有执行到,这是逻辑错误
在某些手机比如小米上是可以关闭这个toast提示的
#27
找到解决方法了。
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
就是这个解决办法
#28
根据18楼的回复,解决了问题!
#29
我也是遇到这个问题,公司的测试机就只有荣耀3C弹不出toast,应该是手机的问题。代码是正确的
#30
设置通知管理里面把消息禁止了。打开就行了。
#31
刚也遇到了这个问题,设置》通知》你的应用自动为禁止了 选为允许就好了
#32
只有华为手机这么奇葩,设置--》通知---》找到应用,设置为允许,就okay了,我记得IOS上有这个功能。
#33
看完之后,我想默默地赞一个什么也不说
#34
华为的rom就是那么艹0,去设置应用程序管理那里把显示通知开了就行了
#35
这个啊,,我也不会啊
#36
确实可以在设置里面找到通知设置允许、禁止
#37
虽然此贴已经年代久远,不过因为遇到新的问题,将我的经验一并分享,帮助后来人。
如果使用高于23的sdk版本编译,
Toast.makeText(m.getApplicationContext(), msg, Toast.LENGTH_LONG).show();
使用getApplicationContext()一样不能弹出toast。
将compileSdkVersion 22降到24以下即可。
如果使用高于23的sdk版本编译,
Toast.makeText(m.getApplicationContext(), msg, Toast.LENGTH_LONG).show();
使用getApplicationContext()一样不能弹出toast。
将compileSdkVersion 22降到24以下即可。
#38
不用这么纠结,只是华为3C一个奇特的设置导致的。
试试"设置--通知管理-拦截规则- 找到对应的应用-允许"
试试"设置--通知管理-拦截规则- 找到对应的应用-允许"
#39
设置里 关闭对该应用的推送屏蔽
#40
我也遇到,也是华为手机,其他手机都没问题。。。操蛋,都不知道华为干什么了,,,吧 taost 都整没了
meizu手机也有这个问题
#41
如果老是不出了,把手机上面的应用卸载了重新安装就好了。
#42
魅族手机,华为手机的app调试次数多了,就会有这样的情况,把应用卸载掉,重新安装。问题就好了。我搞了一个晚上啊。
#43
找到解决方法了。
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
我也是这样解决的。。。
#44
我的魅族手机也是,在模拟器上能出现消息提示框,但在手机上就不行了,你换个手机试试
#1
没遇到过哟。
#2
是不是context 是 application的原因?
#3
你是在哪里调用的弹Toast呢
#4
你是在哪里调用的弹Toast呢
post到主线程的一个独立线程。
#5
你把Context换成当前的试试呢?
#6
你是在哪里调用的弹Toast呢
post到主线程的一个独立线程。
#7
必须在UI线程调
你是在哪里调用的弹Toast呢
post到主线程的一个独立线程。
这个问题只在华为3C手机上出现,在别的手机上都可以正常弹出显示,这个怎么解释呢?
#8
以前遇到过,被华为手机自带的隐私控制器将通知消息给屏蔽了
#9
以前遇到过,被华为手机自带的隐私控制器将通知消息给屏蔽了
其他手机都OK,就是在在荣耀3C上通知toast不显示,你在设置或者安全管理里面找找看
#10
不要用post线程,创建个主线程的handler,发消息就行了。至于只有华为手机有,估计是手机rom定制问题。还是按照大众方法走吧。
#11
必须在UI线程调
你是在哪里调用的弹Toast呢
post到主线程的一个独立线程。
这个问题只在华为3C手机上出现,在别的手机上都可以正常弹出显示,这个怎么解释呢?
#12
runOnUiThread(new Runnable() {
@Override
public void run() {
toastSomethingLong("111111");
}
});
#13
多换几个手机试试,表示没遇到过这种问题..
#14
一般toast显示不出有2个原因:
1、在非UI线程中执行,建议使用handler显示提示
2、没有执行到,这是逻辑错误
1、在非UI线程中执行,建议使用handler显示提示
2、没有执行到,这是逻辑错误
#15
操蛋 handler 处理 代码据对执行 用自己封装的弹出框 和系统的都不行 只有3c这样
#16
不是代码的问题,是手机的问题,很明显了。还讨论啥?
#17
要整个兼容的东东了
#18
你看下是不是在设置应用程序里面没有勾选你那个程序“显示通知”那项
#19
是不是在允许XX应用发送通知的时候你点拒绝了?如果你点拒绝了之后再次调试你就要按楼上的方法处理了~
#20
我也遇到,也是华为手机,其他手机都没问题。。。操蛋,都不知道华为干什么了,,,吧 taost 都整没了
#21
应该是Rom的问题吧,跟代码关系不大
#22
有些手机可以设置隐藏toast提示,检查下手机设置
#23
找到解决方法了。
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
#24
你看下是不是在设置应用程序里面没有勾选你那个程序“显示通知”那项
就是这个问题。我日
#25
华为消息设置的问题,重新设置一下看行不。
#26
一般toast显示不出有2个原因:
1、在非UI线程中执行,建议使用handler显示提示
2、没有执行到,这是逻辑错误
在某些手机比如小米上是可以关闭这个toast提示的
#27
找到解决方法了。
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
就是这个解决办法
#28
根据18楼的回复,解决了问题!
#29
我也是遇到这个问题,公司的测试机就只有荣耀3C弹不出toast,应该是手机的问题。代码是正确的
#30
设置通知管理里面把消息禁止了。打开就行了。
#31
刚也遇到了这个问题,设置》通知》你的应用自动为禁止了 选为允许就好了
#32
只有华为手机这么奇葩,设置--》通知---》找到应用,设置为允许,就okay了,我记得IOS上有这个功能。
#33
看完之后,我想默默地赞一个什么也不说
#34
华为的rom就是那么艹0,去设置应用程序管理那里把显示通知开了就行了
#35
这个啊,,我也不会啊
#36
确实可以在设置里面找到通知设置允许、禁止
#37
虽然此贴已经年代久远,不过因为遇到新的问题,将我的经验一并分享,帮助后来人。
如果使用高于23的sdk版本编译,
Toast.makeText(m.getApplicationContext(), msg, Toast.LENGTH_LONG).show();
使用getApplicationContext()一样不能弹出toast。
将compileSdkVersion 22降到24以下即可。
如果使用高于23的sdk版本编译,
Toast.makeText(m.getApplicationContext(), msg, Toast.LENGTH_LONG).show();
使用getApplicationContext()一样不能弹出toast。
将compileSdkVersion 22降到24以下即可。
#38
不用这么纠结,只是华为3C一个奇特的设置导致的。
试试"设置--通知管理-拦截规则- 找到对应的应用-允许"
试试"设置--通知管理-拦截规则- 找到对应的应用-允许"
#39
设置里 关闭对该应用的推送屏蔽
#40
我也遇到,也是华为手机,其他手机都没问题。。。操蛋,都不知道华为干什么了,,,吧 taost 都整没了
meizu手机也有这个问题
#41
如果老是不出了,把手机上面的应用卸载了重新安装就好了。
#42
魅族手机,华为手机的app调试次数多了,就会有这样的情况,把应用卸载掉,重新安装。问题就好了。我搞了一个晚上啊。
#43
找到解决方法了。
代码没有问题
手机问题 --设置--通知管理-拦截规则- 找到对应的应用-允许。 搞定
我也是这样解决的。。。
#44
我的魅族手机也是,在模拟器上能出现消息提示框,但在手机上就不行了,你换个手机试试