Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 向消息传递应用程序发送sms意向_Java_Android_Android Intent_Sms_Smsmanager - Fatal编程技术网

Java 向消息传递应用程序发送sms意向

Java 向消息传递应用程序发送sms意向,java,android,android-intent,sms,smsmanager,Java,Android,Android Intent,Sms,Smsmanager,我的应用程序的目标是根据一些参数过滤收到的SMS,并根据这些参数的有效性来删除或接受SMS 我意识到不再可能(因为Android KitKat)有一个这样的隐形应用程序,因此我决定将其作为默认应用程序 我目前很难将意向(通过我应用程序中的onReceive功能接收,通过BroadcastReceiver)发送到股票SMS应用程序(这只允许接收某些SMS) 我发现使用这段代码: Telephony.Sms.getDefaultSmsPackage(getApplicationContext());

我的应用程序的目标是根据一些参数过滤收到的
SMS
,并根据这些参数的有效性来删除或接受
SMS

我意识到不再可能(因为
Android KitKat
)有一个这样的隐形应用程序,因此我决定将其作为默认应用程序

我目前很难将意向(通过我应用程序中的
onReceive
功能接收,通过
BroadcastReceiver
)发送到股票
SMS
应用程序(这只允许接收某些
SMS

我发现使用这段代码:

Telephony.Sms.getDefaultSmsPackage(getApplicationContext());
我能够获得用于股票短信应用的打包
(com.android.mms)
。通过一些研究,我发现
transaction.SmsReceiver
就是我要找的类

但是,我现在无法将意图发送到此特定应用程序。

我得到以下错误:

W/System.err: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.mms.transaction/com.android.mms.transaction.SmsReceiver}; 
这可能对你有帮助

Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", "12125551212");
smsIntent.putExtra("sms_body","Body of Message");
startActivity(smsIntent);

首先,不要使用
startActivity()
将广播发送到
BroadcastReceiver
。第二,你不能做你想做的事。如果你是默认的,你会处理一切。你不能只传递你不想编码的函数。@MikeM。所以没有办法绕过这个?最终,我唯一想做的就是充当从特定号码中提取的短信的保险库,因此我不能让它们进入正常的收件箱。不。自从KitKat之后,真的没有任何专门的短信屏蔽器了。只有默认设置可以阻止,但如果您是默认设置,您需要负责很多事情,包括发送和接收短信和彩信,处理它们在提供商中的存储,等等。
Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", "12125551212");
smsIntent.putExtra("sms_body","Body of Message");
startActivity(smsIntent);