gpt4 book ai didi

android - "android.provider.Telephony.SMS_RECEIVED"在我的设备 (HTC Wildfire) 上不工作 - 如何调试?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:53:57 25 4
gpt4 key购买 nike

我遇到了非常令人沮丧的问题。

我创建了大多数在线和书籍教程所说的 SMS 接收器。

AndroidManifest.xml:

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />

<application android:name="roboguice.application.RoboApplication"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:debuggable="true" >

<!-- ... other stuffs here ... -->

<receiver android:name=".receivers.SmsReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
</application>

短信接收者.java:

public class SmsReceiver extends BroadcastReceiver {

public static final String TAG = "SmsReceiver";

@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "SMS received!");
Toast.makeText(context, "SMS received.", Toast.LENGTH_LONG).show();
}
}

虽然它可以在 Emulator (Android 2.2) 上正常工作,但它不能在我的 HTC Wildfire 上工作(Android 2.2.1,未 root)。

主要问题是我是 Android 开发的新手,完全不知道如何调试它。

当我的 HTC 设备接收 SMS 消息时,我可以从它发送的 LogCat 日志中找到有用的信息吗?为什么我的设备不一样!?

最佳答案

原因及解决方案:

我已经解决了。 “android.provider.Telephony.SMS_RECEIVED”无法正常工作,因为我的设备上安装了“GO SMS Pro”应用程序,并且选中了“禁用其他消息通知”选项(“在通知中禁用其他 SMS 相关应用程序的通知”栏,避免重复通知。”)。取消选中它解决了我的问题。

如何确保我的广播接收器能够接收到这个 Intent ,即使其他一些应用程序阻止了它?由于“android:priority”(Intercept SMS messages in Android and prevent them appearing in Messaging App),我怎么知道为“GO SMS Pro”应用程序设置了什么“优先级”?

关于android - "android.provider.Telephony.SMS_RECEIVED"在我的设备 (HTC Wildfire) 上不工作 - 如何调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8030777/

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