作为我们的应用程序的一部分,我们使用两个contentProviders,但两者都用android:exported =" false"。
但我们收到了Google Play警告邮件:您的应用包含SQL注入问题
他们提到解决方案为添加android:exported =" false"对于AndroidManifest文件中已存在的内容提供程序。
任何人都可以建议克服这个问题吗?
仅供参考:我们也使用本地应用程序的CONTENT_URI和SQL语句来获取数据,但是我们使用的是ContentResolver.Query而不暴露任何列或私有数据
答案 0 :(得分:1)
我也遇到过这个问题因为我被我的内容提供商宣布为android:exported="true"
标签。 Google Play建议您应使用android:exported="false"
标记与内容提供商一起删除此漏洞。
请注意,如果您没有从主线程访问数据库,您将获得拒绝访问SQlite异常。
因此,如果您使用任何类型的工作线程来执行某些异步任务并从工作线程退出处调用的回调访问数据库,则必须使用主线程进行数据库操作。
仅供参考:当我从BLE Gatt写入回调中将一些数据插入数据库时,我获得了访问被拒绝的异常
答案 1 :(得分:0)
请遵循Google支持。此信息适用于具有包含SQL注入漏洞的应用程序的开发人员。
答案 2 :(得分:-2)
这似乎是一个网上诱骗电子邮件,应该被忽略。我们收到了其中一个我们很久以前未发布的应用程序,它收到了公司电子邮件,但不我们用于Google开发控制台的地址。