-
2020-12-02 11:43:54
function Location() {}; Location.prototype.getLocation = function (callback) { let options = { enableHighAccuracy: true, maximumAge: 1000 }; this.callback = Object.prototype.toString.call(callback) == "[object Function]" ? callback : function (address) { alert(address.province + address.city); console.log("getocation(callbackFunction) 可获得定位信息对象"); }; let self = this; if (navigator.geolocation) { //浏览器支持geolocation navigator.geolocation.getCurrentPosition(function (position) { //经度 let longitude = position.coords.longitude; //纬度 let latitude = position.coords.latitude; self.loadMapApi(longitude, latitude); }, self.onError, options); } else { //浏览器不支持geolocation } }; Location.prototype.loadMapApi = function (longitude, latitude) { let self = this; let oHead = document.getElementsByTagName('HEAD').item(0); let oScript = document.createElement("script"); oScript.type = "text/javascript"; oScript.src = "http://api.map.baidu.com/getscript?v=2.0&ak=A396783ee700cfdb9ba1df281ce36862&services=&t=20140930184510"; oHead.appendChild(oScript); oScript.onload = function (date) { let point = new BMap.Point(longitude, latitude); let gc = new BMap.Geocoder(); gc.getLocation(point, function (rs) { let addComp = rs.addressComponents; self.callback(addComp); }); } }; Location.prototype.onError = function (error) { switch (error.code) { case 1: alert("位置服务被拒绝"); break; case 2: alert("暂时获取不到位置信息"); break; case 3: alert("获取信息超时"); break; case 4: alert("未知错误"); break; } }; // 调用 let local = new Location(); local.getLocation(function (res) { //此处就是返回的地理位置信息 console.log(res); //JSON.stringify(res),把返回的对象转为字符串了,自己根据需求截取下就好 let resstr = JSON.stringify(res); alert(resstr); });
更多相关内容 -
Android如何获取手机的地理位置
2014-11-14 10:51:31Android如何获取手机的地理位置,可靠,绝对可靠! -
Android获取手机位置的实现代码
2021-01-21 20:02:29本文实例为大家分享了Android获取手机位置的方法,供大家参考,具体内容如下 1、项目Src下创建…service包,然后新建GPSService类 package com.zebra.mobilesafe.service; import java.io.IOException; import ... -
android 获取手机位置信息
2017-08-10 09:31:231,获取LocationManager 对象 LocationManager locaManager =(LocationManager) getSystemService(Context.LOCATION_SERVICE); 2,调用locationManager 中requuestLocationUpdates()函数 locManager....1,获取LocationManager 对象
LocationManager locaManager =(LocationManager) getSystemService(Context.LOCATION_SERVICE);
2,调用locationManager 中requuestLocationUpdates()函数
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 500, 0, new LocationListener() {
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
@Override
public void onProviderEnabled(String provider) {
// 当GPS locationProvider 可用时,更新位置
updateView(locManager.getLastKnownLocation(provider));
}
@Override
public void onProviderDisabled(String provider) {
updateView(null);
}
@Override
public void onLocationChanged(Location location) {
// 当GPS定位信息发生改变时,更新位置
updateView(location);
Log.d("UPDATElocation", " 00000000");
}
});
3,获取经纬度洗洗
private void updateView(Location newlocation) {
if (newlocation != null) {
Log.d("UPDATElocation", " 00000000");
StringBuilder sb = new StringBuilder();
sb.append("经度:");
sb.append(newlocation.getLongitude());
sb.append("\n纬度:");
sb.append(newlocation.getLatitude());
show.setText(sb.toString());
} else {
show.setText("xxx");
}
}
-
Android初级教程获取手机位置信息GPS与动态获取最佳方式
2016-07-08 11:25:01简单介绍一下gps定位的操作。...通过获取这个实例,然后调用它的requestLocationUpdates方法进行注册。传入的参数分别有以下含义: * 1、provider:哪种定位方式 * 2、minTime:定位的时间差 * 3、minDistan简单介绍一下gps定位的操作。
主要是靠locationmanger这个api完成的一些操作;通过获取这个实例,然后调用它的requestLocationUpdates方法进行注册。传入的参数分别有以下含义:
* 1、provider:哪种定位方式
* 2、minTime:定位的时间差
* 3、minDistance:定位距离差
* 4、定位监听回调然后第四个参数是一个监听器,要回调这个方法,监听位置的变化情况。实时更新所在位置
程序代码如下:
package com.example.gps; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.TextView; public class MainActivity extends Activity { private TextView tv_show_location; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv_show_location = (TextView) findViewById(R.id.tv_show_location); //获取定位管理器 LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); //设置定位信息 //坐标位置改变,回调此监听方法 LocationListener listener = new LocationListener() { @Override public void onStatusChanged(String provider, int status, Bundle extras) { // TODO Auto-generated method stub } @Override public void onProviderEnabled(String provider) { // TODO Auto-generated method stub } @Override public void onProviderDisabled(String provider) { // TODO Auto-generated method stub } //位置改变的时候调用,这个方法用于返回一些位置信息 @Override public void onLocationChanged(Location location) { //获取位置变化结果 float accuracy = location.getAccuracy();//精确度,以密为单位 double altitude = location.getAltitude();//获取海拔高度 double longitude = location.getLongitude();//经度 double latitude = location.getLatitude();//纬度 float speed = location.getSpeed();//速度 //显示位置信息 tv_show_location.append("accuracy:"+accuracy+"\n"); tv_show_location.append("altitude:"+altitude+"\n"); tv_show_location.append("longitude:"+longitude+"\n"); tv_show_location.append("latitude:"+latitude+"\n"); tv_show_location.append("speed:"+speed+"\n"); } }; locationManager.requestLocationUpdates("gps", 0, 0, listener);//Register for location updates } }
而如果想自动获取最佳定位方式的话,加入以下代码即可:
用模拟器的话。需要配置三个权限://动态获取所有的定位方式 List<String> allProviders = locationManager.getAllProviders(); for (String string : allProviders) { System.out.println("所有定位方式:>>>"+string); } Criteria criteria = new Criteria(); criteria.setCostAllowed(true);//设置产生费用,收费的一般比较精确 criteria.setAccuracy(Criteria.ACCURACY_FINE);//精确度设为最佳 //动态获取最佳定位方式 String bestProvider = locationManager.getBestProvider(criteria, true); /** * 1、provider:那种定位方式 * 2、minTime:定位的时间差 * 3、minDistance:定位距离差 * 4、定位监听回调 * */ //Register for location updates locationManager.requestLocationUpdates(bestProvider, 0, 0, listener);
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
第二个专门针对模拟器的权限,真机则不需要。运行程序,用DDMS的Maual下的Decimal发送变化的位置信息,则可以在手机上显示坐标的变化。
对于基于位置的操作,建议在真机上测试。
-
原生js获取手机定位信息
2020-05-21 14:53:46<script type="text/javascript"> function Location() {}; Location.prototype.getLocation = function (callback) { var options = { enableHighAccuracy: true, maximumAge: 1000 }; this.callback = ...<script type="text/javascript">
function Location() {};
Location.prototype.getLocation = function (callback) {
var options = {
enableHighAccuracy: true,
maximumAge: 1000
};
this.callback = Object.prototype.toString.call(callback) == "[object Function]" ?
callback :
function (address) {
alert(address.province + address.city);
console.log("getocation(callbackFunction) 可获得定位信息对象");
};
var self = this;
if (navigator.geolocation) {
//浏览器支持geolocation
navigator.geolocation.getCurrentPosition(function (position) {
//经度
var longitude = position.coords.longitude;
//纬度
var latitude = position.coords.latitude;
self.loadMapApi(longitude, latitude);
}, self.onError, options);
} else {
//浏览器不支持geolocation
}
};
Location.prototype.loadMapApi = function (longitude, latitude) {
var self = this;
var oHead = document.getElementsByTagName('HEAD').item(0);
var oScript = document.createElement("script");
oScript.type = "text/javascript";
oScript.src = "http://api.map.baidu.com/getscript?v=2.0&ak=A396783ee700cfdb9ba1df281ce36862&services=&t=20140930184510";
oHead.appendChild(oScript);
oScript.onload = function (date) {
var point = new BMap.Point(longitude, latitude);
var gc = new BMap.Geocoder();
gc.getLocation(point, function (rs) {
var addComp = rs.addressComponents;
self.callback(addComp);
});
}
};
Location.prototype.onError = function (error) {
switch (error.code) {
case 1:
alert("位置服务被拒绝");
break;
case 2:
alert("暂时获取不到位置信息");
break;
case 3:
alert("获取信息超时");
break;
case 4:
alert("未知错误");
break;
}
};
//调用
var local = new Location();
local.getLocation(function (res) {
//此处就是返回的地理位置信息
console.log(res);
//JSON.stringify(res),把返回的对象转为字符串了,自己根据需求截取下就好
var resstr = JSON.stringify(res);
alert(resstr);
});
</script> -
vue定位 获取用户位置信息
2019-07-04 10:17:43关于定位功能尝试了很多种方法,h5定位,百度地图定位,高德地图定位,因为ip定位只能定位到城市,所以我选用的是浏览器定位。...百度定位:定位的位置与实际位置偏差太大,我从郑州的一个小县城定位到了... -
Python利用百度API获取位置信息
2018-10-20 18:04:24申请自己的Key,也可以使用本代码key,本代码实现输入中文地址,返回坐标信息。 -
Android获取手机位置代码实现
2015-03-31 22:29:29// 用到位置服务 private LocationManager lm; private MyLocationListener listener; @Override public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return null; } @... -
手机端定位获取用户位置信息
2017-05-26 10:31:09很多时候,我们需要获取手机端用户的位置信息,当然这需要用户的同意授权才能进行获取,下面介绍下我在项目中使用的定位 由于本项目web端使用的是高德地图,因此手机端定位也使用高德的定位接口 浏览器... -
Android 获取位置信息
2021-07-17 10:24:12Android 提供 LocationManager 等相关API用于获取位置信息。 一、权限申请 1.1 APP申请定位权限 Manifest 文件中添加以下权限: <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/&... -
web程序中获取当前地理位置
2021-10-09 09:56:44地理位置的API是通过 navigator.geolocation 对象提供,通过getCurrentPosition方法获取 获取到的地理位置跟 GPS、IP地址、WIFI和蓝牙的MAC地址、GSM/CDMS的ID有关 比如:手机优先使用GPS定位,笔记本等最准确的... -
微信小程序--登录+获取用户信息+获取手机号+获取位置信息
2019-12-17 10:56:21微信小程序--登录+获取用户信息+获取手机号+获取位置信息主题部分小坑 主题部分 1、基础代码 wxml: <view class="userinfo" style="margin-bottom:50rpx"> <view class="userinfo" style="margin-top:45... -
Android 高德地图在华为手机上获取位置信息失败
2022-02-14 15:53:47location.getAddress()这个获取值为空,之前一直选择高精度模式,但是获取不到位置信息 //设置定位模式为AMapLocationMode.Hight_Accuracy,高精度模式。 mLocationOption.setLocationMode(AMapLocationMode.Hight_... -
Android中获取当前位置信息
2021-06-02 23:03:26这篇教程主要介绍了在...有两种类型的位置提供者:GPS定位网络定位以上两种类型,任何一种都可以获得用户或者用户设备的位置信息。但是,它们各有优劣,推荐两者同时使用。GPS 定位,在室内反应迟缓,比较耗时... -
前端获取手机地理位置坐标
2018-02-11 16:42:28(showPosition, showErr, options)">获取精确定位信息 (showPosition, showErr)">获取粗糙定位信息 ()">开始监听位置 ()">停止监听位置 var geolocation = new qq.maps.Geolocation("JKDBZ-QGTKO-... -
浅析Android手机卫士之手机实现短信指令获取位置
2021-01-20 09:37:57获取位置 新建一个service的包 新建一个GPSService类继承系统的Service类 清单文件中注册一下 重写onCreate()方法,服务创建的时候回调 重写onDestroy()方法,服务销毁的时候回调 把上一节的代 -
Android 开发——获取位置
2022-03-23 15:32:38获取手机中所有可用的位置提供器 法一 LocationManager locationManager = (LocationManager)getSystemService(LOCATION_SERVICE); List<String> providerNames = locationManager.getAllProviders(); ... -
解决uniapp打包后手机无法获取位置信息
2021-04-11 22:37:54我在项目测试的时候,使用uniapp真机调试的时候明明可以获取到位置信息,但是在打包后却没有办法拿到位置信息。后来才知道是因为在真机调试的时候,uniapp自带了高德的SDK能够获取位置信息。打包之后要自己去申请... -
Android获取当前位置的经纬度数据
2021-01-20 09:09:48现在有这么一个需求:...LocationTool获取当前位置信息 Android手机获取当前位置的方式:GPS定位,WIFI定位,基站定位,当前Demo使用GPS卫星定位,在LocationTool中返回Location、LocationManager两者对象,通过Loca -
uniapp:打包后手机无法获取位置信息
2021-05-14 12:41:38我在项目测试的时候,使用uniapp真机调试的时候明明可以获取到位置信息,但是在打包后却没有办法拿到位置信息。后来才知道是因为在真机调试的时候,uniapp自带了高德的SDK能够获取位置信息。 解决: 第一步, 我... -
基站位置查询系统_Android获取手机基站位置并进行基站定位的原理
2020-12-09 02:56:15一、首先普及一下手机基站信息中相关的专业词汇: 通过TelephonyManager 获取lac:mcc:mnc:cell-id(基站信息)的解释: MCC,Mobile Country Code,移动国家代码(中国的为460); MNC,Mobile Network Code,移动网络... -
基于Python获取照片的GPS位置信息
2020-09-18 01:54:03主要介绍了基于Python获取照片的GPS位置信息,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 -
【Unity】unity3d 获取手机地理位置
2016-11-30 11:03:18怎么用unity3d 获取手机地理位置呢?unity的某些场景中,如果需要定位地理位置的话,但是unity却没有提供相应的接口。对于安卓(这里举例,IOS暂没研究)这个时候只能用java写个获取地理位置的方法,然后与unity交互... -
手机web端地理位置定位代码
2016-02-28 10:38:14用于手机WEB端地理位置定位代码,你可以根据其代码功能进行拓展和完善 -
利用手机基站获取位置
2016-12-19 16:57:45正好项目中遇到了手机基站的一些原理,那今天就在这里分享一下,现在穿戴设备这么发达,如果能有效地利用,说不定能对孩子及时的寻找,起到帮助,同时也是一大商机不是。什么是基站:简单的说就是我们打电话能连接的... -
Java 安卓获得获得手机设备信息
2021-03-16 11:42:151)android 获取设备型号、OS版本号:import android.os.Build;// .....Build bd = new Build()...android.os.Build.MODELandroid.os.Build.VERSION.RELEASE2)android 获取设备Id等信息:1.需要在AndroidManifest.xml... -
uniapp开发获取用户位置信息功能解析
2022-03-04 14:48:44uniapp官网上没有找到关于获取用户手机定位是否打开的接口,而在开发小程序的时候,遇到了用户虽然授权了位置服务,但是还是获取不到用户位置,发现实际的问题是,用户的手机定位功能没开。 uniapp相关接口 1、uni. -
Android获取位置信息的方法
2021-05-26 06:26:25本文实例为大家分享了Android获取位置信息的具体代码,供大家参考,具体内容如下1.位置服务的简介:位置服务,英文翻译为Location-Based Services,缩写为LBS,又称为定位服务或基于位置的服务,融合了GPS定位、移动...