2013-09-25 2 views
0

내 꿈꾸는 응용 프로그램의 설정 버튼을 클릭하면 응용 프로그램을 닫을 수 있습니다. 매니페스트 파일에 allok를 가지고 있으십시오 -Android Daydream 서비스의 설정 버튼 클릭 응용 프로그램 중지

<application android:label="Bouncing Logo"> 

    <activity 
     android:name="com.example.optionsmenuexample.empty_settings" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.empty_settings" /> 

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


     <service 
     android:name=".BouncerDaydream" 
     android:exported="true" 
     android:label="Bouncing Logo new"> 
     <intent-filter> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <action android:name="android.service.dreams.DreamService" /> 
     </intent-filter> 
     <meta-data 
      android:name="android.service.dream" 
      android:resource="@xml/dream_info" /> 
    </service> 

</application> 

대신 empty_settings.java 클래스가 열립니다.

주어진 해결책을 읽었습니다. here. 그러나 그것은 내 맥락에 맞지 않았습니다. 제가 잘못된 길로 가면 올바른 길로 인도하십시오. 제 코드가 어디가 잘못되었는지 말해주세요.

내 로그 캣입니다 -

09-26 10:16:46.807: E/AndroidRuntime(2036): FATAL EXCEPTION: main 
09-26 10:16:46.807: E/AndroidRuntime(2036): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.app/com.example.app.empty_settings}; have you declared this activity in your AndroidManifest.xml? 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1628) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.Activity.startActivityForResult(Activity.java:3390) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.Activity.startActivityForResult(Activity.java:3351) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.Activity.startActivity(Activity.java:3587) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.Activity.startActivity(Activity.java:3555) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at com.android.settings.DreamBackend.launchSettings(DreamBackend.java:208) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at com.android.settings.DreamSettings$DreamInfoAdapter$2.onClick(DreamSettings.java:327) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.view.View.performClick(View.java:4240) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.view.View$PerformClick.run(View.java:17721) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.os.Handler.handleCallback(Handler.java:730) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.os.Handler.dispatchMessage(Handler.java:92) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.os.Looper.loop(Looper.java:137) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at android.app.ActivityThread.main(ActivityThread.java:5103) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at java.lang.reflect.Method.invokeNative(Native Method) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at java.lang.reflect.Method.invoke(Method.java:525) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 
09-26 10:16:46.807: E/AndroidRuntime(2036):  at dalvik.system.NativeStart.main(Native Method) 
09-26 10:16:46.817: W/ActivityManager(1226): Force finishing activity com.android.settings/.SubSettings 

그리고 이것은 내 매니페스트 파일 -

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.optionsmenuexample" 
android:versionCode="1" 
android:versionName="1.0"> 
<uses-sdk android:targetSdkVersion="17" android:minSdkVersion="17"/> 


<application android:label="Bouncing Logo"> 

    <activity 
     android:name="com.example.optionsmenuexample.empty_settings" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.empty_settings" /> 

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


     <service 
     android:name=".BouncerDaydream" 
     android:exported="true" 
     android:label="Bouncing Logo new"> 
     <intent-filter> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <action android:name="android.service.dreams.DreamService" /> 
     </intent-filter> 
     <meta-data 
      android:name="android.service.dream" 
      android:resource="@xml/dream_info" /> 
    </service> 

</application> 

이것은 dream_info.xml입니다 : -

<!-- res/xml/dream_info.xml --> 
<?xml version="1.0" encoding="utf-8"?> 
<dream xmlns:android="http://schemas.android.com/apk/res/android" 
    android:settingsActivity="com.example.app/.ExampleDreamSettingsActivity" /> 

감사합니다 미리.

+0

wats ur 최소 SDK 버전 u는 xml로 설정 되나요? – ajey

+0

@KarthikKumar,'' – nki

+0

앱을 깰 수있는 예외 (logcat에서)를 게시하십시오. 또한 res/xml/dream_info.xml의 내용을 게시하십시오. – dsandler

답변

0

지금 받으 셨습니다. 내 실수는, 내가 dream_info.xml 파일에 패키지 이름을 잘못 입력했기 때문입니다. 이제 내 응용 프로그램이 잘 작동합니다.