안드로이드 개발 질문/답변
(글 수 45,052)
책의 예제를 따라하고 있는데 실행 도중에 에러로 프로그램이 죽어서 문의 드립니다.
주소록에 사람을 추가시키는 부분이고 버전은 2.0.1 입니다.
책의 예제를 수정없이 실행하였는데 실행중 Stopped Unexpectedly 에러가 나면서 죽어버립니다.
로그캣으로 확인해보니 다음부분에서 에러가 나는데, 무슨뜻인지 잘 모르겠습니다.
02-22 03:42:27.849: WARN/dalvikvm(392): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
02-22 03:42:27.858: ERROR/AndroidRuntime(392): Uncaught handler: thread main exiting due to uncaught exception
02-22 03:42:27.907: ERROR/AndroidRuntime(392): java.lang.IllegalStateException: Failed to find the My Contacts group
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.provider.Contacts$People.addToMyContactsGroup(Contacts.java:491)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.provider.Contacts$People.createPersonInMyContactsGroup(Contacts.java:568)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.msi.manning.chapter5.providerexplorer.ProviderExplorer.addContact(ProviderExplorer.java:143)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.msi.manning.chapter5.providerexplorer.ProviderExplorer.access$0(ProviderExplorer.java:136)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.msi.manning.chapter5.providerexplorer.ProviderExplorer$1.onClick(ProviderExplorer.java:50)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.View.performClick(View.java:2364)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.View.onTouchEvent(View.java:4179)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.widget.TextView.onTouchEvent(TextView.java:6534)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.View.dispatchTouchEvent(View.java:3709)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1659)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.app.Activity.dispatchTouchEvent(Activity.java:2061)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1643)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewRoot.handleMessage(ViewRoot.java:1691)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.os.Handler.dispatchMessage(Handler.java:99)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.os.Looper.loop(Looper.java:123)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.app.ActivityThread.main(ActivityThread.java:4338)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at java.lang.reflect.Method.invokeNative(Native Method)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at java.lang.reflect.Method.invoke(Method.java:521)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at dalvik.system.NativeStart.main(Native Method)
공지사항을 다 읽었음...
주소록에 사람을 추가시키는 부분이고 버전은 2.0.1 입니다.
책의 예제를 수정없이 실행하였는데 실행중 Stopped Unexpectedly 에러가 나면서 죽어버립니다.
c:\qa\error.java
private void addContact() { ContentResolver resolver = getContentResolver(); ContentValues values = new ContentValues(); // create Contacts.People record first, using helper method to get person in "My Contacts" // group values.put(PeopleColumns.NAME, this.addName.getText().toString()); Uri personUri = Contacts.People.createPersonInMyContactsGroup(resolver, values); Log.v("ProviderExplorer", "ADD personUri - " + personUri.toString()); // append other contact data, like phone number values.clear(); Uri phoneUri = Uri.withAppendedPath(personUri, Contacts.People.Phones.CONTENT_DIRECTORY); Log.v("ProviderExplorer", "ADD phoneUri - " + phoneUri.toString()); values.put(PhonesColumns.TYPE, PhonesColumns.TYPE_MOBILE); values.put(PhonesColumns.NUMBER, this.addPhoneNumber.getText().toString()); // insert manually (this time no helper method) resolver.insert(phoneUri, values); startActivity(new Intent(this, ProviderExplorer.class)); }
로그캣으로 확인해보니 다음부분에서 에러가 나는데, 무슨뜻인지 잘 모르겠습니다.
02-22 03:42:27.849: WARN/dalvikvm(392): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
02-22 03:42:27.858: ERROR/AndroidRuntime(392): Uncaught handler: thread main exiting due to uncaught exception
02-22 03:42:27.907: ERROR/AndroidRuntime(392): java.lang.IllegalStateException: Failed to find the My Contacts group
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.provider.Contacts$People.addToMyContactsGroup(Contacts.java:491)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.provider.Contacts$People.createPersonInMyContactsGroup(Contacts.java:568)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.msi.manning.chapter5.providerexplorer.ProviderExplorer.addContact(ProviderExplorer.java:143)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.msi.manning.chapter5.providerexplorer.ProviderExplorer.access$0(ProviderExplorer.java:136)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.msi.manning.chapter5.providerexplorer.ProviderExplorer$1.onClick(ProviderExplorer.java:50)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.View.performClick(View.java:2364)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.View.onTouchEvent(View.java:4179)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.widget.TextView.onTouchEvent(TextView.java:6534)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.View.dispatchTouchEvent(View.java:3709)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:883)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1659)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.app.Activity.dispatchTouchEvent(Activity.java:2061)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1643)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.view.ViewRoot.handleMessage(ViewRoot.java:1691)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.os.Handler.dispatchMessage(Handler.java:99)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.os.Looper.loop(Looper.java:123)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at android.app.ActivityThread.main(ActivityThread.java:4338)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at java.lang.reflect.Method.invokeNative(Native Method)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at java.lang.reflect.Method.invoke(Method.java:521)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
02-22 03:42:27.907: ERROR/AndroidRuntime(392): at dalvik.system.NativeStart.main(Native Method)
공지사항을 다 읽었음...
안녕하세요.
회사에서 돈되는건 다 만드는 개발자입니다 ^^