android - Android LocalBroadcast导致应用崩溃

标签 android crash localbroadcastmanager

我们在本地广播方面遇到了麻烦。由于某些原因,在2个androids(我自己的手机+老板的手机)中,它工作正常。但是在另一部手机(像我的老板一样的Galaxy s3 mini)和老板的平板电脑上,它崩溃了。如果tmp.sendBroadcast命令是立即执行但不是立即执行,则程序崩溃(此后仍然执行)。但是,它永远不会到达接收者。

public class UpdaterIntent extends IntentService {

...

Intent intent = new Intent("my-event");
            intent.putExtra("action", "update_workplaces");
            intent.putExtra("parameters", time);


LocalBroadcastManager'tmp=LocalBroadcastManager.getInstance(myInst);


            if(tmp!=null) {
                tmp.sendBroadcast(intent);

            }

我已经这样注册接收者:
LocalBroadcastManager.getInstance(this).registerReceiver(mMessageReceiver,
                new IntentFilter("my-event"));

接收者是这样的:
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(myContext, "received message", Toast.LENGTH_SHORT).show();

        }

    }
};

我已尝试搜索某种原因,原因可能如此。以为它的参数可能像putExtra一样长,但是即使将其修剪成两个字符串(一个在代码中看到,一个只是来自服务器的日期,例如“2014-03-28 12:20:02”等),所以现在不应有超过某些硬编码限制的危险。

有什么建议么?我不喜欢笨拙的 hell 般的解决方法。

最佳答案

LocalBroadcastManager.getInstance(this).sendBroadcast(intent);

关于android - Android LocalBroadcast导致应用崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22707703/

相关文章:

java - 我在一个共享首选项中存储两个不同的项目时遇到问题

c - 段错误,尽管代码从未执行?

应用程序崩溃时的android静态变量行为

android - 切换 Activity 会导致Android应用崩溃

android - 无法从 IntentService 中的 LocalBroadcastManager 在 Activity 中接收广播

Android - 是否可以在 list 文件中声明本地广播接收器?

android - 试图从类 com.android.utils.FileUtils 访问方法 com.google.common.io.Files.fileTreeTraverser()

java - Android Studio 在 Windows 7 64 位上运行失败

工作区之间的Android ccache共享