Android - 主屏幕生命周期

时间:2014-09-26 11:50:58

标签: android android-intent homescreen android-launcher

我正在开发Android主屏幕,我似乎遇到了问题。每当我从主屏幕启动一个应用程序时,它的生命周期最终会被销毁(我知道这是因为我使用了LogCat并且它确实在OnDestroyed方法中打印了我的代码)。我只希望它只是被暂停而不是完全被破坏,因为我在oncreate中运行了一些长的进程。我只希望onCreate被调用一次,这是设备启动时。在我的情况下,因为每当我的主屏幕启动应用程序时,它就会被销毁。每当我按下HOME按钮时,它就会从创建 - >>开始。开始时 - >在简历上。 以下是我的代码,你能否说明我做错了什么。感谢。

启动应用程序时的代码:

public void startAppByAppName(String appName) {
    String mainActivity = "";
    String packageString = "";

    Intent intent = getPackageManager().getLaunchIntentForPackage(appName);
    mainActivity = intent.getComponent().getClassName();
    packageString = intent.getComponent().getPackageName();

    intent.addCategory(Intent.CATEGORY_LAUNCHER);
    intent.setComponent(new ComponentName(packageString, mainActivity));
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
}

我的宣言:

<application
    android:allowBackup="true"
    android:icon="@drawable/home_icon"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" android:persistent="true">
    <activity 
        android:name="com.steven.welcomescreen.WelcomeScreenActivity"
        android:launchMode="singleTask"
        android:clearTaskOnLaunch="true"
        android:stateNotNeeded="true"
        android:screenOrientation="landscape"
        android:theme="@android:style/Theme.Black.NoTitleBar">
        <intent-filter>
            <category android:name="android.intent.category.HOME"/>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
    </activity>
</application>

如果我想澄清我的代码的某些部分,请在下面进行评论,以便我可以为您提供信息。我真的需要帮助。非常感谢你。

0 个答案:

没有答案
相关问题