메인 화면에 그냥 버튼 하나만 만들었구용~
버튼을 클릭하면 애뮬레이터에 clock 이라는 알람 위젯이 있던데
(요것도 위젯이라고 표현하나요? 아님 뭐라고 표현하는게 맞는건지 알려주세요~~)
그걸 호출하려고 하거든요
clock 누르면 바로 시계화면이 나오는데
별다른 액션은 필요없고 걍 그 화면만 보였으면 해요..
Toast.makeText(Testzz.this, "알람test", Toast.LENGTH_LONG).show();
Intent intent = new Intent();
intent.setClassName("com.android.deskclock", "com.android.deskclock.AlarmProvider");
startActivity(intent);
Toast는 버튼을 클릭했을 때 제대로 실행되는지 궁금해서 써본거구요
버튼 누르면 "알람test"라고 메시지는 떠요
그리고 그 밑에 intent로 실행할 패키지명과 클래스명을 써줬는데요
그리고 바로 startActivity ㅠㅠ
근데 에러나네요
로그캣에 찍힌 내용은 아래와 같구요..
11-09 06:49:28.472: INFO/ActivityManager(67): Starting: Intent { cmp=com.android.deskclock/.AlarmProvider } from pid 1872
11-09 06:49:28.482: DEBUG/AndroidRuntime(1872): Shutting down VM
11-09 06:49:28.482: WARN/dalvikvm(1872): threadid=1: thread exiting with uncaught exception (group=0x40015560)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): FATAL EXCEPTION: main
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.deskclock/com.android.deskclock.AlarmProvider}; have you declared this activity in your AndroidManifest.xml?
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1404)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.app.Activity.startActivityForResult(Activity.java:2827)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.app.Activity.startActivity(Activity.java:2933)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at com.android.test.Testzz$1.onClick(Testzz.java:86)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.view.View.performClick(View.java:2485)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.view.View$PerformClick.run(View.java:9080)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.os.Handler.handleCallback(Handler.java:587)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.os.Handler.dispatchMessage(Handler.java:92)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.os.Looper.loop(Looper.java:123)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at android.app.ActivityThread.main(ActivityThread.java:3647)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at java.lang.reflect.Method.invokeNative(Native Method)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at java.lang.reflect.Method.invoke(Method.java:507)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
11-09 06:49:28.492: ERROR/AndroidRuntime(1872): at dalvik.system.NativeStart.main(Native Method)
11-09 06:49:28.502: WARN/ActivityManager(67): Force finishing activity com.android.test/.Testzz
11-09 06:49:29.075: WARN/ActivityManager(67): Activity pause timeout for HistoryRecord{4064f420 com.android.test/.Testzz}
11-09 06:49:29.332: INFO/ActivityManager(67): Start proc com.android.deskclock for activity com.android.deskclock/.DeskClock: pid=1892 uid=10026 gids={}
11-09 06:49:30.702: DEBUG/dalvikvm(67): GC_CONCURRENT freed 1374K, 46% free 4821K/8903K, external 1492K/1828K, paused 6ms+37ms
11-09 06:49:30.752: INFO/ActivityThread(1892): Pub com.android.deskclock: com.android.deskclock.AlarmProvider
11-09 06:49:30.822: INFO/Process(1872): Sending signal. PID: 1872 SIG: 9
11-09 06:49:30.842: INFO/ActivityManager(67): Process com.android.test (pid 1872) has died.
애뮬레이터에서는 버튼을 클릭하면
Sorry! The application (process com.android.test)has stopped unexpectedly. Please try again.
이렇게 뜨고 바로 종료되요 조언 좀 부탁드려요 ㅠㅠ
이바둥님 말씀대로
intent.setClassName("com.android.deskclock", "com.android.deskclock.AlarmClock");
이렇게 바꿔주니까 되네요^^;; 헉;;;;;;;
저는 애뮬레이터에서 clock을 누르고 로그캣을 보니까
11-09 07:41:47.699: INFO/ActivityThread(428): Pub com.android.deskclock: com.android.deskclock.AlarmProvider
이럻게 찍히길래..
com.android.deskclock 이게 패키지명
com.android.deskclock.AlarmProvider 이게 클래스명인 줄 알았어요....
조언 너무 감사드려요
근데 제가 원하는 clock 이
com.android.deskclock.AlarmClock 이것인지는 어떻게 아셨어요??
혹시 로그캣에서 확인해 볼 수 있는건가요?
아항.. 아래에 찍히네요..
계산기도 해봤는데 계산기는 아무것도 안찍히네요
11-09 08:38:15.349: INFO/ActivityManager(60): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.calculator2/.Calculator } from pid 128
11-09 08:38:16.049: DEBUG/dalvikvm(60): GC_CONCURRENT freed 911K, 47% free 4763K/8903K, external 1867K/2379K, paused 5ms+11ms
이렇게 두줄만 ㅠㅠ
그래도 검색해봐서
intent1.setClassName("com.android.calculator2","com.android.calculator2.Calculator");
이렇게로 테스트해보았어요~
이바둥님 질문 하나 더 드려도 될까요?
메인에 버튼 아래에 텍스트뷰를 하나 더 만들껀데요..
버튼을 눌러서 알람 화면으로 이동하면 알람을 추가 및 삭제 작업을 한 후에
뒤로가기 버튼을 누르면 텍스트뷰에 알람이 몇건인지 출력되게 하고 싶은데..
지금 알람이 2개가 설정되어 있다면
텍스트뷰에 "2" 이렇게 출력되게요
이런거 하려면.. 어떻게 해야하나요;;;
조금만 알려주실 수 있을까요? 도저히 감이 안잡혀서;;;;;




진저브레드버전 에뮬레이터이신거 같은데
패키지명이 com.android.deskclock.AlarmProvider가 아니라 com.android.deskclock.AlarmClock 아닌가요?
에러는 android.content.ActivityNotFoundException면 해당 Activity 찾을수 없다는거고요