是否可以收听Google Nearby的许可确认/拒绝?

问题描述 投票:0回答:1

目前,在我的主要活动中,我使用Google API客户端来管理“附近”生命周期。如果未启用“附近”或无权运行,则将触发客户端的OnConnectionFailedListener。从那里,我使用startActivityForResult输入一个新活动,并听取其关闭事件以再次检查Nearby是否已启用并正常运行。这是我对这个问题的看法,因为谷歌似乎没有正式提供一种方式来收听它显示的对话框,提示你有关权限,或接近该权限。

我已经设计了至少一种策略来实现我的目标,即在接受/拒绝给予附近使用许可时监控用户输入。

我的策略是找到谷歌提出的对话视图,并听取它拥有的按钮。我在显示Dialog时调试了我的代码,无法在任何地方找到它。这可能是因为显然Dialog是在一个新的“GoogleApiActivity”中启动的(我甚至可以看到进入和离开屏幕)。我该如何访问?

我也在寻找处理这个问题的其他方法。但我想丢失我今天使用的二级屏幕,并且只依赖于API对话框。我试图让我的应用程序必须在API 16+和几种设备上运行,没有兼容性问题。

提前感谢您的时间和分享您的知识。

android google-nearby
1个回答
0
投票

结果我实际上在我自己的问题中回答了自己。我在我的问题中声明谷歌打开Goog​​leApiActivity来显示对话框,打开此活动会暂停我的主要活动的生命周期,就像我使用我在问题中描述的辅助新活动时一样。更重要的是,当google调用其GoogleApiActivity时,使用的命令是startActivityForResult(),它使用代码65537进行ID。如果我在onActivityResult()上检查此代码,我可以验证用户是否已根据resultCode授予了权限。如果resultCode等于Activity.RESULT_OK,则表示已授予权限。

我只希望这是关于文档的,我无法在任何地方找到它。

© www.soinside.com 2019 - 2024. All rights reserved.