当前位置: 首页 > 知识库问答 >
问题:

当你收到短信时,如何让一个应用程序运行

章茂
2023-03-14

我正在制作一个应用程序,当手机收到带有特定内容(如密码)的短信时就应该启动。我试了很多代码,但还是不行。谁能帮帮我吗?

package com.example.william.better_gps;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;

public class SmsReceiver extends BroadcastReceiver {

public void onReceive(Context context, Intent intent) {

    Toast.makeText(context, "message", Toast.LENGTH_LONG).show();

}
}
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.william.better_gps" >
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />

 <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:theme="@style/AppTheme.NoActionBar" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <receiver android:name=".SmsReceiver"
        android:enabled="true">
        <intent-filter android:priority="999">
            <action android:name="android.provider.Telephony.SMS_RECEIVED"/>

        </intent-filter>
    </receiver>



</application>
</manifest>

哦,有没有什么办法我可以模拟一个短信,这样我就不用让别人短信给我,如果我想检查它是否工作

共有1个答案

卫俊力
2023-03-14

不要使用compileSdkVersion、targetSdkVersion、BuildToolsVersion23或更高版本。因为在API级别23操作中,广播接收器中的SMS_RECEIVED给予拒绝的权限
使用21或更低版本。以下配置对我有效

compileSdkVersion 21
buildToolsVersion“21.1.2”
targetSdkVersion 21

 类似资料:
  • 我必须制作一个. net Windows应用程序,通过它我可以通过通过USB连接的Android手机发送短信。在诺基亚手机中,有没有类似于发送短信的代码或API,比如AT命令。我必须通过手机发送短信。也就是说,发送消息时,手机必须通过USB连接。

  • 我可以用//div[@ class = ' entry-content ']/p获取以“今天的项目”开头的文本,还可以用//div[@ class = ' entry-content ']//a[@ title]//*获取下一个标签以及它后面的所有文本。然而,正如您所看到的,在“/span”之后仍然有一些文本。然而,我试过的方法都不管用。我试过查看元素的子元素,试过//div[@ class =

  • 是否有可能在运行时使用Appium从一个应用程序切换到另一个应用程序。 谢啦

  • null (如果可能的话,它应该在db中创建表并生成html文件。我看到了http://velocity.apache.org/,所以是否可以使用它生成java代码。)

  • 这是我的课本上的一个代码示例,我试图运行它,但它无法运行。这就是错误: 我不明白为什么它是错误的,因为主类在start类之外,在extenses应用程序内部。这是直接来自一本书,我只是想知道为什么它不会运行。

  • 在我的代码库中有两个实现org.springframework.boot.ApplicationRunner的类。当我的应用程序被加载时,实现ApplicationRunner的两个类都被加载。有没有任何命令行参数可以用来控制实现ApplicationRunner的特定类被加载,尽管这两个类在类级都有@component注释? 目前,我正在命令行中传递一个参数,如 “$springbootapp_