我有一个应用程序,我想在应用程序的某个时刻重新启动启动活动。通常,启动一个新的Activity是一项非常简单的任务,但由于某些原因,我无法重新启动SplashActivity
。这是我到目前为止所得到的:
清单
<activity
android:name=".controller.welcome.SplashScreenActivity"
android:screenOrientation="portrait"
android:theme="@style/AppTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
我还尝试添加以下intent-filter
:
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
并没有帮助。
我正尝试从片段中的onCreateView
开始活动:
@Nullable
@Override
public View onCreateView(final LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
if(myStuff == null || mViewModel == null){
Log.d(TAG, "Restarting application....");
try{
Intent intent = new Intent(getContext(), SplashScreenActivity.class);
startActivity(intent);
} catch (Exception e){
Log.d(TAG, "Problem starting activity: " + e.toString());
e.printStackTrace();
}
}
...
我还尝试使用getActivity
和getApplicationContext
来创建Intent
。我确定我错过了一些小的东西,比如意图过滤器,但我似乎无法找到它。任何帮助将不胜感激!
答案 0 :(得分:-1)
你可以试试这个:
Intent intent = new Intent(this, SplashScreenActivity.class);
我相信&#39; getContext()&#39;不同于这个&#39;。