无权限访问此对象错误
No permission to access this object error
我正在尝试使用 firebase 上传文件。该代码在仅具有内部存储的设备上运行良好,但在具有外部存储(SD 卡)的设备上尝试时显示 User does not have permission to access this object. Code: -13021 HttpResult: 403
错误。
我的清单文件包含以下权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
检查build.gradle中的目标SDK版本是否为23,如果是则需要执行运行时权限或将其更改为22
如果您的项目需要额外的权限,请不要将 targetSdk
设置为任何高于 22
的项目,因为您必须支持 Runtime Permissions。作为一个快速解决方案,将 targetSdk
更改为 22
,清理并重建您的项目,您会没事的。
存储桶的默认安全规则要求您使用 firebase 身份验证 登录。您可以使用任何身份验证方法。至少,您必须通过以下方式匿名登录:
- 在 Firebase 网站的 "Auth" 选项卡中启用匿名登录
- 按照此处的步骤添加登录代码:https://firebase.google.com/docs/auth/android/anonymous-auth#authenticate-with-firebase-anonymously
您还可以设置规则以允许任何人访问——包括那些尚未通过身份验证的人。 但是不推荐这样做,因为您的数据不安全。
您只需要在规则中使用 request.auth
而不是 auth
。
还 Secure User Data 了解更多信息。
希望对你有所帮助。
1.Go 到您的 Firebase 控制台
2.Go 到您的应用
3.Click 在左侧的身份验证按钮上
4.Click 在登录方法选项卡上
5.Hover 在列表下方的匿名项上
6.Click 在项目右侧的铅笔按钮上
7.Click 启用然后保存
这应该有效
只需转到身份验证并允许匿名登录方法,您的问题就会完全解决
我正在尝试使用 firebase 上传文件。该代码在仅具有内部存储的设备上运行良好,但在具有外部存储(SD 卡)的设备上尝试时显示 User does not have permission to access this object. Code: -13021 HttpResult: 403
错误。
我的清单文件包含以下权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
检查build.gradle中的目标SDK版本是否为23,如果是则需要执行运行时权限或将其更改为22
如果您的项目需要额外的权限,请不要将 targetSdk
设置为任何高于 22
的项目,因为您必须支持 Runtime Permissions。作为一个快速解决方案,将 targetSdk
更改为 22
,清理并重建您的项目,您会没事的。
存储桶的默认安全规则要求您使用 firebase 身份验证 登录。您可以使用任何身份验证方法。至少,您必须通过以下方式匿名登录:
- 在 Firebase 网站的 "Auth" 选项卡中启用匿名登录
- 按照此处的步骤添加登录代码:https://firebase.google.com/docs/auth/android/anonymous-auth#authenticate-with-firebase-anonymously
您还可以设置规则以允许任何人访问——包括那些尚未通过身份验证的人。 但是不推荐这样做,因为您的数据不安全。
您只需要在规则中使用 request.auth
而不是 auth
。
还 Secure User Data 了解更多信息。
希望对你有所帮助。
1.Go 到您的 Firebase 控制台
2.Go 到您的应用
3.Click 在左侧的身份验证按钮上
4.Click 在登录方法选项卡上
5.Hover 在列表下方的匿名项上
6.Click 在项目右侧的铅笔按钮上
7.Click 启用然后保存
这应该有效
只需转到身份验证并允许匿名登录方法,您的问题就会完全解决