无法启动MainActivity了Android 2.3无法启动、MainActivity、Android

2023-09-04 04:15:37 作者:别再为爱纠缠

我要开始我的MainActivity,在Android 2.3的,也不会启动,但在果冻豆它的工作原理。我没有得到任何错误,什么都不会发生!

当我使用putExtra我已经注意到了,那么这是行不通的。是否有什么原因?

开始MainActivity

 最后组件名CN =新的组件名(de.application.ui,de.application.ui.MainActivity);

    意向意图= IntentCompat.makeRestartActivityTask(CN);
    intent.putExtra(de.application.exit,真正的); //我此行的这些事
    activity.startActivity(意向);
 

清单

 <活动
        机器人:主题=@风格/主题
        机器人:名称=。ui.MainActivity
        机器人:launchMode =singleTop>
        <意向滤光器>
            <作用机器人:名称=android.intent.action.MAIN/>
            <类机器人:名称=android.intent.category.LAUNCHER/>
        &所述; /意图滤光器>
    < /活性GT;
 
Android之Activity的四种启动模式

我的解决方案,它的工作原理。

开始MainActivity

 意向意图=新的意图(活动,MainActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.putExtra(de.application.exit,真正的);
    activity.finish();
    activity.startActivity(意向);
 

清单

 <活动
        机器人:主题=@风格/主题
        机器人:名称=ui.MainActivity。>
        <意向滤光器>
            <作用机器人:名称=android.intent.action.MAIN/>
            <类机器人:名称=android.intent.category.LAUNCHER/>
        &所述; /意图滤光器>
    < /活性GT;
 

解决方案

可能要试试这个:

 意向意图=新的意图(android.intent.action.MAIN);
    intent.addCategory(android.intent.category.LAUNCHER);
    intent.setComponent(新单元名(de.application.ui,de.application.ui.MainActivity));
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.putExtra(de.application.exit,真正的);
    startActivity(意向);
 

I want to start my MainActivity, in android 2.3, it will not start, but in Jelly Bean it works. I get no error, nothing happens!

I've noticed when I use putExtra, then it does not work. Is there a reason?

start MainActivity

final ComponentName cn = new ComponentName("de.application.ui", "de.application.ui.MainActivity");

    Intent intent = IntentCompat.makeRestartActivityTask(cn);
    intent.putExtra("de.application.exit", true); // I have this line in it yet
    activity.startActivity(intent);

Manifest

<activity
        android:theme="@style/Theme"
        android:name=".ui.MainActivity"
        android:launchMode="singleTop">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>

My solution that works.

start MainActivity

   Intent intent = new Intent(activity, MainActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.putExtra("de.application.exit", true);
    activity.finish();
    activity.startActivity(intent);

Manifest

<activity
        android:theme="@style/Theme"
        android:name=".ui.MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>

解决方案

Might want to give this a try:

    Intent intent = new Intent("android.intent.action.MAIN");
    intent.addCategory("android.intent.category.LAUNCHER");
    intent.setComponent(new ComponentName("de.application.ui", "de.application.ui.MainActivity"));
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.putExtra("de.application.exit", true);
    startActivity(intent);