百度地图
来源:互联网 发布:速卖通辅助软件 编辑:程序博客网 时间:2024/05/04 04:56
//MyApp
import com.baidu.mapapi.SDKInitializer;
import android.app.Application;
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
SDKInitializer.initialize(getApplicationContext());
}
}
//setContentView(R.layout.activity_main);上加
SDKInitializer.initialize(getApplicationContext());
//以下是绘制一张简单的地图
public class Myfragment1 extends Fragment{
private MapView mMapView;private BaiduMap bm;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
View view=inflater.inflate(R.layout.frag3, null);
mMapView = (MapView)view.findViewById(R.id.mapView);
bm = mMapView.getMap();
bm.setMapType(BaiduMap.MAP_TYPE_NORMAL);
return view;
}
@Override
public void onResume() {
mMapView.onResume();
super.onResume();
}
@Override
public void onPause() {
mMapView.onPause();
super.onPause();
}
@Override
public void onDestroy() {
mMapView.onDestroy();
super.onDestroy();
}
//以下是绘制带定位的地图
package com.bd.fragment;
import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.baidu.mapapi.map.BaiduMap;
import com.baidu.mapapi.map.MapStatusUpdate;
import com.baidu.mapapi.map.MapStatusUpdateFactory;
import com.baidu.mapapi.map.MapView;
import com.baidu.mapapi.map.MyLocationData;
import com.baidu.mapapi.model.LatLng;
import com.example.daohang.R;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class Myfragment2 extends Fragment{
private MapView mapView;
private BaiduMap map;
private LocationClient loc;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
View v=inflater.inflate(R.layout.fragment2, null);
mapView = (MapView) v.findViewById(R.id.map);
map = mapView.getMap();
map.setMapType(BaiduMap.MAP_TYPE_NORMAL);
//开启定位图层
map.setMyLocationEnabled(true);
//开启定位方法
getLoc();
return v;
}
private void getLoc() {
//获得定位对象
loc = new LocationClient(getActivity());
//设置定位监听
loc.registerLocationListener(new MyLocListener());
//设置定位参数
LocationClientOption option = new LocationClientOption();
option.setOpenGps(true);
option.setCoorType("bd0911");
option.setScanSpan(1000);
loc.setLocOption(option);
loc.start();
}
private class MyLocListener implements BDLocationListener{
@Override
public void onReceiveLocation(BDLocation arg0) {
if(arg0 == null || map == null){
return;
}
//设置定位数据
MyLocationData data = new MyLocationData.Builder()
.accuracy(1000)
.direction(100)
.latitude(arg0.getLatitude())
.longitude(arg0.getLongitude())
.build();
//加载数据
map.setMyLocationData(data);
//创建点坐标
LatLng ll = new LatLng(arg0.getLatitude(), arg0.getLongitude());
//更新地图状态
MapStatusUpdate update = MapStatusUpdateFactory.newLatLng(ll);
map.setMapStatus(update);
}
}
@Override
public void onResume() {
mapView.onResume();
super.onResume();
}
@Override
public void onPause() {
mapView.onPause();
super.onPause();
}
@Override
public void onDestroy() {
mapView.onDestroy();
super.onDestroy();
}
}
//布局文件
<com.baidu.mapapi.map.MapView
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true"
/>
//权限
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.map_dingweis"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- 这个权限用于进行网络定位 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" >
</uses-permission>
<!-- 这个权限用于访问GPS定位 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" >
</uses-permission>
<!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" >
</uses-permission>
<!-- 获取运营商信息,用于支持提供运营商信息相关的接口 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >
</uses-permission>
<!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位 -->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" >
</uses-permission>
<!-- 用于读取手机当前的状态 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" >
</uses-permission>
<!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" >
</uses-permission>
<!-- 访问网络,网络定位需要上网 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- SD卡读取权限,用户写入离线定位数据 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="DD279b2a90afdf0ae7a3796787a0742e" />
<activity
android:name="com.example.map_dingweis.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" >
</service>
</application>
</manifest>
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- 百度地图
- Tomcat的安装与第一个servlet程序的部署
- sicily 1401. Children of the Candy Corn
- Eclipse 各种小图标的含义
- struts中textfield标签从action中取值
- [Django后台管理系统]激活Django自带的管理界面
- 百度地图
- Centos6.5 搭建 SVN 服务器 及 钩子同步更新网站代码
- Windows 远程连接Hbase常见错误
- sicily 1438. Shopaholic
- XYLX 10.12 数列
- 排序
- UML九种图与软件开发
- IC设计笔试
- poj3461Oulipo