广播启动activity,有时会起不起来,纠结啊大侠们帮忙看看我用广播启动activity,有时会起不起来大家说说为什
广播启动activity,有时会起不起来,纠结啊···大侠们帮忙看看···
我用广播启动activity, 有时会起不起来········大家说说为什么?
[解决办法]
广播执行周期很短!如果当前内存太小,启动Activity等耗时操作就会失败!
所以建议不要直接使用广播启动Activity!
广播接收到消息后,在状态栏弹出消息(Notification)提醒,使用Notification启动Activity!
楼主试试吧!
[解决办法]
[解决办法]比如广播启动Activity1.class
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
NotificationManager myNoti=(NotificationManager)context.getSystemService(Service.NOTIFICATION_SERVICE);
Notification myNotification=new Notification();
myNotification.icon=R.drawable.icon;
myNotification.tickerText="启动Activity";
Intent myIntent=new Intent(context,Activity1.class);
PendingIntent pi=PendingIntent.getActivity(context, 0, myIntent, 0);
myNotification.setLatestEventInfo(context, "提示","启动Activity", pi);
myNoti.notify();
}
试试吧!
[解决办法][解决办法][解决办法]原来这样....
[解决办法]广播时间有限这个说法不标准。
广播接收者的处理不应占有太多cpu时钟。
另外,有的时候activity不能起来,大部分是因为你activity的问题。
你分析oncreate,onstart,及onresume方法中的代码。
最后,还有启动activity时的,一些flag也是很关键的。
[解决办法]学习了~~~
[解决办法]android的广播是消息队列的方式,虽然效率上可能会不高,但还不至于启动不了吧。
debug跟踪下你的activity,看看到底问题处在哪里了,只直接收不到onReceive,还是其他原因。