MQTT的android的sdk大家用哪个呢?
android sdk用到了这个:USE_EXACT ALARM ,但是google审核不让用这个权限。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在使用 云消息队列 MQTT 版 的 Android SDK 时,官方推荐的第三方 SDK 是 Eclipse Paho SDK。这是目前阿里云 MQTT 服务针对 Android 平台的首选 SDK,能够确保与 MQTT 3.1.1 协议的最佳兼容性和性能。
USE_EXACT_ALARM
权限的问题USE_EXACT_ALARM
是 Android 系统中用于精确闹钟的权限,通常与后台任务调度或定时任务相关。然而,Google Play 审核政策对这一权限的使用有严格限制,仅允许特定场景(如闹钟应用或计时器应用)使用该权限。如果您的应用因使用此权限而被 Google 审核拒绝,建议采取以下措施:
USE_EXACT_ALARM
USE_EXACT_ALARM
。WorkManager
或 AlarmManager
的非精确模式(setInexactRepeating
),这些方法更符合 Google 的审核要求。Eclipse Paho SDK 本身并不强制要求使用 USE_EXACT_ALARM
,但某些自定义实现可能会引入该权限。您可以尝试以下步骤: - 检查代码:查看您的项目中是否有显式声明 USE_EXACT_ALARM
的代码或配置。如果有,请移除相关代码。 - 更新 SDK:确保您使用的是最新版本的 Eclipse Paho SDK,因为较新的版本可能已经优化了权限管理。 - 自定义实现:如果 SDK 默认行为不符合需求,可以修改其源码以避免使用精确闹钟功能。
如果您确认应用的核心功能需要 USE_EXACT_ALARM
,并且无法通过其他方式实现,可以尝试向 Google 审核团队提交申诉,说明该权限的具体用途和必要性。申诉时需提供详细的技术文档和用户场景说明。
根据阿里云的建议,您可以按照以下步骤操作: 1. 下载并集成 Eclipse Paho SDK:从官方渠道获取最新版本的 Eclipse Paho SDK,并将其集成到您的 Android 项目中。 2. 移除不必要的权限:检查项目的 AndroidManifest.xml
文件,确保未声明 USE_EXACT_ALARM
权限。如果已声明,请删除相关条目。 3. 测试功能:在移除权限后,全面测试 MQTT 消息收发功能,确保其正常运行。 4. 参考示例代码:阿里云提供了多语言的示例代码,您可以参考 Android 平台的示例代码进行调试和优化。
对于 Android 平台,推荐使用 Eclipse Paho SDK 作为 MQTT 客户端 SDK。如果遇到 USE_EXACT_ALARM
权限问题,建议优先移除该权限并通过其他方式实现定时任务。如果权限确实必要,请联系 Google 审核团队进行申诉。
涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系列产品 Serverless 化。RocketMQ 中文社区:https://rocketmq-learning.com/