0

MMS メッセージで写真を送信しようとしています。次の既知のスニペットを使用しています。

Intent i = new Intent(Intent.ACTION_SEND);
i.putExtra(Intent.EXTRA_TEXT, "This is an MMS message");
String sendfilepath = "file://" + sendfile.toString() + ".jpg";
i.putExtra(Intent.EXTRA_STREAM,Uri.parse(sendfilepath)) ;
i.setType("image/jpeg");

それは私のソニーのデバイスで動作します。ポップアップ メニューには、メッセージ アプリと他のアプリが表示されます。しかし、HTC ではメッセージング アプリが表示されません。Bluetooth、Facebook、メールなどが表示されます。「使用して完了したアクション」リストにメッセージングアプリを表示するにはどうすればよいですか

4

1 に答える 1

0

この手法を使用して、HTC センス デバイスをチェックし、適切に反応してインテントの適切な「バージョン」を送信できます。

Uri uri = Uri.fromFile(imgFile);
//HTC Sense intent
Intent sendIntent = new Intent("android.intent.action.SEND_MSG");
sendIntent.putExtra(Intent.EXTRA_STREAM, uri);
sendIntent.setType("image/"+type);
List<ResolveInfo> resolves = getPackageManager().queryIntentActivities(sendIntent,PackageManager.MATCH_DEFAULT_ONLY);
if (resolves.size() > 0) {
    // This branch is followed only for HTC 
    startActivity(sendIntent);
} else {
    // Else launch the non-HTC sense Intent
    sendIntent = new Intent(Intent.ACTION_SEND);
    sendIntent.putExtra(Intent.EXTRA_STREAM, uri);
    sendIntent.setType("image/"+type);
    startActivity(Intent.createChooser(sendIntent,"Send"));
}
于 2012-07-23T21:12:37.130 に答える