当前位置: 代码迷 >> Android >> 播音启动activity,有时会起不起来,纠结啊···大侠们帮忙看看···
  详细解决方案

播音启动activity,有时会起不起来,纠结啊···大侠们帮忙看看···

热度:98   发布时间:2016-05-01 17:59:04.0
广播启动activity,有时会起不起来,纠结啊···大侠们帮忙看看···
我用广播启动activity, 有时会起不起来········大家说说为什么?

------解决方案--------------------
广播执行周期很短!如果当前内存太小,启动Activity等耗时操作就会失败!
所以建议不要直接使用广播启动Activity!
广播接收到消息后,在状态栏弹出消息(Notification)提醒,使用Notification启动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();
}

试试吧!
------解决方案--------------------
探讨

比如广播启动Activity1.class

public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
NotificationManager myNoti=(NotificationManager)context.getSystemService(Service.……

------解决方案--------------------
探讨
引用:

比如广播启动Activity1.class

public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
NotificationManager myNoti=(NotificationManager)cont……

------解决方案--------------------
原来这样....
------解决方案--------------------
广播时间有限这个说法不标准。
广播接收者的处理不应占有太多cpu时钟。
另外,有的时候activity不能起来,大部分是因为你activity的问题。
你分析oncreate,onstart,及onresume方法中的代码。
最后,还有启动activity时的,一些flag也是很关键的。
------解决方案--------------------
学习了~~~
------解决方案--------------------
android的广播是消息队列的方式,虽然效率上可能会不高,但还不至于启动不了吧。
debug跟踪下你的activity,看看到底问题处在哪里了,只直接收不到onReceive,还是其他原因。
  相关解决方案