什么软件对目标海绵城市目标进行地图定位后自动搜索附近的人

微信能“定位”慎找“附近的人”
原标题:微信能“定位”慎找“附近的人”
微信可以轻易定位用户位置。记者求证:“三点定位法”传言获证实近日,有网友曝出利用微信“附近的人”功能,只要连续变换3次以上位置,再辅以电子地图,就能定位出其他微信用户究竟身在何方。此言 一出,引起了众多网友的恐慌,如果传言属实,岂不是会泄露私人隐私?为此,记者按照网上曝出的方法,经过亲身测试,发现传言确实属实。网上传言利用微信 能准确定位附近的人近日,网上有一种说法,利用微信“附近的人”这一功能,可以对他人进行定位。微信“附近的人”功能能够帮微信使用者找到距离自己1000米以内的其他微信使用者。按照网帖描述,在微信“附近的人”功能中找到特定对象,记下自己和对方的距离,之后自己两次变换位置,重新测量自己和对方的距离,最后以三次测量地点为圆心、三个距离为半径画三个圆,三个圆重合的位置就是对方所在位置。记者试验实地测试 三点锁定目标方位网上传言是否可信,众说纷纭。日前,记者在一位美女的配合下,在北京北三环外健德桥附近进行试验。和记者分开后,这位美女“藏身”附近的一处商铺,但具体位置并未告知记者。记者随后利用微信“附近的人”功能,在健德门地铁站A口(与对方距离500米以内)、中鑫嘉园小区(与对方距离300米以内)、北医附小北门(与对方距离100米以内)3个地点进行测试。随后,记者利用电子地图,用网帖中教授的方式,确定对方位置在华盛家园小区北侧。记者打电话向美女确认,对方惊呼:“我就在华盛家园小区北侧的商铺里!你怎么知道的?”之后,记者又在对方配合下,在北京朝阳、海淀、丰台等多地重复试验,均成功做出定位。专家解读原理不难 利用平面几何知识“只是利用了平面几何求相交点的知识,一点也不难。”北京师范大学数学科学学院教授王昆扬说。设被搜寻者的坐标为Z,搜寻者的第一个位置为A,在已知A与Z的距离小于等于500米时,意味着Z位于以A为圆心、500米为半径的圆内的任意位置。同理,当搜寻者位于位置B、位置C,且已知B与Z、C与Z的距离分别为小于等于300米和小于等于100米时,意味着Z位于以B和C为圆心、以相应距离为半径的圆内的任意位置。这时可以得出结论:坐标Z的位置,位于三个圆的重合区域。王教授表示:“如果搜寻者能变换更多位置,即画更多的圆,重叠区域会更小,定位精准度会更高。”但王教授告诉记者,变换多个位置利用微信定位,只能搜寻静止的目标,比如在办公室、餐馆等地点保持长时间不变换位置的人。提醒担心泄露个人信息可以关闭此功能记者和微信运营方的工作人员取得联系。对方表示,如果用户担心“附近的人”功能会泄露个人信息,可以关闭它。打开过这个功能的用户,可以点击页面的右上角,再选择清除位置信息并退出选项,软件就会清除显示出的距离信息。权威提示已有犯罪分子利用微信作案通过统计记者发现,近年来,仅国内媒体报道的因微信引发的犯罪案件,就有49起之多。其中强奸案最多,达24起。其中,浙江宁波男子曹某,利用微信连续强奸7名年轻女性;而广东廉江17岁女生莫某,则因用微信被一伙流氓盯上,14名青少年将其挟持到荒郊,其中9人将其轮奸。深圳警方破获的一起组织卖淫案中,犯罪分子正是利用微信搜索“附近的人”,确定“客源”后派卖淫女上门服务。记者从警方获悉,北京也已经发生以微信定位为手段实施的犯罪案件。因微信结识陌生人交友而引发的盗窃、抢劫案件屡见不鲜,包括招揽陌生人去黑咖啡厅强制高消费的案件等。由于朝阳法院受理此类案件最多,强奸、敲诈勒索、抢劫均有发生,记者将试验报告和数学专家的说明交给朝阳法院。了解情况后,朝阳法院十分重视。朝阳法院刑二庭法官助理李佳丽认为,微信定位功能潜伏犯罪风险。微信用户应增强自我保护意识,谨慎使用定位功能,谨慎公开自己的状态或外出信息,也不要随意接受附近陌生人的好友请求。警方也提示,要关注个人隐私安全,不给坏人可乘之机。据《法制晚报》
用手机随时随地看新闻
独家独到独立
用户名&&密码所有评论仅代表网友意见,凤凰网保持中立 
04/21 07:02
04/21 07:02
04/21 07:02
04/21 06:49
04/21 11:28
03/09 16:46
02/24 09:56
03/09 16:45
03/09 16:45
02/27 16:10
03/13 08:17
03/12 08:43
03/12 07:22
03/12 07:57
03/20 09:48
09/07 09:38
09/07 09:38
09/07 09:39
09/07 09:39
09/07 09:39
04/26 09:49
04/23 08:47
04/23 08:57
04/23 09:14
04/23 09:22
48小时点击排行
财经 · 房产
娱乐 · 时尚
汽车 · 旅游
科技 · 健康Android百度地图定位后获取周边位置的实现代码
作者:Hankkin
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了Android百度地图定位后获取周边位置的实现代码,准确获取周边地理位置,感兴趣的小伙伴们可以参考一下
本文实例讲解Android百度地图定位后获取周边位置的实现代码,分享给大家供大家参考,具体内容如下
具体代码:
1.布局文件
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"&
&RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/height_top_bar"
android:background="@color/common_top_bar_dark"
android:gravity="center_vertical"&
android:id="@+id/btn_location_back"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:drawableLeft="@drawable/back"
android:text="@string/top_back"
style="@style/btn_title_bar"
android:layout_alignParentLeft="true"
android:onClick="back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="@string/location_message"
style="@style/txt_titlebar_message"/&
android:id="@+id/btn_location_ok"
android:layout_width="52dp"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:background="@drawable/common_tab_bg"
android:text="@string/txt_queding"
style="@style/btn_title_bar"/&
&/RelativeLayout&
&com.baidu.mapapi.map.MapView
android:layout_weight="2"
android:id="@+id/mapview_location"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:clickable="true" /&
android:layout_weight="3"
android:id="@+id/lv_location_nearby"
android:layout_width="match_parent"
android:layout_height="match_parent"/&
&/LinearLayout&
布局文件就是上面是一个百度地图的mapview,下面是一个显示周边位置的ListView,很简单。
1、自动定位
我们先看一下根据自己的地理位置实现定位
1.首先初始化要用到的组件
* 初始化组件
private void initView() {
btnLocationBack = (Button) findViewById(R.id.btn_location_back);
btnLocationBack.setOnClickListener(this);
btnLocationOk = (Button) findViewById(R.id.btn_location_ok);
btnLocationOk.setOnClickListener(this);
mapViewLocation = (MapView) findViewById(R.id.mapview_location);
lvLocNear = (ListView) findViewById(R.id.lv_location_nearby);
nearList = new ArrayList&PoiInfo&();
adapter = new LocNearAddressAdapter(context, nearList, isSelected);
lvLocNear.setAdapter(adapter);
2.初始化LocationClient类,该类需要在主线程中声明
public LocationClient mLocationClient =
public BDLocationListener myListener = new MyLocationListener();
public void onCreate() {
mLocationClient = new LocationClient(getApplicationContext());
//声明LocationClient类
mLocationClient.registerLocationListener( myListener );
//注册监听函数
3.配置定位SDK参数
设置定位参数包括:定位模式(高精度定位模式,低功耗定位模式和仅用设备定位模式),返回坐标类型,是否打开GPS,是否返回地址信息、位置语义化信息、POI信息等等。
LocationClientOption类,该类用来设置定位SDK的定位方式
private void initLocation(){
LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy
);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
int span=1000;
option.setScanSpan(span);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
option.setOpenGps(true);//可选,默认false,设置是否使用gps
option.setLocationNotify(true);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
option.setIgnoreKillProcess(false);//可选,默认false,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认杀死
option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤gps仿真结果,默认需要
mLocationClient.setLocOption(option);
4.实现BDLocationListener接口
* 监听函数,有新位置的时候,格式化成字符串,输出到屏幕中
public class MyLocationListenner implements BDLocationListener {
public void onReceiveLocation(BDLocation location) {
if (location == null) {
Log.d("map", "On location change received:" + location);
Log.d("map", "addr:" + location.getAddrStr());
if (progressDialog != null) {
progressDialog.dismiss();
if (lastLocation != null) {
if (lastLocation.getLatitude() == location.getLatitude() && lastLocation.getLongitude() == location.getLongitude()) {
Log.d("map", "same location, skip refresh");
// mMapView.refresh(); //need this refresh?
lastLocation =
mBaiduMap.clear();
mCurrentLantitude = lastLocation.getLatitude();
mCurrentLongitude = lastLocation.getLongitude();
Log.e("&&&&&&&", mCurrentLantitude + "," + mCurrentLongitude);
LatLng llA = new LatLng(lastLocation.getLatitude(), lastLocation.getLongitude());
CoordinateConverter converter = new CoordinateConverter();
converter.coord(llA);
converter.from(MON);
LatLng convertLatLng = converter.convert();
OverlayOptions ooA = new MarkerOptions().position(convertLatLng).icon(BitmapDescriptorFactory
.fromResource(R.drawable.icon_marka))
.zIndex(4).draggable(true);
mCurrentMarker = (Marker) mBaiduMap.addOverlay(ooA);
MapStatusUpdate u = MapStatusUpdateFactory.newLatLngZoom(convertLatLng, 16.0f);
mBaiduMap.animateMapStatus(u);
new Thread(new Runnable() {
public void run() {
searchNeayBy();
}).start();
public void onReceivePoi(BDLocation poiLocation) {
if (poiLocation == null) {
这里接受到的BDLocation中包含好多参数,相信总有一个对你有用的。
2、根据经纬度定位
这种方法不需要自动定位,就是根据经纬度来显示地图上的位置
* 显示经纬度的位置
private void showMap(double latitude, double longtitude, String address) {
sendButton.setVisibility(View.GONE);
LatLng llA = new LatLng(latitude, longtitude);
CoordinateConverter converter = new CoordinateConverter();
converter.coord(llA);
converter.from(MON);
LatLng convertLatLng = converter.convert();
OverlayOptions ooA = new MarkerOptions().position(convertLatLng).icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_marka))
.zIndex(4).draggable(true);
markerA = (Marker) (mBaiduMap.addOverlay(ooA));
u = MapStatusUpdateFactory.newLatLngZoom(convertLatLng, 16.0f);
mBaiduMap.animateMapStatus(u);
new Thread(new Runnable() {
public void run() {
searchNeayBy();
}).start();
3、获取周边地理位置
最后看一下怎么获取周边的地理位置,这里需要用到SDK中的一个类PoiNearbySearchOption,我们可以看一下类参考:
PoiNearbySearchOption keyword(java.lang.String key)
检索关键字
PoiNearbySearchOption location(LatLng location)
PoiNearbySearchOption pageCapacity(int pageCapacity)
设置每页容量,默认为每页10条
PoiNearbySearchOption pageNum(int pageNum)
PoiNearbySearchOption radius(int radius)
设置检索的半径范围
PoiNearbySearchOption sortType(PoiSortType sortType)
搜索结果排序规则,可选,默认
这里是它的一些方法,我们可以看到我们只需要设置一下关键字、周边位置半径、检索位置、排序规则、分页号、每页数量等。然后我们实现OnGetPoiSearchResultListener这个接口,获取周边地理位置结果。
* 搜索周边地理位置
private void searchNeayBy() {
PoiNearbySearchOption option = new PoiNearbySearchOption();
option.keyword("写字楼");
option.sortType(PoiSortType.distance_from_near_to_far);
option.location(new LatLng(mCurrentLantitude, mCurrentLongitude));
if (radius != 0) {
option.radius(radius);
option.radius(1000);
option.pageCapacity(20);
mPoiSearch.searchNearby(option);
* 接受周边地理位置结果
* @param poiResult
public void onGetPoiResult(PoiResult poiResult) {
if (poiResult != null) {
if (poiResult.getAllPoi()!=null&&poiResult.getAllPoi().size()&0){
nearList.addAll(poiResult.getAllPoi());
if (nearList != null && nearList.size() & 0) {
for (int i = 0; i & nearList.size(); i++) {
isSelected.put(i, false);
Message msg = new Message();
msg.what = 0;
handler.sendMessage(msg);
获取完数据之后更新适配器显示周边位置就OK了,最后再实现一个小小的功能,就是点击列表中的每个位置,显示位置的小图标根据位置的改变而改变
* 周边地理位置列表点击事件
lvLocNear.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView&?& adapterView, View view, int i, long l) {
adapter.setSelected(i);
adapter.notifyDataSetChanged();
PoiInfo ad = (PoiInfo) adapter.getItem(i);
u = MapStatusUpdateFactory.newLatLng(ad.location);
mBaiduMap.animateMapStatus(u);
if (!isLoc) {
mCurrentMarker.setPosition(ad.location);
markerA.setPosition(ad.location);
好了,很简单有用的一个小功能,会给用户带来很好的体验效果。
希望大家会喜欢这篇文章。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具现在,算是一个重要的时刻来谈谈&App地图&了。显然这是一款聪明的应用程序,可以让用户查询到周围人正在使用哪些应用程序,同时,如果用户对其中的应用程序感兴趣,还可以把它们挑出来,安装在自己的移动设备上。我不认为有足够多的人会去做这种应用程序探索,因此有必要介绍下这款聪明的应用。App地图通过定位,可以显示周围人正在使用哪些应用程序,这样,用户可以弄清楚本地最流行的应用程序是哪些,这些流行的应用程序可能是永远无法通过简单的在App Store里面搜索就能找到的。比如,如果一个应用开发者特别制作了一款详细的本地饭店信息应用程序,用户可能在App Store里永远都找不到,但是如果碰巧打开了APP地图,看到本地有其他用户正在使用这款程序,那么下载这个App的可能性就会增加。使用这些功能的前提是,用户必须要把手机中的定位服务打开,然后App地图会通过匿名方式发送用户正在使用的App信息(但绝不包含任何私人数据)。同时,App地图还使用了在IOS 4中引入的低耗GPS模式,这样可以延长电池的使用时间。现在,App地图新增了Facebook和Twitter帐号登录功能,可以使用户看到他们关注的人(必须要同时使用App地图)正在使用哪些应用程序。这是一种很酷的方式,不仅可以使用户之间使用最多的应用程序广为人知,而且还可以发现朋友之间最喜欢使用哪些应用程序。App地图做了不错的开发,同时运行起来也十分顺畅。就笔者而言,最喜欢是地图提供的最新水平视图方式,这样用户可以有一个更广阔的视角来查看显示出的应用程序。用户大到可以看世界范围内的App趋势,小到可以搜索邻居正在用哪些App。App地图这种聪明十足的功能,我猜想也许是偶然发现的产物,因此目前许多配套服务还没有提供。现在这些功能都是免费提供的,如果你有兴趣新增些有趣的App程序,不妨试试这个新功能。(VIA )
24小时报不停
余额宝个人持有额度上限调整为10万元,已有存量不受影响
微博怒封今日头条内容授权接口,称擅自抓取自媒体内容
路透社:今日头条至少融资20亿美元,估值超200亿美元
腾讯微信、新浪微博、百度贴吧涉嫌违反《网络安全法》被立案调查
“吃个汤”完成3000万元A轮融资,主打椰子为主的汤品
董明珠拟投150亿进驻洛阳造新能源车
江苏町町单车被曝“跑路” ,今年4月起已现征兆
微信”销号“功能上线,需满足4个条件
网易云音乐回应下架部分歌曲:正与腾讯音乐洽谈版权
前Uber CEO卡兰尼克遭起诉,被指控其欺诈股东
传特斯拉开发无人驾驶半挂卡车,将很快上路测试
乐视员工收到工资到账通知,乐视称贾跃亭在争分夺秒筹钱
阿里巴巴向自媒体提起诉讼 要求删稿道歉并索赔100万
约印再出大手笔:超1亿元投资安徽和天医管
70万台:马斯克给Model 3定了个不太靠谱的目标
凤凰新媒体贷款给一点资讯 现延长还款期限
江苏町町单车“跑路”:大量押金未退 消协建议报警
马化腾谈创业:生存是第一要素 一到周末压力就很大
汇丰:微博市值仍具吸引力 目标价上调至97美元
富士康100亿美元投资补贴悬了 议员担忧投资回报
百姓网1880万元投资两家婚宴公司团宴网、桑多利亚
BOSS直聘道歉:将承担法律责任 已采取三个举措改进
多地摩拜单车现故障无法解锁 官方回应称已修复签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!签到日记2013-06已连续签到:{constant}天,累计签到:{days}天
查看: 2856|回复: 0
神行者定位什么对QQ,微信附近的人没有用?还是我现在的位置,允许模拟也打开了,只有地图软件上的位置
-3132/0主题帖子积分
, 积分 -3132, 距离下一级还需 3132 积分
神行者定位什么对QQ,微信附近的人没有用?还是我现在的位置,允许模拟也打开了,只有地图软件上的位置
神行者定位什么对QQ,微信附近的人没有用?还是我现在的位置,允许模拟也打开了,只有地图软件上的位置变了
应用推荐 /4
直播:电视家直播就是高清!
点播:爱奇艺优酷搜狐乐视!
美女:性感清纯衣服就是少!
智能:遥控电视瞬间变电脑!
全新改版,更多赛事看不停
空间清理功能,一键清理垃圾
专属频道聚合页,查找更方便
丰富正版内容、高清流畅体验
优酷TV版最新版,下载即可观看
海量高清免费电影、电视剧片源,
拥有业界最丰富的节目资源,
舒适休闲的视频观看体验。
画面清晰 播放流畅 界面友好;
最新电影、3D大片、电视剧;
最全独家动漫、1080P高清;
海量综艺娱乐内容,免费观看。涓婁紶鍙戝竷
禄 鐧惧害鍦板浘API 涔

我要回帖

更多关于 海绵城市的目标 的文章

 

随机推荐