android位置权限提示未出现-phonegap应用程序
Posted
技术标签:
【中文标题】android位置权限提示未出现-phonegap应用程序【英文标题】:android geolocation permission promt not coming - phoonegap application 【发布时间】:2012-12-02 18:23:02 【问题描述】:我正在构建一个 html5 应用程序,在其中我正在测试地理定位功能。 我正在使用下面的代码来访问用户的地理位置。
if (navigator.geolocation)
navigator.geolocation.getCurrentPosition(this.showPosition);
当我使用 phonegap 在 android 上运行此代码的应用程序时,我看不到允许或拒绝用户地理定位的权限提示。
但是,在桌面浏览器上会显示提示。
我直接加载我的网页,如下面的代码在我的主要活动文件中。我没有使用 webview 对象。
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/Code/Test.html");
manifest 文件中已正确授予权限,我正在获取用户的地理位置,但权限提示未在 android 中显示。
【问题讨论】:
您是否在 app/AndroidManifest.xml 中添加权限? docs.phonegap.com/en/2.2.0/… 【参考方案1】:我没有确认我的答案的参考,但我相信这是预期的行为。当您在 Web 浏览器中加载应用程序时,您没有明确授予应用程序知道您的位置的权限。因此,系统会提示您授予应用访问该信息的权限。在移动应用程序中,您在安装应用程序时授予该权限。这就是为什么(至少在 Android 中)您会在安装应用程序时看到应用程序所需的权限列表。然后,当您运行该应用时,您已经说过它可以访问您的位置。
【讨论】:
没错。您在安装应用程序的那一刻就授予它权限。【参考方案2】:确保您在设备准备就绪后调用地理定位 API -- 更多详情请参阅 here。
【讨论】:
以上是关于android位置权限提示未出现-phonegap应用程序的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap Android 应用程序“未安装应用程序”
未找到 Phonegap 3.3/Cordova iOS 地理位置