gpt4 book ai didi

android: android.provider.Telephony.SMS_RECEIVED 在哪里?

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

我正在编写一个需要接收短信的应用程序,每个人都在他们的代码中使用“android.provider.Telephony.SMS_RECEIVED_ACTION” Intent 操作,但看起来 API 级别 17 不再支持它了!它现在在哪里?我也没有在“android.telephony”类中找到 SMS_RECEIVED_ACTION!请有人告诉我,我完全糊涂了。我应该使用旧的 API 吗?

最佳答案

Telephony 类在 API 19 (4.4 - KitKat) 之前没有记录在案的 API。没有上课并不意味着您尝试做的事情不起作用。您需要请求此权限:

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

如果您在 list 中注册您的接收器,它将看起来像这样:

    <receiver android:name=".SmsIntentReceiver">
<intent-filter android:priority="1">
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>

来自 android.provider.Telephony AOSP:

public static final String SMS_RECEIVED_ACTION = "android.provider.Telephony.SMS_RECEIVED";

这是对源代码的 grepcode.com 引用:

http://grepcode.com/file_/repository.grepcode.com/java/ext/com.google.android/android/2.3.2_r1/android/provider/Telephony.java/?v=source

注意类声明之前的“@hide”——它在那里,但没有暴露给开发者。这就是它在 ADT 中不被识别的原因。

关于android: android.provider.Telephony.SMS_RECEIVED 在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18494428/

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