qhaaha
扬尼斯的小迷弟
2020-12-14 18:48
采纳率: 100%
浏览 191

android广播动态注册,接收不到的问题?

android开发:这样动态注册的广播接收不到,发送端是没有问题的并且是循环发送。

 

发送端:

 

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • sadcui
    sadcui 2020-12-15 16:48
    已采纳

    这边模仿了下是正常的,怀疑是否String data过大导致的问题。

    提问题最好附上问题logcat日志,进行分析。

    • 传 512K 以下的数据的数据可以正常传递。
    • 传 512K~1024K 的数据会出错,闪退。
    • 传 1024K 以上的数据会报错:TransactionTooLargeException
    • 考虑到 Intent 还包括要启动的 Activity 等信息,实际可以传的数据略小于 512
    点赞 评论
  • qhaaha
    扬尼斯的小迷弟 2020-12-15 17:47

    我只是发送一个经纬度信息,很短的字符串。我又试了静态注册依然收不到广播

    输出:

     

    点赞 评论
  • qhaaha
    扬尼斯的小迷弟 2020-12-15 17:49

    发送端是这样的,两个都收不到。我用的是google API23,android6.0的版本

    点赞 评论
  • sadcui
    sadcui 2020-12-17 09:17

    可以用adb 命令模拟发送广播指令

    adb shell am broadcast -a myAction --es data "test"

    -a :是广播Action, --es 是String类型参数 data是key  test是value。

    可以搜下相关指令。

    如果adb shell 可以生效 那么可以排查下发送端,如果adb命令也不可以,自己写个小demo试下,看下是不是程序内部组件的问题?最好提供下logcat日志进行分析。

    点赞 评论

相关推荐