Android 活动没有';启动后不能启动触觉(意图)

Android 活动没有';启动后不能启动触觉(意图),android,android-activity,android-service,activity-lifecycle,Android,Android Activity,Android Service,Activity Lifecycle,我正在开发出租车/出租车预订系统的司机应用程序。应用程序具有前台服务。服务开始在MainActivity中使用此代码: Intent myService = new Intent(getApplicationContext(), OnLineForegroundService.class); startForegroundService(myService); 此服务使用以下代码通过触发器启动NewOrderActivity: Intent intent = new Intent(OnLine

我正在开发出租车/出租车预订系统的司机应用程序。应用程序具有前台服务。服务开始在MainActivity中使用此代码:

Intent myService = new Intent(getApplicationContext(), OnLineForegroundService.class);
startForegroundService(myService);
此服务使用以下代码通过触发器启动NewOrderActivity:

Intent intent = new Intent(OnLineForegroundService.this, NewOrderActivity.class);
intent.putExtra("newOrder", newOrder);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                      
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
之后,在NewOrderActivity中,应用程序启动TripActivity(通过用户点击):

最后一步是旅程的结束:

//TripActivity

Intent i = new Intent(TripActivity.this, MainActivity.class);
i.putExtra("showOnLineDialog", true);
startActivity(i);
finishAffinity();

这些动作是循环执行的。有时(很少)NewOrderActivity在
startActivity(intent)
之后不启动。即使是NewOrderActivity中的
onCreate(Bundle savedInstanceState)
onResume()
中的代码也不会执行。当某些活动在前景中时,什么也不会发生。当应用程序位于后台(前台服务除外)时,应用程序将转到前台并显示上次打开的活动,但不显示NewOrderActivity。 有什么问题吗?我想问题可能出现在活动生命周期和标志(
FLAG\u Activity\u NEW\u TASK
FLAG\u Activity\u NO\u HISTORY
)中,但不确定

舱单:

<application
    android:name=".TaxiApplication"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:name=".ui.activities.SplashActivity"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".ui.activities.MainActivity"
        android:screenOrientation="portrait" />
    <activity
        android:name=".ui.activities.NewOrderActivity"
        android:screenOrientation="portrait" />
    <activity
        android:name=".ui.activities.TripActivity"
        android:screenOrientation="portrait" />
    <service android:name=".services.OnLineForegroundService" />
</application>

我认为从具有服务上下文的服务启动活动不是一个好主意,请尝试使用应用程序上下文。 更改此项:

Intent intent = new Intent(OnLineForegroundService.this, NewOrderActivity.class);
为此:

Intent intent = new Intent(getApplicationContext(), NewOrderActivity.class);

尝试
conext.startActivity(intent)
@coroutineDispatcher什么样的上下文<代码>getApplicationContext()?
Intent intent = new Intent(getApplicationContext(), NewOrderActivity.class);