相关疑难解决方法(0)

在Android上获取用户当前位置的最简单,最强大的方法是什么?

LocationManagerAndroid上的API似乎对于仅需要偶尔粗略估计用户位置的应用程序来说有点痛苦.

我正在处理的应用程序本身并不是一个位置应用程序,但它确实需要获取用户的位置才能显示附近的商家列表.它不需要担心用户是否在移动或类似的东西.

这是我想做的事情:

  1. 向用户显示附近位置的列表.
  2. 预加载用户的位置,以便在ActivityX中需要它时,它将可用.
  3. 我并不特别关心更新的准确性或频率.只要没有办法,抓住一个位置就足够了.也许如果我想要花哨,我会每隔几分钟更新一次位置,但这不是一个重要的优先事项.
  4. 只要有GPS或网络位置提供商,就可以使用任何设备.

看起来它应该不那么难,但在我看来,我必须启动两个不同的位置提供商(GPS和NETWORK)并管理每个生命周期.不仅如此,我还必须在多个活动中复制相同的代码以满足#2.我曾尝试过使用getBestProvider()过去将解决方案缩减为只使用一个位置提供商,但这似乎只能为您提供最好的"理论"提供商,而不是实际上会给您带来最佳结果的提供商.

有没有更简单的方法来实现这一目标?

android location geolocation latitude-longitude

788
推荐指数
12
解决办法
31万
查看次数

Android:LocationManager与Google Play服务

我想构建一个以获取用户当前位置为中心的应用程序,然后通过Google Places API找到与他/她关系密切的兴趣点(如酒吧,餐馆等).

在网上搜索一个可以开始的地方时,我遇到了一些使用该LocationManager课程的教程和其他一些使用Google Play服务的教程,以便找到用户所在的位置.

乍一看,他们两个都做同样的事情,但由于我是新手,我有点困惑,我不知道哪种方法最适合我的需要.所以,我想问你:

这两种查找位置的方法(如果有的话)有什么区别?

gps android geolocation

138
推荐指数
7
解决办法
6万
查看次数

如何在Android中获取当前位置

我在使用Android定位系统的NETWORK提供商获取当前位置坐标时遇到了麻烦.

已经阅读了很多教程,并为我的项目实现了4或5个现有的类,所有这些都给了我最后的坐标但不是当前的坐标.

我很确定问题是我缺少的基本问题,但我无法理解究竟是什么.

我现在使用的代码:

这是我的主要活动

package com.example.locationtests;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    GPSTracker mGPS = new GPSTracker(this);

    TextView text = (TextView) findViewById(R.id.texts);
    if(mGPS.canGetLocation ){
    mGPS.getLocation();
    text.setText("Lat"+mGPS.getLatitude()+"Lon"+mGPS.getLongitude());
    }else{
        text.setText("Unabletofind");
        System.out.println("Unable");
    }
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}
Run Code Online (Sandbox Code Playgroud)

这是我用于跟踪的课程:

package com.example.locationtests;

import android.app.AlertDialog; …
Run Code Online (Sandbox Code Playgroud)

java gps android geolocation android-location

109
推荐指数
3
解决办法
46万
查看次数

在Android中使用Google Maps API显示当前位置和附近的地点以及两个地点之间的路线

我需要Google Maps在Android中开发一个应用程序来定位我当前的位置并需要找到最近的位置.

(例如:我当前所在地附近的警察局.)

它应该接受我当前的位置和输出应该显示最近的地方.

任何人都可以帮我提一些建议,链接,教程吗?

android google-maps google-places-api

50
推荐指数
4
解决办法
16万
查看次数

如何获得Android GPS位置

干杯,我正试图通过Android获得当前的GPS位置.我也遵循了本教程Vogellas的文章.虽然它不起作用.当使用LocationManager.NETWORK_PROVIDER时,无论我站在哪里,我总是得到51的纬度和9的经度.使用LocationManager.GPS_PROVIDER时,我什么都没得到.

虽然使用GMaps时一切正常:S不知道为什么.如何像GMaps一样获得当前的GPS位置?

这是我的代码:

package com.example.gpslocation;

import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.util.Log;
import android.view.Menu;

public class GPS_Location extends Activity implements LocationListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_gps__location);

    LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.gps__location, menu);
    return true;
}

@Override
public void …
Run Code Online (Sandbox Code Playgroud)

java gps android location google-maps

31
推荐指数
4
解决办法
12万
查看次数

如何提高Android地理围栏进入/退出通知的一致性?

我正在使用内置的地理围栏API(播放服务),并且结果好坏参半.看起来在设置地理围栏之后,即使GPS打开,进入/退出的通知也非常不一致,具有最新位置(连接了LocationClient,在后台运行.)我开始监控(轮询)位置变化和调试文本字段中的距离,并且即使基于设备注册的位置和地理围栏的位置(我在技术上是在地理围栏的内部/外部),通常有时会触发通知,有时也不会.有什么方法可以让它更具可预测性?我几乎想要放弃这个api并根据设备位置的轮询实现我自己的(电池耗尽)地理围栏.

android android-maps-v2 android-geofence

24
推荐指数
1
解决办法
1万
查看次数

我在哪里?(Geolocation,Emacs,Perl)

这是其中之一"肯定有一些通用实用程序比我提出的快速和肮脏的东西更好"问题.就像我一样,我知道如何以几种临时方式做到这一点,但是我喜欢使用标准.

简介:我正在寻找合理的标准和无处不在的工具来确定我目前的地理位置.可从Linux/UNIX命令行,Perl,Emacs等调用.

详情:

一个微不足道的情况激发了这个问题(但毫无疑问,更重要的应用程序):我使用emacs org-mode,经常记录日志或日记.我实际上并没有太多使用官方组织模式日记 - 主要是,我将时间戳放在普通的组织模式日志中,隐藏在看起来像链接的元数据中.

[[metadata: timestamp="<2014-01-04 15:02:35 EST, Saturday, January 4, WW01>" <location location="??" timestamp="??"/>][03:02 PM]]
Run Code Online (Sandbox Code Playgroud)

如你所见,我很久以前就添加了记录我位置的功能.但到目前为止我不得不手动设置它.我很懒,经常忽略手动设置位置.(次要注意:我记录了我最后一次手动设置位置,在移动时有用,而忽略了手动更改我的位置.

我更希望有自动推断我的位置的代码.特别是因为我上个月旅行的时间相当多,但是对于我每天都在这里工作的六个地方来说可能更有用:家庭,工作,海边,标准餐厅,我在吃午餐或早餐. .

我可以使用任何一种工具来计算我的位置,例如

  • 我在哪里 - 在Google地图上查看您当前的位置 - ctrlq.org/maps/where/

  • http://www.wolframalpha.com/input/?i=Where+am+I%3F

  • Perl CPAN包,例如IP :: Location - 将IP地址映射到某个位置

    • 注意:NAT后面的私有IP地址不一定有用
    • 但可以与traceroute结合使用

和启发式,如查看WiFi SSID等.

我已经编写了一些东西.

但是......这比我编码的更深入.

上述技术都不是完美的 - 例如,我可能没有net.connectivity等.有些是特定于操作系统的.

如果已经有一些开源设施,我应该使用它.

因此我的问题是:有没有合理无处不在的地理位置服务?

我的收藏

  • 跨越OS操作

    • Cygwin的
    • Linux的
    • Android的?OS-X?(只使用OS标准)
    • 例如尝试执行像Windows netsh这样的命令,如果失败...
  • 命令行实用程序

    • Perl等
    • 可以在emacs中调用
    • 因为那是我想要使用它的地方
    • 但我相信我希望能够在其他地方使用它.
  • 可以连接到广泛可用的标准地理定位服务

    • 例如Perl CPAN IP ::位置,IP-> country/city/...
    • 例如谷歌等,从浏览器推断地理位置
  • 即使无法连接到标准地理定位服务或Internet,也能正常工作

    • 例如缓存最后位置
    • 例如,将名称与专用网络环境相关联的能力
    • 例如,如果在与网络隔离的实验室中
    • 或在家里,连接到WiFi,但宽带下来
    • 例如,看看无线SSID
  • 定制

    • 可以使用属于任何普遍存在的地理定位数据库的信息
    • 例如,我可能会将某些SSID视为我的家或办公室.
  • 学到了

    • 知道(或可以了解)某些SSID是移动的,而不是地理位置固定的(例如我手机上的移动热点) …

linux emacs perl cygwin geolocation

19
推荐指数
1
解决办法
1647
查看次数

检测或阻止用户是否使用虚假位置

如果用户伪造该位置,我将阻止用户使用我的应用.所以我isFromMockProvider用来检查位置是否是假的(按照这里).但isFromMockProvider()在某些情况下可能会为伪造的位置返回false.

public void onLocationChanged(Location location) {
    textView.append("long:"+location.getLatitude()+" - lat:"+location.getLongitude()+" - isMock :"+location.isFromMockProvider() + "\n");
}
Run Code Online (Sandbox Code Playgroud)

我的情况是:我使用假冒伪劣GPS定位到一个位置然后我禁用虚假位置并转到我的应用程序.然后onLocationChanged返回假位置isFromMockProvider() = false

录像机:https://www.youtube.com/watch?v = rWVvjOCaZiI(在此视频中,我目前的位置是16.06,108.21,假位置是36.26,138.28.你可以在上一个视频中看到位置是36.26, 138.28但isFromMockProvider = false)

有没有办法检测用户在这种情况下是否使用虚假位置?任何帮助或建议将非常感谢.
DEMO项目

gps android location google-api-client

15
推荐指数
3
解决办法
3万
查看次数

启用安全辅助紧急模式

对我来说,实施和学习是一件非常有趣和新鲜的事情.我的申请有一些要求.为此,我搜索了很多,但找不到合适的,有价值的东西或链接.所以我在这里发帖子.功能是:

1)在三星设备中有Safety Assistance菜单,您可以在其中找到Emergency Mode选项.

2)现在Emergency mode我想在那时创建一个或多个主要联系人Emergency Mode.因此,现在在保持主页和音量按钮时,emergency将激活并通知通知.

3)现在emergency将在同一时刻激活GPS将自动启用,并且将自动捕获当前位置的两张照片,最后位置和两张照片将发送到Emergency mode作为主要联系人添加的联系人MMS.

注意:如果将启用录音机选项,则录音文件也将发送MMS.

所以,如果有人知道或有人实施,那么我非常感谢他/她.帮助将不胜感激.

android image-capture

12
推荐指数
1
解决办法
920
查看次数

如何获取我的设备的当前位置

可能重复:
如何在Android中以编程方式获取当前GPS位置?

我有一个应用程序,我想要获取当前位置.

我也希望得到纬度和经度所以我存储它并返回那个位置.

怎么办......

gps android location latitude-longitude

7
推荐指数
1
解决办法
1万
查看次数