更新:我刚刚找到这个线程,基本上是说将您的 APN 类型设置为“mms”。然后当你的数据被启用时,它将只允许 mms 数据。不确定电池如何受此影响。
启用接收彩信的数据
这里有两个 Intent 动作可以帮助我们。
第一个是android.provider.Telephony.WAP_PUSH_RECEIVED
,当第一次收到彩信时触发。
另一个是android.intent.action.TRANSACTION_COMPLETED_ACTION
,当彩信完成下载其内容时触发。
接收和下载彩信时,我的 AndroidManifest.xml 中的以下接收器定义在我的手机上有效:
<receiver android:name="com.freek.mmsdataenabler.MMSReceiver" >
<intent-filter android:priority="999" >
<action android:name="android.provider.Telephony.WAP_PUSH_RECEIVED" />
<data android:mimeType="application/vnd.wap.mms-message" />
</intent-filter>
<intent-filter android:priority="999" >
<action android:name="android.intent.action.TRANSACTION_COMPLETED_ACTION" />
</intent-filter>
</receiver>
然后,您需要做的就是实现 MMSReceiver,然后让它适当地启用和禁用数据。
使用塔斯克
或者,您可以使用上述Tasker中的信息轻松实现传入彩信的启用数据。
- 创建两个任务。一个打开移动数据,一个关闭它。(网络 >移动数据)
- 创建一个名为 MMS Received 的配置文件,并为触发器选择 Event > Phone > Received Text。将类型设置为彩信。设置此配置文件以运行打开移动数据的任务。
- 创建一个名为 MMS Downloaded 的配置文件,并为触发器选择 Event > System > Intent Received。将操作设置
android.intent.action.TRANSACTION_COMPLETED_ACTION
为最高,优先级设置为最高。设置此配置文件以运行关闭移动数据的任务。
我还没有弄清楚如何判断何时从手机发送彩信。