Android Geolocation 无法在模拟器中获取您的位置错误

发布于 2024-12-06 19:37:16 字数 1188 浏览 1 评论 0原文

我尝试使用以下代码来查找钛合金 Android 中用户的位置,

application.Ti.App.GeoApp = {};
Ti.Geolocation.preferredProvider = Titanium.Geolocation.PROVIDER_GPS;
Ti.Geolocation.purpose = "testing";
Titanium.Geolocation.accuracy = Titanium.Geolocation.ACCURACY_BEST;
Titanium.Geolocation.distanceFilter = 10;
if( Titanium.Geolocation.locationServicesEnabled === false ) {
    Ti.API.debug('Your device has GPS turned off. Please turn it on.');
}
function updatePosition(e) {
    if( ! e.success || e.error ) {
    alert("Unable to get your location.");
    Ti.API.debug(JSON.stringify(e));
    Ti.API.debug(e);
    return;
    }
    Ti.App.fireEvent("app:got.location", {
    "coords" : e.coords
    });
};

Ti.App.addEventListener("app:got.location", function(d) {
    Ti.App.GeoApp.f_lng = d.longitude;
    Ti.App.GeoApp.f_lat = d.latitude;
    Ti.API.debug(JSON.stringify(d));
    Ti.Geolocation.removeEventListener('location', updatePosition);

    alert(JSON.stringify(d));
});
Titanium.Geolocation.getCurrentPosition( updatePosition );    
Titanium.Geolocation.addEventListener( 'location', updatePosition );

运行此代码后,它会发出警报 *无法获取您的位置。*在 Android 模拟器中 我缺少什么东西?提前致谢

I tried following code for finding out location of user in titanium android

application.Ti.App.GeoApp = {};
Ti.Geolocation.preferredProvider = Titanium.Geolocation.PROVIDER_GPS;
Ti.Geolocation.purpose = "testing";
Titanium.Geolocation.accuracy = Titanium.Geolocation.ACCURACY_BEST;
Titanium.Geolocation.distanceFilter = 10;
if( Titanium.Geolocation.locationServicesEnabled === false ) {
    Ti.API.debug('Your device has GPS turned off. Please turn it on.');
}
function updatePosition(e) {
    if( ! e.success || e.error ) {
    alert("Unable to get your location.");
    Ti.API.debug(JSON.stringify(e));
    Ti.API.debug(e);
    return;
    }
    Ti.App.fireEvent("app:got.location", {
    "coords" : e.coords
    });
};

Ti.App.addEventListener("app:got.location", function(d) {
    Ti.App.GeoApp.f_lng = d.longitude;
    Ti.App.GeoApp.f_lat = d.latitude;
    Ti.API.debug(JSON.stringify(d));
    Ti.Geolocation.removeEventListener('location', updatePosition);

    alert(JSON.stringify(d));
});
Titanium.Geolocation.getCurrentPosition( updatePosition );    
Titanium.Geolocation.addEventListener( 'location', updatePosition );

after running this code it gives alert *Unable to get your location.*in android simulator
What thing which I am missing? thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

痴意少年 2024-12-13 19:37:16

您必须使用 telnet 连接到模拟器并“设置位置”。每次您设置位置时,您都会收到一个事件。

`
telnet localhost 5554(考虑到有时端口是不同的 - 您可以在窗口标题栏中看到它)。

正在尝试 127.0.0.1...

已连接到本地主机。

转义字符是“^]”。

Android 控制台:键入“help”以获取命令列表

OK

geo fix 15.4548 12.4548(参数为经度、纬度(以度为单位))

OK

quit
`

享受

You have to connect using telnet to your emulator and "set the location". Each time you set the location you will get an event.

`
telnet localhost 5554 (take in consideration that sometimes the port is different - you can see it in the window title bar).

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

Android Console: type 'help' for a list of commands

OK

geo fix 15.4548 12.4548 (parameters are longitude, latitude in degrees)

OK

quit
`

Enjoy

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文