问题标签 [android-sms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
173 浏览

android - Google SMS Retriever API 在土耳其不起作用

作为土耳其的 Android 开发人员,我们有一个关于 Google SMS Retriever API 的问题。我们不能使用这个 API。 https://developers.google.com/identity/sms-retriever/

API 说“以标识您的应用的 11 个字符的哈希字符串结尾”。问题从这里开始。因为,根据土耳其法律“如果您是一家公司并且您想向您的客户发送短信,那么您需要在短信末尾添加您的公司代码,例如 BXXX”。短信看起来像这样;

短信截图

这里有冲突。我们需要在短信末尾添加公司代码,但 API 也希望在短信末尾添加哈希码。我们如何解决这个问题?为什么一定要到最后?在短信中应该足够了。

0 投票
0 回答
121 浏览

android - 是否可以使用 SMS Retriever API 阻止 SMS 通知

我已经实现了 SMS Retriever API,并看到了一些关于使用此流程时预期行为的相互矛盾的信息。

理想情况下:

  • 不会有用户可能认为他们需要采取行动的可见 SMS 通知
  • 短信不会保留在消息应用程序中

是否有可能实现这种体验?

参考:https ://medium.com/@petar.marijanovic/sms-verification-on-android-534959588a1e

此外,当设备收到 SMS 消息时,不会触发通知,并且在设备 SMS 应用程序中找不到 SMS。通过这样做,Android Oreo 提高了用户数据的安全性,因为没有其他应用程序能够读取内容。

0 投票
1 回答
267 浏览

java - SMS Retriever API - 如何以编程方式获取 SMS?

我想在我的 android 项目中实现 sms OTP 接收器,它完全是在 java 而不是 kotlin 中。请任何人都可以帮助我使用java语言在android中做这件事吗?

我在我的 android 项目中尝试了 kotlin 代码,但我的 UI 功能基于 java 代码,请帮助我。

0 投票
1 回答
643 浏览

android - 应用程序从后台删除后,服务内的广播接收器未收听

我有一个广播接收器注册以在服务内接收短信。该应用程序的目的是接收短信并将来自预期发件人的短信内容保存在 Sqlite 存储中。即使应用程序不在后台运行,应用程序也需要捕获收到的短信。

以这种方式在 onCreate 和 unregisterReceiver 中注册接收器 onDestroy 方法。

这按预期工作,但是当我杀死应用程序并在一段时间后,如果我收到短信,它不会被触发。如果我再次打开该应用程序,则该短信开始保存在存储中。

服务被破坏了吗?我在移动设备中检查了“正在运行的服务”,我可以看到该服务正在运行。

我还在清单文件中添加了权限。

我想让应用程序监听传入的短信,即使应用程序不在堆栈中。我可以采用什么方法来完成这项工作。

0 投票
1 回答
1206 浏览

android - 使用 SMS Retriever API Android 的 OTP/SMS 自动获取问题

我正在尝试使用 Google 的 SMS Retriever API 进行自动 SMS 验证,但其中存在问题。以前,我正在阅读发件人号码getOriginatingAddress(),如果它是有效的发件人号码,则阅读 OTP,否则不应阅读邮件。因为,转发的 OTP 会扰乱用户的隐私。

我有以下情况。

我的应用程序正在自动获取转发的 OTP 消息。

  •  用户 A 在其手机上安装应用程序并输入用户 B 手机号码。
  •  用户 B 收到 OTP 并将其转发给用户 A。
  • 应用程序读取用户 A 手机上的 OTP 并转到主屏幕。

有什么办法可以得到发件人号码。?

0 投票
1 回答
1217 浏览

android - 如何解决短信权限的谷歌播放策略?

我已使用清单文件中的短信权限通过短信管理器离线发送短信,但谷歌不接受我已检查设备自动化或默认短信处理程序或默认助理处理程序的声明表格,因此该应用程序已被拒绝大多数时候来自游戏商店。

如何处理这个问题,因为我必须在应用程序中使用短信。

请帮助我找到解决方案。提前致谢

显现:

代码:

0 投票
1 回答
820 浏览

android - 每次获取不同App的Hash String | 短信检索 API

我正在我的 android 应用程序中集成SMS Retriever API

我按照以下文档生成应用程序的哈希字符串:
https ://developers.google.com/identity/sms-retriever/verify#computing_your_apps_hash_string

以下是生成哈希的方法:
1) 命令

2) AppSignatureHelper 类

对于不同的方法,我得到了不同的哈希值

prodRelease(使用命令)-R2J*******N
prodRelease(使用 AppSignatureHelper 类)-ROI*******6

以及针对不同构建变体的不同哈希值

prodRelease: ROI*******6
prodDebug: CAz*******N
devRelease: R2J*******N
devDebug: ROI*******6(与 prodRelease 相同)

我使用带有 prodRelease 哈希的 SMS 模板测试了我的应用程序,即ROI*******6。它工作得很好,然后两天后,它停止工作。我进行了调试,现在哈希值再次不同,现在它可以与不同的哈希值R2J*******N一起使用。

我希望哈希值相同,因为它取决于应用程序的包 ID。
那么为什么不同的哈希值和哪个哈希值是正确的,或者它每次都会改变,我必须不断地改变服务器中的 SMS 模板?
或者有没有其他更好的方法来确定哈希?

0 投票
2 回答
89 浏览

android - 每秒更新 ListView 处理程序不起作用

在我的应用程序接收新短信的应用程序中,我希望列表视图立即使用列表视图中显示的新消息对其进行更新。我尝试使用广播接收器代码的示例代码,但它不起作用,所以我现在尝试使用计时器每秒更新列表视图并显示收到的最新消息,但这也不起作用。

收到新 SMS 消息时使用 BroadcastReceiver 更新列表视图的原始尝试。

SmSBroadcastReceiver.java

CommandsFragment.java

0 投票
1 回答
1045 浏览

android - 我尝试使用 SmsRetrieverClient 从收到的短信中读取 OTP,但广播接收器未调用

我试图通过其广播接收器使用 SmsRetrieverClient 获取短信,实际问题是当 SMS 出现时 onReceive 永远不会调用以进一步处理它,但稍后会在 5 分钟后调用接收器的超时方法。

实际上,我尝试使用库来获取 SMS 并使其正常工作,但要求获得 SMS 读取权限,不幸的是,在将应用程序上传到 Playstore 时,这将面临 Google 政策问题。

下面是我的代码。

下面是我的 Activity 中的 SmsRetrieverClient 方法:

下面的代码是从广播接收器接收短信:

在清单中:

0 投票
2 回答
482 浏览

android-listview - 特定号码的 SMS 消息未显示在其他 Android 设备上

我正在使用 Telephony.Sms 库为我正在开发的应用程序加载接收和发送的短信。当我将查询选择设置为空(查询中的第三项)时,它将显示在我测试过的不同类型的手机上发送和接收的所有短信。

但是当我将其设置为特定数字时,在运行 API 27 的三星 S9 手机上,它不会显示任何短信。在 API 23 上运行的 Nexus 上,它将在列表视图中显示接收到的消息,而不是发送的消息。在运行 API 22 的华为手机上,一切正常,显示特定号码的发送和接收消息。

这是检索特定电话号码发送和接收的短信的完整代码。