Android:我应该使用哪种类型的intent过滤器

时间:2016-02-05 14:22:21

标签: android android-intent

在第二个和第三个活动中,在意图过滤器中我应该在类别中使用什么。在第二个活动中我使用默认但在进行第三个活动后我不知道应该使用哪个类别。 这是我想要制作的第一个Android应用程序。请帮助我,我应该在第二和第三个活动中使用哪个分类。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="csimplifyit.mobileapp.myschool">

<!-- To auto-complete the email text field in the login form with the user's emails -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />

<!-- for json call -->
<uses-permission android:name="android.permission.INTERNET" />

<application
    android:allowBackup="true"
    android:icon="@mipmap/login"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:name=".login.Login"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

    <activity
        android:name=".login.Menu"
        android:label="@string/second_activity">
        <intent-filter>
            <action android:name="csimplifyit.mobileapp.myschool.login.Menu" />

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

    <activity
        android:name=".login.Attendance"
        android:label="@string/attendance_activity">
        <intent-filter>
            <action android:name="csimplifyit.mobileapp.myschool.login.Attendance" />

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

</application>

1 个答案:

答案 0 :(得分:0)

最有可能的是,你完全摆脱了第二个和第三个<intent-filter>元素。在您希望其他应用链接到的活动上只有<intent-filter>个元素。您不需要操作字符串来开始自己的活动 - 您可以使用明确的Intents(例如new Intent(this, csimplifyit.mobileapp.myschool.login.Menu.class))。

如果由于某种原因,您希望其他开发者直接开始您的MenuAttendance活动,那么最简单的方法就是将它们放在DEFAULT类别中。如果startActivity()未指定其他类别,则DEFAULT调用会自动将Intent类别添加到Intent