1

Android 開発者の Web サイトからを使用しようとしてContactManagerいますが、ボタンを押して に移動すると、ContactManagerシャットダウンして例外がスローされます。

throw new ActivityNotFoundException("No Activity found to handle " + intent);

の下にあるswitch(res)ので、 には接続されていないと思いますContactManager。ここに私のボタンがありますContactManager

Button clas;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.friends);

    SettingButtons();
    clas.setOnClickListener(this);
}

public void onClick(View v) {
    switch(v.getId()){
        case R.id.TOFRIENDS:
            startActivity(new Intent("com.clayton.calendar.ContactManager"));
            break;
    }
}

private void SettingButtons() {
    clas = (Button) findViewById(R.id.TOFRIENDS);
}

私のAndroidManifestファイルは次のとおりです。

<activity android:name=".ContactManager" android:label="@string/app_name">
    <intent-filter>
        <action android:name="com.clayton.calendar.ContactManager" />
        <category android:name="android.intent.category.Default" />
    </intent-filter>
</activity>

<activity android:name="ContactAdder" android:label="@string/addContactTitle">
</activity>

ContactManagerパッケージをpackage com.clayton.calendarAddContact変更し、次のように変更しました。

public static final String ACCOUNT_NAME = "com.clayton.calendar.ACCOUNT_NAME";
public static final String ACCOUNT_TYPE = "com.clayton.calendar.ACCOUNT_TYPE";

それを機能させるために変更する必要があるものは他にありますか?コードを数回確認しましたが、何も見逃していないと思います。

4

1 に答える 1

1

actionタグのおよびcategory要素の文字列<intent-filter>は大文字と小文字が区別されるため、 の代わりに:

<category android:name="android.intent.category.Default" />

使用する:

<category android:name="android.intent.category.DEFAULT" />
于 2012-04-23T15:29:19.897 に答える