2012-12-02 3 views
-1

캘린더 활동을 생성하기 위해 하나의 인 텐트를 만들려고합니다. 이제 아래안드로이드의 캘린더 앱에 문제가 있음

public void onClickCalendarEntry(View view){ 
     Intent calendarIntent = new Intent(Intent.ACTION_INSERT); 
     calendarIntent.setType("com.android.calendar/events"); 
     calendarIntent.putExtra(Events.TITLE, "Learn Android"); 
     calendarIntent.putExtra(Events.EVENT_LOCATION, "Home"); 
     calendarIntent.putExtra(Events.DESCRIPTION, "Learn activities"); 

     //Setting dates 
     GregorianCalendar calDate = new GregorianCalendar(2012,12,2); 
     calendarIntent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, 
       calDate.getTimeInMillis()); 
     calendarIntent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, 
       calDate.getTimeInMillis()); 


     Log.d(tag, "Before startActivity()"); 
     startActivity(calendarIntent); 
     Log.d(tag, "Afte startActivity()"); 
    } 

AndroidManifest.exml 추출물됩니다 : 아래

<uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="16" /> 

내가 무엇입니까 오류 메시지입니다 :

12-02 20:27:54.958: D/MainActivity(5512): Before startActivity() 
12-02 20:27:54.968: D/AndroidRuntime(5512): Shutting down VM 
12-02 20:27:54.978: W/dalvikvm(5512): threadid=1: thread exiting with uncaught exception (group=0x2aac8578) 
12-02 20:27:54.978: E/AndroidRuntime(5512): FATAL EXCEPTION: main 
12-02 20:27:54.978: E/AndroidRuntime(5512): java.lang.IllegalStateException: Could not execute method of the activity 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.view.View$1.onClick(View.java:2168) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.view.View.performClick(View.java:2552) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.view.View$PerformClick.run(View.java:9229) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.os.Handler.handleCallback(Handler.java:587) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.os.Handler.dispatchMessage(Handler.java:92) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.os.Looper.loop(Looper.java:130) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.app.ActivityThread.main(ActivityThread.java:3701) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at java.lang.reflect.Method.invokeNative(Native Method) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at java.lang.reflect.Method.invoke(Method.java:507) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:624) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at dalvik.system.NativeStart.main(Native Method) 
12-02 20:27:54.978: E/AndroidRuntime(5512): Caused by: java.lang.reflect.InvocationTargetException 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at java.lang.reflect.Method.invokeNative(Native Method) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at java.lang.reflect.Method.invoke(Method.java:507) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.view.View$1.onClick(View.java:2163) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  ... 11 more 
12-02 20:27:54.978: E/AndroidRuntime(5512): Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.INSERT typ=com.android.calendar/events (has extras) } 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1409) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.app.Activity.startActivityForResult(Activity.java:2827) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at android.app.Activity.startActivity(Activity.java:2933) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  at com.example.sendingusertoanotherapp.MainActivity.onClickCalendarEntry(MainActivity.java:88) 
12-02 20:27:54.978: E/AndroidRuntime(5512):  ... 14 more 

누군가가 나를 도와주세요 수 아래 코드는 이 문제가 무엇인지 이해하고 있습니까? 감사.

관련하여 Sudipta Deb.

+0

하는 플랫폼이를 실행에? Android ICS 이하? – Ahmad

+0

예, Android API 10 –

답변

2

"calendar/events" 프리 - 프로 요. Froyo 이후

"com.android.calendar/events".

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.FROYO) { 
    calendarIntent.setType("calendar/events"); 
} else { 
    calendarIntent.setType("com.android.calendar/events"); 
} 
+0

여전히 위의 해결 방법과 동일한 문제가 있음 –

+0

Intent.Action_EDIT를 사용해보세요. 같은 문제? – Simon

+0

Intent.ACTION_EDIT에 동일한 문제가 없습니다. –

0

마지막 문제는 해결된다 : 모든 당신의 도움에 대한 모든

Calendar cal = Calendar.getInstance();    
Intent intent = new Intent(Intent.ACTION_EDIT); 
intent.setType("vnd.android.cursor.item/event"); 
intent.putExtra("beginTime", cal.getTimeInMillis()); 
intent.putExtra("allDay", false); 
intent.putExtra("rrule", "FREQ=DAILY"); 
intent.putExtra("endTime", cal.getTimeInMillis()+60*60*1000); 
intent.putExtra("title", "A Test Event from android app"); 
startActivity(intent); 

감사 : 아래

내가 지금 사용하고있는 코드입니다.

안부

, Sudipta 뎁

관련 문제