我在离子4上开发的项目中遇到了使用启动导航器的问题。
我输入了必要的命令:
ionic cordova插件添加uk.co.workingedge.phonegap.plugin.launchnavigator
npm install@eionic native/slaunch navigator
之后,我将它们导入到app.module中。
这样,我实现了以下代码:
import { Component, OnInit } from '@angular/core';
import { LaunchNavigator, LaunchNavigatorOptions } from '@ionic-native/launch-navigator/ngx';
import { Geolocation } from '@ionic-native/geolocation/ngx';
@Component({
selector: 'app-teste-gps',
templateUrl: './teste-gps.page.html',
styleUrls: ['./teste-gps.page.scss'],
})
export class TesteGpsPage implements OnInit {
latitude: number;
longitude: number;
constructor(private geolocation: Geolocation, private launchNavigator: LaunchNavigator) {
}
ionViewDidLoad() {
this.geolocation.getCurrentPosition().then(position => {
this.latitude = position.coords.latitude;
this.longitude = position.coords.longitude;
}).catch(erro => {
console.log(erro);
})
}
navigateLocation() {
let options: LaunchNavigatorOptions = {
start: [this.latitude, this.longitude],
app: this.launchNavigator.APP.GOOGLE_MAPS
};
this.launchNavigator.navigate('Laguna, SC', options)
.then(success => {
console.log(success);
}, error => {
console.log(error);
})
}
之后,我执行命令(ionic cordova运行android(,应用程序在我的手机上打开,但当触发navigationLocation方法的按钮没有动作时,谷歌地图不会打开。
有人知道会是什么吗?如果是版本问题或类似问题?
我怀疑这可能是您的API权限问题。尝试以下操作:
- 访问谷歌云。选择您的项目
- 然后单击左侧菜单中的凭据部分
- 加载页面时,在API键部分下,单击相关的API键
- 检查"应用程序限制">部分,并确保所选选项满足您的目的
- 出于测试目的,在"API限制">下选择"不限制密钥">选项并保存。10分钟后检查是否有效