2012-04-22 17 views
1

我想从Android开发者网站使用ContactManager,当我按下按钮去ContactManager它关闭,并抛出一个异常:ActivityNotFoundException的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"; 

是否还有其他东西需要更改才能使用?我仔细查看了代码,我觉得我没有错过任何东西。

回答

1

<intent-filter>标签的actioncategory元素的字符串是大小写敏感的,从而代替:

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

使用:

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