如何为manifest添加意图?

时间:2015-01-02 11:33:53

标签: android android-intent manifest

我在我的应用中有这个意图移动到另一个活动,使用子菜单添加联系人的详细信息

Intent k = new Intent();// = new Intent(MainActivity.this,AddContact.class);
            k.setAction("com.example.dbtest2.AddContact");
            k.addCategory("android.intent.category.DEFAULT");
            startActivity(k);

这就是清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.dbtest2"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="21" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            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=".AddContacts">
            <intent-filter >
                <action android:name="com.example.dbtest2.k"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>

        </activity>
    </application>

</manifest>

但是logcat说没有找到处理意图的活动! 添加到manifest的活动是.addContact ..我是否正确地将意图和活动添加到清单?

2 个答案:

答案 0 :(得分:0)

如果您只从自己的应用程序中启动此Activity,则不应该这样做。您应该从清单中删除intent-filter,然后使用明确的Activity启动Intent,如下所示:

Intent k = new Intent(MainActivity.this, AddContacts.class);
startActivity(k);

答案 1 :(得分:0)

android:name=".AddContacts"应更改为android:name=".AddContact". 这就是为什么找不到您的活动。