Ⅰ android有地圖可以設置為英文嗎
有的。
如果有條件的話,可以使用 Google Maps 地圖,是由 Google 公司提供的電子地圖服務。
若下載以後,在系統設置-語言設置為 English 英文,再打開 Google Maps 即可體驗英文版本的中國地圖。不過缺點是 Google Maps 的信息點功能不完善,可能部分信息會有錯誤。
Ⅱ android 開發地圖有哪些
網路地圖:在開發中也是用的最多的。地圖更新比較快,功能齊全,使用也挺簡單。還有demo,文檔也很豐富。
高德地圖:功能也很全,感覺不一樣的地方就是地圖載入很快,UI更加清新。導航很強大。而且高德API的論壇挺專業的。
Google地圖:ui很簡約。功能那當然不用說了。但是你懂得,在我朝支持有的時候無法響應。所以只能放棄。
最後騰訊地圖、搜狗地圖、老虎地圖等等就不多說了
Ⅲ android mapbox地圖怎麼用
使用mapbox,先在build.gradle中添加:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'
compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:0.7.4@aar'){
transitive=true
}
}12345671234567
在AndroidManifest.xml中添加許可權
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />123456123456
xml文件如下
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:mapbox="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<com.mapbox.mapboxsdk.views.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
mapbox:mapid="Your MapBox mapid"
mapbox:accessToken="Your Mapbox Access Token"/>
</RelativeLayout>
Ⅳ android 百度地圖為什麼有時候沒有地圖
相信很多人在開發網路地圖的時候會出現網路地圖有時候會載入不出來,只顯示網格圖。 這個問題究其原因就是申請網路key的時候填寫的SHA1也就是指紋證書有問題。估計很多開發者都是照著網路開放平台上介紹的流程去申請的。
當然,照著網路開放平台上去申請是沒錯的。但是上面介紹的申請得到的指紋證書只是本地開發環境存在的默認簽名文件debug.keystore的指紋證書。流程如下:
第一步:打開命令窗口,輸入cd .android。(這一步說明開發環境默認的簽名證書debug.keystore存放在C盤.android目錄中)
第二步:進入.android目錄後,接著輸入keytool -list -v -keystore debug.keystore,這里的debug.keystore就是開發環境下默認的簽名文件了。
值得注意的是:我們在開發一個apk發布在應用商店時,需要我們自己的生成的簽名文件,這個簽名文件和開發環境默認的簽名文件肯定是不同的,至少指紋證書SHA1就不同。所以,當我們通過我們自己生成的簽名文件導出簽名的apk時,網路地圖的key應該是我們自己的簽名文件中的指紋證書,如果還是用的是debug.keystore的SHA1申請的key,網路地圖自然就會有問題。比如,我們導出apk的簽名文件名字為myapp.keystore;那麼可以通過在命令窗口中輸入keytool -list -v -keystore myapp.keystore得到SHA1,然後通過這個SHA1去申請網路key,這樣,你導出的簽名apk的網路地圖功能就不會只顯示方格圖載入不出來地圖的問題了。
總之:如果你用到網路地圖功能的apk,僅僅是通過本地環境運行的,你完全可以按照網路開放平台上介紹的流程去獲取SHA1。但是,如果你開發的apk是需要自己生成的簽名文件(簽名證書)導出,放到應用商店去給別人下載的。那麼,你申請網路地圖key的SHA1值,就應該是來自你生成的簽名文件中的SHA1值,SHA1查看方式keytool -list -v -keystore 簽名文件。(注意要進入文件所在路徑再輸入命令)。
Ⅳ android 百度地圖知道經緯度怎麼獲取地址
1、設置AndroidManfest.xml許可權
View Code
<!-- 訪問網路的許可權 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 訪問精確位置的許可權 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- 訪問網路狀態的許可權 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 訪問WIFI網路狀態的許可權 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 改變WIFI網路狀態的許可權 -->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<!-- 讀寫存儲卡的許可權 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 讀取電話狀態的許可權 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
2、配置jar包
3、初始化設置BMapManager
View Code
mapManager = new BMapManager(this);
mapManager.init("",
new MyMKGeneralListener());
// 設置通知間隔:iMaxSecond - 最大通知間隔,單位:秒;iMinSecond - 最小通知間隔,單位:秒
mapManager.getLocationManager().setNotifyInternal(20, 5);
4、獲取手機經緯度,並顯示地址信息
View Code
mapManager.getLocationManager().requestLocationUpdates(
new MyLocationListener());
mapManager.start();
在LocationListener中獲取經緯度
View Code
class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location arg0) {
int jin = (int) (arg0.getLatitude()*1000000);
int wei = (int) (arg0.getLongitude()*1000000);
tv1.setText("經度:" + jin + ",緯度:" + wei);
MKSearch search = new MKSearch();
search.init(mapManager, new MyMKSearchListener());
search.reverseGeocode(new GeoPoint(jin, wei));
}
}
在MKSearch介面中進行地址轉化
Ⅵ android百度地圖怎麼開發
一、基本概念:
(一)、網路地圖:
網路地圖 Android SDK是一套基於Android 2.1及以上版本設備的應用程序介面。 您可以使用該套 SDK開發適用於Android系統移動設備的地圖應用,通過調用地圖SDK介面,您可以輕松訪問網路地圖服務和數據, 構建功能豐富、交互性強的地圖類應用程序。
網路地圖Android SDK提供的所有服務是免費的,介面使用無次數限制。您需申請密鑰(key)後, 才可使用網路地圖Android SDK。
(二)、LBS:(Location based Service)基於位置的服務
基於位置的服務,它是通過電信移動運營商的無線電通訊網路(如GSM網、CDMA網)或外部定位方式(如GPS)獲取移動終端用戶的位置信息(地理坐標,或大地坐標),在地理信息系統(外語縮寫:GIS、外語全稱:Geographic Information System)平台的支持下,為用戶提供相應服務的一種增值業務。
二、網路地圖使用步驟:【參照(http://developer..com/map/sdk-android.htm)】
(一)、HelloBaiMap:
1、第一步:申請網路地圖密鑰(API_KEY):
http://developer..com/map/sdk-android.htm
2、第二步:在工程里新建libs文件夾,將開發包里的mapapi_vX_X_X.jar拷貝到libs根目錄下,將libBaiMapSDK_vX_X_X.so拷貝到libs\armeabi目錄下(官網demo里已有這兩個文件,如果要集成到自己的工程里,就需要自己添加),拷貝完成後的工程目錄如下圖所示;
註:liblocSDK3.so和locSDK_3.1.jar為網路定位SDK所使用資源,開發者可根據實際需求自行添加。
3、第三步:在AndroidManifest中添加開發密鑰、所需許可權等信息;
<application
<meta-data
android:name="com..lbsapi.API_KEY"
android:value="P3G69b5s87YG5M31f8A7oyLW"/>
</application>
<uses-permissionandroid:name="android.permission.GET_ACCOUNTS"/>
<uses-permissionandroid:name="android.permission.USE_CREDENTIALS"/>
<uses-permissionandroid:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permissionandroid:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permissionandroid:name="android.permission.INTERNET"/>
<uses-permissionandroid:name="com.android.launcher.permission.READ_SETTINGS"/>
<uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permissionandroid:name="android.permission.BROADCAST_STICKY"/>
<uses-permissionandroid:name="android.permission.WRITE_SETTINGS"/>
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
4、第四步:在布局文件中添加地圖控制項:
<com..mapapi.map.MapView
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true"/>
5、第五步:在應用程序創建時初始化 SDK引用的Context 全局變數:
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 在使用SDK各組件之前初始化context信息,傳入ApplicationContext
// 注意該方法要再setContentView方法之前實現
SDKInitializer.initialize(getApplicationContext());
// 裝載布局文件
setContentView(R.layout.activity_main);
}
6、第六步:創建地圖Activity,管理地圖生命周期:
publicclass MainActivity extends Activity {
private MapView mapView;
@Override
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 在使用SDK各組件之前初始化context信息,傳入ApplicationContext
// 注意該方法要再setContentView方法之前實現
SDKInitializer.initialize(getApplicationContext());
// 裝載布局文件
setContentView(R.layout.activity_main);
mapView = (MapView) findViewById(R.id.mapView);
}
@Override
protectedvoid onResume() {
super.onResume();
mapView.onResume();
}
@Override
protectedvoid onPause() {
super.onPause();
mapView.onPause();
}
@Override
protectedvoid onDestroy() {
super.onDestroy();
mapView.onDestroy();
}
}
(二)、基礎地圖:
1、實現基礎地圖的操作步驟:
布局文件中使用MapView;
初始化SDK,並檢查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
初始化BaiMap對象;
對MapView進行findViewById();
MapView對象調用getMap(),返回BaiMap;
設置BaiMap;
setMapType();
setTrafficEnabled();
(三)、POI搜索:
1、實現POI搜索的操作步驟:
布局文件中使用fragment,用來實現對BaiMap的載入;
class="com..mapapi.map.SupportMapFragment"
當前Activity繼承於FragementActivity;
初始化SDK,並檢查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
備註:該兩句話必須放在setContentView()之前。
初始化BaiMap對象;
Map = ((SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.fragment_poi_map)).getBaiMap();
初始化PoiSearch對象;
PoiSearch.newInstance();
給PoiSearch對象設置監聽器;
(),重寫onGetPoiResult()方法;
自定義PoiOverlay類,實現對每個標記的單擊監聽;
通過onPoiClick()方法,獲取每個PoiInfo中的信息。如果這個對象中包含有明細,可以打開一個新頁面來展示興趣點的詳細介紹。
在AndroidManifest.xml文件中配置PlaceCaterActivity頁面;
該頁面是Bai提供的POI的明細介紹頁面。
PoiSearch對象調用searchInBound()、searchInCity() 、 searchNearby()方法實現興趣點查詢。
【總結:】核心步驟:
實例化BaiMap,PoiSearch對象;
PoiSearch對象設置OnGetPoiSearchResultListener()監聽;
PoiSearch對象調用searchInCity()方法觸發監聽。
(四)、線路規劃:
1、實現路線規劃的操作步驟:
布局文件中使用MapView,用來實現對BaiMap的載入;
初始化SDK,並檢查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
初始化MapView;
調用findViewById()
初始化BaiMap對象;
Map = MapView對象.getMap();
初始化RoutePlanSearch對象;
RoutePlanSearch.newInstance();
給RoutePlanSearch對象設置監聽器;
(),重寫onGetWalkingRouteResult()、onGetTransitRouteResult()、onGetDrivingRouteResult()方法;
自定義三種RouteOverlay類(WalkingRouteOverlay、TransitRouteOverlay、DrivingRouteOvelray);
調用RoutePlanSearch對象的三種方法(drivingSearch()、transitSearch()、walkingSearch())實現路線規劃。
【總結:】核心步驟:
實例化BaiMap,RoutePlanSearch對象;
RoutePlanSearch對象設置OnGetRoutePlanResultListener監聽;
RoutePlanSearch對象調用drivingSearch()、transitSearch()、walkingSearch()方法觸發監聽。
(五)、公交查詢:
1、實現公交查詢的操作步驟:
布局文件中使用fragment,用來實現對BaiMap的載入;
class="com..mapapi.map.SupportMapFragment"
初始化SDK,並檢查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
當前Activity繼承於FragementActivity;
初始化BaiMap對象;
Map = ((SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.fragment_poi_map)).getBaiMap();
初始化PoiSearch對象/初始化BusLineSearch對象;
PoiSearch.newInstance();
BusLineSearch.newInstance();
給BusLineSearch對象設置監聽器;
(),重寫onGetBusLineResult()方法;
給PoiSearch對象設置監聽器;
(),重寫onGetPoiResult()方法;
在這個監聽器中調用BusLineSearch對象的searchBusLine()方法;
給按鈕增加單擊監聽事件,實現PoiSearch對象的searchInBound()、searchInCity() 、 searchNearby()方法實現興趣點查詢。
【總結:】核心步驟:
實例化BaiMap、PoiSearch對象及BusLineSearch對象;
PoiSearch對象設置OnGetPoiSearchResultListener()監聽;BusLineSearch對象設置監聽;
在PoiSearch對象的監聽回調方法onGetPoiResult()中調用busLineSearch對象的searchBusLine()方法;
PoiSearch對象調用searchInCity()方法觸發整個監聽。
【備註:】
整體思路:先調用POI查詢,在POI查詢中的監聽器中執行BusLine查詢。
Ⅶ android系統能用哪些導航地圖
凱立德,靈圖,各種地圖軟體現在都有Android版本,並且破解完全~
另外Android自帶的google map非常的好用的!除了費點流量~如果排除流量問題 第三方的地圖沒有比得上Android自帶地圖的~還有不知道你買的啥型號~如果是Android2.1可以安裝Androdi版本的google earth~~
Ⅷ 安卓手機怎麼安裝谷歌地圖
1、打開手機界面,找到「應用市場」圖標。
Ⅸ 如何使用android百度地圖離線地圖
1.首先把離線地圖放在android工程下的assets裡面。
注意:建議離線地圖下載通過網路地圖APIDEMO去下載,因為到官網上下載的離線地圖文件格式不一樣,APIDEMO的格式是.dat,而官網上的格式是.dat_svc有可能載入不了地圖.
2.把離線地圖從assets下拷貝到sd卡下
public static void (Context context) {
try {
String filepath = Environment.getExternalStorageDirectory() + "/"
+ "BaiMapSDK" + "/" + "vmp" + "/" + "h" + "/"
+ "xxxxx.dat";
String path = Environment.getExternalStorageDirectory() + "/"
+ "BaiMapSDK" + "/" + "vmp" + "/" + "h" + "/";
File file = new File(path);
if (!file.exists()) {
file.mkdir();
}
if (!(new File(filepath)).exists()) {
new File(filepath).createNewFile();
InputStream is = context.getAssets().open(
"xxxx.dat");
FileOutputStream fos = new FileOutputStream(filepath);
byte[] buffer = new byte[8192];
int count = 0;
while ((count = is.read(buffer)) > 0) {
fos.write(buffer, 0, count);
}
fos.close();
is.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
3.初始化離線地圖
private MKOfflineMap mOffline = null;
MapController mMapController;
mMapController = mMapView.getController();
mOffline = new MKOfflineMap();
mOffline.init(mMapController, new MKOfflineMapListener() {
@Override
public void onGetOfflineMapState(int type, int state) {
// TODO Auto-generated method stub
switch (type) {
case MKOfflineMap.TYPE_DOWNLOAD_UPDATE: {
}
break;
case MKOfflineMap.TYPE_NEW_OFFLINE:
break;
case MKOfflineMap.TYPE_VER_UPDATE:
break;
}
}
});