我无法重新启动由PendingIntent.
“无法重新启动”意味着什么,例如,当关于活动已经运行时,永远不会调用onCreate或onNewIntent 。startActivity()
名为 MainActivity 我无法重新启动的 Activity 是 singleTop并覆盖onNewIntent。
以下是关于MainActivity:
 <activity
            android:name="com.example.MainActivity"
            android:label="@string/app_name" 
            android:launchMode="singleTop">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
首先,它MainActivity是由具有未决意图的通知启动的。
我的 PendingIntent 是:
Intent iS = new Intent(this,MainActivity.class);
iS.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendindIntent pi = PendingIntent.getActivity(this, 0, iS, 
PendingIntent.FLAG_UPDATE_CURRENT);
并MainActivity执行startService(),服务执行sendBroadcast(),广播类执行startActivity(Intent(this,MainActivity.class))
Jere 是 BroadcastClass:
public void onReceive(Context context, Intent intent) {
    Intent i = new Intent(context,MainActivity.class);
    i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(i);
}
然后onNewIntent()是......永远不会被调用onCreate()。
但是,当通过在 homeScreen 上按下图标启动程序时,onNewIntentinMainActivity被同一流程调用。
编辑: onNewIntent 在这里。
protected void onNewIntent(Intent intent) {  
   Log.d("onNewIntent","onNewIntent");
   String SOMETHING = intent.getStringExtra("SOMETHING");
    LinearLayout ll = (LinearLayout)findViewById(R.id.ll2);
    ll.removeAllViews();
    TextView textview1 = (TextView)getLayoutInflater().inflate(R.layout.textview, null);
    textview1.setText(SOMETHING);
    ll.addView(textview1);
}
“onNewIntent”没有出现在 LogCat 上。