2013-12-14 3 views
1

나는 인 텐트를 사용하여 이미지가있는 SMS를 보내야하는 안드로이드 응용 프로그램에서 작업하고 있지만 예외는 ActivityNotFoundException입니다. 내가 AndroidManifest.xml에SMS를 보낼 때 아무런 활동도 발견되지 않음

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.shareviamms" 
    android:versionCode="1" 
    android:versionName="1.0" > 

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

    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 

     <activity 
      android:name=".MainActivity" 
      android:label="@string/title_activity_main" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

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

</manifest> 

자바 코드를 안드로이드 4.2

에 노력하고있어 의견과 관련하여

Intent sendIntent = new Intent(Intent.ACTION_SEND);  sendIntent.setClassName("com.android.mms","com.android.mms.ui.ComposeMessageActivity"); 
     sendIntent.putExtra("sms_body", "some text"); 
     sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/32X32.png")); 
     sendIntent.setType("image/png"); 
     startActivity(sendIntent); 

스택 트레이스

12-14 23:07:55.332: E/AndroidRuntime(11322): FATAL EXCEPTION: main 
12-14 23:07:55.332: E/AndroidRuntime(11322): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.shareviamms/com.example.shareviamms.MainActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.mms/com.android.mms.ui.ComposeMessageActivity}; have you declared this activity in your AndroidManifest.xml? 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2187) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2237) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.ActivityThread.access$600(ActivityThread.java:146) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1239) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.os.Handler.dispatchMessage(Handler.java:99) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.os.Looper.loop(Looper.java:137) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.ActivityThread.main(ActivityThread.java:5085) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at java.lang.reflect.Method.invokeNative(Native Method) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at java.lang.reflect.Method.invoke(Method.java:511) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at dalvik.system.NativeStart.main(Native Method) 
12-14 23:07:55.332: E/AndroidRuntime(11322): Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.mms/com.android.mms.ui.ComposeMessageActivity}; have you declared this activity in your AndroidManifest.xml? 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1618) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1417) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Activity.startActivityForResult(Activity.java:3370) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Activity.startActivityForResult(Activity.java:3331) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Activity.startActivity(Activity.java:3566) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Activity.startActivity(Activity.java:3534) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at com.example.shareviamms.MainActivity.onCreate(MainActivity.java:20) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Activity.performCreate(Activity.java:5104) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) 
12-14 23:07:55.332: E/AndroidRuntime(11322): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2151) 
12-14 23:07:55.332: E/AndroidRuntime(11322): ... 11 more 
+0

매니페스트 게시 – user2511882

+0

위에 매니페스트를 추가했습니다. – android

+0

또한 오류의 전문을 게시하십시오. – hichris123

답변

0

, 나는 대답을 업데이트하고 . AcitivityNotFOund를 처리하는 세 가지 방법이 있습니다.

1) 계속 시도하지만 ActivityNotFoundException을 잡습니다.

2) ActivityNotFoundException이 발생하면 사용자가 설치 한 다른 응용 프로그램 (VZMessages, Zlango Messaging, Handcent, ChompSMS 등)을 실행하십시오.

3) 모두 실패한 경우 사용자에게 MMS를 보내려는 것을 알리고 클래스를 지정하지 않고 의도를 시작하십시오. 그렇게하면 사용자가 MMS 메시지를 실제로 전송하는 앱을 선택하는 것입니다.

+0

내 경우에는 작동하지 않습니다. – android

+0

uri를 intent에 넣으십시오. Intent sendIntent = 새로운 인 텐트 (Intent.ACTION_SEND, uri.parse ("file : ///sdcard/32X32.png")) – user2511882

+0

그리고 ACTION_SENDTO로 변경하십시오 – user2511882

관련 문제