gpt4 book ai didi

android - 在 android 4.4 中发送彩信

转载 作者:行者123 更新时间:2023-11-30 02:39:19 25 4
gpt4 key购买 nike

我正在尝试仅从我的应用程序发送彩信。我在 android 开发人员教程 (http://android-developers.blogspot.com/2013/10/getting-your-sms-apps-ready-for-kitkat.html) 的帮助下将其设为默认消息传递应用程序。

我的 list :

监听传入 SMS 消息的 BroadcastReceiver:

   <receiver android:name="com.test.SmsReceiver"
android:permission="android.permission.BROADCAST_SMS">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_DELIVER" />
</intent-filter>
</receiver>

监听传入 MMS 消息的 BroadcastReceiver

 <receiver android:name="com.test.MmsReceiver"
android:permission="android.permission.BROADCAST_WAP_PUSH">
<intent-filter>
<action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
<data android:mimeType="application/vnd.wap.mms-message" />
</intent-filter>
</receiver>

通过电话快速响应传送消息的服务

<service android:name="com.test.HeadlessSmsSendService"
android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
</service>

NewMmsActivity 允许用户发送新短信/彩信的 Activity :

 <activity android:name="com.test.NewMmsActivity"
android:configChanges="keyboard|keyboardHidden|locale|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:label="@string/app_name"
android:launchMode="singleTop"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<action android:name="android.intent.action.SENDTO" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
</activity>

但是当我尝试在 NewMmsActivity 中发送彩信时,它不起作用,而是像这样打开对话框:

enter image description here

代码:

  Intent mmsIntent = new Intent(Intent.ACTION_SEND);
mmsIntent.putExtra("sms_body", "text");
mmsIntent.putExtra("address", "99999999");
mmsIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(fileString)));
mmsIntent.setType("image/jpeg");
startActivity(mmsIntent);

如果我使用 Intent.ACTION_SENDTO 什么也不会发生。 Intent 启动时没有任何问题,但什么也没有发生。

我错过了什么?

最佳答案

作为默认应用程序,您的应用程序负责自己发送彩信,而不是打开另一个应用程序来执行此操作,这是您的代码正在做的事情。目前,Android 没有像 SMS 那样的简单的 MMS API。此外,它是框架的一个非常缺乏文档的方面,实现它所需的代码量和解释超出了 Stack Overflow 的范围。欢迎您检查 native 应用程序的源代码以获取指导,但请记住,这不是一项微不足道的任务,因为默认应用程序负责处理 MMS 所需的一切,包括发送、接收和 Content Provider 交易。

关于android - 在 android 4.4 中发送彩信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25997516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com