ylzyd12345 发表于 2013-1-14 18:11:15

开机后自动启动Activity中需要注意的

 
public class StartupReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {try {System.out.println("接受到广播");//Intent _intent = new Intent(context,OtherActivity.class);//_intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);Intent _intent = new Intent();_intent.setAction("com.michael.TEST");_intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(_intent);} catch (Exception e) {System.out.println(e);}}} 
 
注:context.startActivity(_intent); 需要加上Flag:_intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 
 一种是显式 new Intent(context,OtherActivity.class);
 注:一种是隐式_intent.setAction("com.michael.TEST");
 隐式的intent-filter 需要加上 <category android:name="android.intent.category.DEFAULT" />
 
 
<activity android:name=".OtherActivity" >            <intent-filter >                <action android:name="com.michael.TEST" />                <category android:name="android.intent.category.DEFAULT" />            </intent-filter> </activity>最容易忽略的就是: 测试代码是否正确。 要先运行程序在虚拟机。 然后重启系统!!!才能验证结果。第一次运行是不会验证的。
 
 
<div class="quote_title"> 写道
页: [1]
查看完整版本: 开机后自动启动Activity中需要注意的