选择一个 activity 在启动时加载 - Android

Choose an activity to load in startup - Android

我有一个 android 应用程序,它需要决定在启动时首先加载哪个 activity(从 2 个活动)。该应用程序是一种警报。所以,问题是我必须通过检查是否已经设置了警报或没有设置警报来启动其中一项活动。

  1. 有没有一种方法可以在启动时使用 AlarmManager class 进行检查,而不会与我的 phone.
  2. 中的默认警报应用程序发生冲突
  3. 或者我应该使用临时数据存储方法的数据库来获取详细信息。
  4. 我该如何开发这个。 请帮助我。
  1. 定义一个 activity 来处理这个问题。给它一个 intent 过滤器,让它首先启动

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    
  2. 在此 activity 中,执​​行决定应打开哪个 activity 的逻辑。

例如,我的应用程序有一个检查用户是否登录的 SplashActivity。如果有 none,它会启动 LoginActivity,如果有,它会转到内容 activity。

<activity
    android:name=".SplashActivity"
    android:label="@string/app_name">

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

public class SplashActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        if (userLoggedIn()) {
            startActivity(new Intent(this, ContentActivity.class));
        } else {
            startActivity(new Intent(this, LoginActivity.class));
        }
    }
}

有一个共同的基础 Activity,在它的 onCreate 方法中,您可以编写逻辑来从您的 Activity 中进行选择,并从那里开始选择 Activity。基础 Activity 不需要加载任何 UI(即不需要调用 setContentView),它可以在启动 Intent.[=18= 后立即调用 finish() ]