• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 使用 Ionic 包装 Angular2 应用程序 - 地理定位问题

[复制链接]
菜鸟教程小白 发表于 2022-12-11 17:54:06 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个现有的、响应式的 Angular 2 应用程序,我想使用 Ionic 打包并部署到应用商店。该应用程序将在两种网络浏览器上运行,并在 iOS 和 Android 上作为 native 应用程序运行。

我现在已经基本解决了这个问题,但有一个问题。我需要在我的第一个屏幕上使用 geolocation,而我的 Web 应用程序使用 navigator.geolocation.getCurrentPosition 如您所愿。这在网络中非常有效,请求用户许可,然后执行 geolocation

在 iOS 版本中,我在 cordova-plugin-geolocation 中添加标签后,我可以弹出一条消息以允许地理定位,但此消息使用长路径

("/var/containers/bundle/application/{{GUID}}/{{APPNAME}}/www/index.html" would like to use your current location).

这看起来很老套,很业余,老实说,我可能会删除任何给我这样消息的应用程序。我试图弄清楚如何让这条消息说出我的应用程序的名称。以下是我尝试过的一些事情...

  • Adding NSLocationWhenInUseUsageDescription and it's variations to my plist file. This results in me getting a message with the app name first, and then getting a second message with the path.
  • Importing 'ionic-native' in my angular 2 app and trying to use Geolocation as a wrapper -- no change
  • Waiting for the "deviceready" event to do geolocation -- no change
  • Setting a long delay (up to 30 seconds) with setTimeout before doing geolocation -- no change

我讨厌我必须拥有两个代码库才能通过应用商店分发 channel 部署一个简单的网络应用程序的想法。当然,有一些我还没有想到的解决方法。有什么建议吗?



Best Answer-推荐答案


所以,事实证明这有点简单。构建的 index.html 文件只需要具有 ionic javascript 引用,如下所示:

<script src="lib/ionic/js/ionic.bundle.js"></script>
<script src="cordova.js"></script>

我修改了我的 gulp 文件,该文件由 webpack build for ionic 处理,以便在结束 head 标记之前将它们放入,现在我对地理定位的调用可以使用正确的消息传递。

navigator.geolocation.getCurrentPosition((pos) => { 
   //do things with pos
});

关于ios - 使用 Ionic 包装 Angular2 应用程序 - 地理定位问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166724/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap