Tag: locationmanager

LocationManager在Android中的位置返回null

我在设备上测试我的Android应用程序,当我使用时它总是失败 locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener); currentLocation = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); 但是,如果我使用NETWORK_PROVIDER而不是GPS_PROVIDER,它可以工作。 currentLocation返回null。 我怎么处理这个? 我需要在locationListener中添加任何具体内容吗? 谢谢!

android – 获取位置并仅在条件为真时将数据发送到远程服务器

我正在构建一个需要将用户位置发送到远程服务器的应用程序(在本例中为Pusher)。 目标是近乎实时地更新他们在地图上的位置,但仅限于他们在工作时,否则应用程序将不需要跟踪他们的位置。 如果他们离开他们接受工作的活动(因此被放置在地图上)并且他们完全离开应用程序,我需要位置更新保持活动状态。 一旦他们到达目的地,我希望停止此背景跟踪。 我一直在关注Android的Service组件,但我不确定它是否是我需要的。 更新应无限期地在后台进行,但仅在用户被分配到作业时(更新在他们接受作业时开始,在到达目的地时结束)。 Bound服务会是最好的吗? 如果是这样,那么与此问题相关的一些代码将非常受欢迎,因为我能找到的很多内容都是通用的,并且可以返回随机整数。 这是我希望在后台执行的代码: package com.example.locationtester; import android.content.Context; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.widget.TextView; import android.widget.Toast; import com.pusher.client.Pusher; import com.pusher.client.PusherOptions; import com.pusher.client.channel.PrivateChannel; import com.pusher.client.channel.PrivateChannelEventListener; import com.pusher.client.connection.ConnectionEventListener; import com.pusher.client.connection.ConnectionState; import com.pusher.client.connection.ConnectionStateChange; import com.pusher.client.util.HttpAuthorizer; import org.json.JSONException; import org.json.JSONObject; public class MainActivity extends AppCompatActivity { […]

Android位置未从自定义类返回位置

我有自己的位置课程。 我有一个赔率结果,当我使用我的class级搜索GPS位置时,我得到0,0回。 然而,如果我在位置管理器中搜索GPS的getLastKnown函数,我会得到强制值: public Location getGPSloc(Context c){ isGPSavailable(c); if(gps_enabled) lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 5000, 0, locationListenerGps); timerGPS = new Timer(); timerGPS.schedule(new GetLastLocationGPS(), 45000); return gpsLoc; } 这是我从函数外部调用的类,我在调用中使用this.getApplicationContext()。 这是GetLastLocationGPS(): class GetLastLocationGPS extends TimerTask { @Override public void run() { lm.removeUpdates(locationListenerGps); if(gps_enabled){ gpsLoc = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);} else{ gpsLoc = null; } } } 这是听众: LocationListener locationListenerGps = new LocationListener() { @Override […]

如何? 侦听位置设置被打开(Android App)

所以我花了几个星期的时间来研究我的Android应用程序,并研究实现我需要做的最好的方式,但仍然无法正确使用..任何/所有帮助都非常感谢,因为我仍然掌握着一切…… 任务: (假设“位置”/ GPS设置当前已关闭),我需要让我的应用程序一直在监听“位置”设置是否打开..此时,只需启动一个活动。 思路: 这些是我认为可能有用的不同方式: LocationListener使用“onProviderEnabled” 使用“onGpsStatusChanged”和“GPS_EVENT_STARTED”的GpsStatusListener GpsProvider需要卫星(以确定它是否开始),或以某种方式使用GpsProvider的“AVAILABLE”Constant / int 使用“ACTION_SERVICE_INTENT”(和/或)“ACTION_INJECTED_SETTING_CHANGED”和“onGetEnabled”或“isEnabled”的SettingInjectorService Settings.Secure使用“LOCATION_MODE”!=“LOCATION_MODE_OFF” ContentObserver / ContentResolver 意图getAction(…) 某种“if / else” 问题: 任何以下任何问题的建议或答案都非常感谢.. 以上哪些想法是完成任务的最佳方式? 越简单越好,但最重要的是它需要随时监听,并在打开位置设置时立即响应。 对于上述哪一个最佳效果,我将如何实现它? (例如,我需要一个BroadcastListener?还是一个服务?它将如何组合在一起? 我非常感谢你能给我提供的任何建议或帮助..我仍然掌握所有这些,但有足够的信心去做,并渴望发布我的第一个应用程序..所以,谢谢你,这意味着很多并将极大地帮助我。 编辑: 好的,所以这就是我到目前为止所拥有的…… inheritance人我的接class人: MyReceiver.Java public class MyReceiver extends BroadcastReceiver { private final static String TAG = “LocationProviderChanged”; boolean isGpsEnabled; boolean isNetworkEnabled; public MyReceiver() { // EMPTY // MyReceiver […]

LocationManager和跳跃坐标

看看这张图片。 你会看到一些LocationManager如何给出奇怪的坐标。 看起来他们跳了起来。 但同时本机谷歌地图应用程序显示移动设备的正确位置。 我在Android 7.0.0和7.1.1下使用3种不同的智能手机测试了应用程序,并且或多或少得到了相同的结果。 请帮我查看我的代码,看看它仍然缺少哪些设置。 谢谢! import android.app.Service; import android.content.Context; import android.content.Intent; import android.location.Location; import android.location.LocationManager; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.IBinder; import android.text.format.DateFormat; import android.util.Log; import com.google.gson.Gson; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.math.BigDecimal; import java.math.RoundingMode; import java.net.HttpURLConnection; import […]

获取Android上的当前GPS位置

我试图通过GPSfunction获取用户的当前位置, 写了一个实现LocationListener的简单类 public class LocationManagerHelper implements LocationListener { private static double latitude; private static double longitude; @Override public void onLocationChanged(Location loc) { latitude = loc.getLatitude(); longitude = loc.getLongitude(); } @Override public void onProviderDisabled(String provider) { } @Override public void onProviderEnabled(String provider) { } @Override public void onStatusChanged(String provider, int status, Bundle extras) { // TODO […]