當前位置:首頁 » 安卓系統 » android調用api

android調用api

發布時間: 2022-08-09 07:12:22

A. Android 應用,app inventor怎麼調用百度地圖api

本篇通過一個簡單的示例一步步介紹如何在Android應用中使用網路地圖api。

1)下載網路地圖移動版API(Android)開發包

要在Android應用中使用網路地圖API,就需要在工程中引用網路地圖API開發包,這個開發包包含兩個文件:mapapi.jar和libBMapApiEngine.so。下載地址:http://dev..com/wiki/static/imap/files/BaiMapApi_Lib_Android_1.0.zip

2)申請API Key

和使用Google map api一樣,在使用網路地圖API之前也需要獲取相應的API Key。網路地圖API Key與你的網路賬戶相關聯,因此您必須先有網路帳戶,才能獲得API Key;並且,該Key與您引用API的程序名稱有關。

網路API Key的申請要比Google的簡單多了,其實只要你有網路帳號,應該不超過30秒就能完成API Key的申請。申請地址:http://dev..com/wiki/static/imap/key/

3)創建一個Android工程

這里需要強調一點:網路地圖移動版api支持Android 1.5及以上系統,因此我們創建的工程應基於Android SDK 1.5及以上。

工程創建完成後,將mapapi.jar和libBMapApiEngine.so分別拷貝到工程的根目錄及libs/armeabi目錄下,並在工程屬性->java Build Path->Libraries中選擇「Add JARs」,選定mapapi.jar,這樣就可以在應用中使用網路地圖API了。

4)在布局文件中添加地圖控制項(res/layout/main.xml)

[xhtml] view plain

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

<com..mapapi.MapView android:id="@+id/map_View"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:clickable="true"

/>

</LinearLayout>

5)創建Activity繼承com..mapapi.MapActivity

[java] view plain

package com.liufeng.map;

import android.graphics.drawable.Drawable;

import android.os.Bundle;

import com..mapapi.BMapManager;

import com..mapapi.GeoPoint;

import com..mapapi.MapActivity;

import com..mapapi.MapController;

import com..mapapi.MapView;

public class MainActivity extends MapActivity {

private BMapManager mapManager;

private MapView mapView;

private MapController mapController;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

// 初始化MapActivity

mapManager = new BMapManager(getApplication());

// init方法的第一個參數需填入申請的API Key

mapManager.init("", null);

super.initMapActivity(mapManager);

mapView = (MapView) findViewById(R.id.map_View);

// 設置地圖模式為交通地圖

mapView.setTraffic(true);

// 設置啟用內置的縮放控制項

mapView.setBuiltInZoomControls(true);

// 用給定的經緯度構造一個GeoPoint(緯度,經度)

GeoPoint point = new GeoPoint((int) (47.118440 * 1E6), (int) (87.493147 * 1E6));

// 創建標記maker

Drawable marker = this.getResources().getDrawable(R.drawable.iconmarka);

// 為maker定義位置和邊界

marker.setBounds(0, 0, marker.getIntrinsicWidth(), marker.getIntrinsicHeight());

// 取得地圖控制器對象,用於控制MapView

mapController = mapView.getController();

// 設置地圖的中心

mapController.setCenter(point);

// 設置地圖默認的縮放級別

mapController.setZoom(12);

}

@Override

protected boolean isRouteDisplayed() {

return false;

}

@Override

protected void onDestroy() {

if (mapManager != null) {

mapManager.destroy();

mapManager = null;

}

super.onDestroy();

}

@Override

protected void onPause() {

if (mapManager != null) {

mapManager.stop();

}

super.onPause();

}

@Override

protected void onResume() {

if (mapManager != null) {

mapManager.start();

}

super.onResume();

}

}

6)在AndroidManifest.xml中配置

[xhtml] view plain

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.liufeng.map"

android:versionCode="1"

android:versionName="1.0">

<application android:icon="@drawable/icon" android:label="@string/app_name">

<activity android:name=".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>

</application>

<uses-sdk android:minSdkVersion="4" />

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

</manifest>

說明:上面的應用只是簡單的展示了網路地圖(交通地圖),並將一個指定的點(根據經緯度確定)展示在手機屏幕的中心。當然,實際項目中涉及的map應用不會這么簡單,網路地圖API為我們提供了豐富的功能介面,有待我們一起去研究學習。

B. android studio可以調用百度API實現地鐵線路

嗯嗯,是可以的,當然可以,肯定是可以的,絕對是可以的。你媽媽向我做出了保證,並且還是用她的性命作擔保的,這樣的事情,你應該充分的相信才對呀。

C. 如何在android程序中使用百度api介面

網路地圖、網路語音、網路導航、網路定位等等。
以下為使用網路天氣提供的api,具有天氣查詢,城市設置,簡訊分享天氣等基本功能,界面清爽,不過現在因為網路key的原因失效了,不能更新天氣了。.java中的AK替換成自己申請的網路API KEY,申請地址http://lbsyun..com/apiconsole/key。代碼有比較詳細的注釋。代碼量也不大,有興趣的朋友可以自己排查一下。項目編碼UTF-8 默認編譯版本4.2.2
Android應用源碼使用網路天氣的愛天氣項目源碼 Android應用源碼使用網路天氣的愛天氣項目源碼 Android應用源碼使用網路天氣的愛天氣項目源碼

文件夾 PATH 列表
卷序列號為 767E7528 000A:8F50
E:.
│ 070705 (1).png
│ 070705 (2).png
│ 070705 (3).png
│ javaapk.com文件列表生成工具.bat
│ 更多源碼打包下載.url
│ 本源碼使用幫助.txt
│ 目錄列表.txt

└─iWeather
│ .classpath
│ .project
│ AndroidManifest.xml
│ ic_launcher-web.png
│ proguard-project.txt
│ project.properties

├─.settings
│ org.eclipse.core.resources.prefs
│ org.eclipse.jdt.core.prefs

├─assets
│ └─fonts
│ fangzhenglantingxianhe_GBK.ttf
│ HelveticaNeueLTPro-Lt.ttf


├─gen
│ └─e
│ └─swust
│ └─iweather
│ BuildConfig.java
│ R.java

├─libs
│ │ locSDK_4.0.jar
│ │ wae-for-debug.jar
│ │
│ └─armeabi
│ liblocSDK4.so

├─res
│ ├─drawable
│ │ city_pressed_effect.xml
│ │ title_bar_image_pressed_effect.xml
│ │
│ ├─drawable-hdpi
│ │ bg_cloudy_day.jpg
│ │ bg_cloudy_night.jpg
│ │ bg_fine_day.jpg
│ │ bg_fine_night.jpg
│ │ bg_fog.jpg
│ │ bg_haze.jpg
│ │ bg_na.jpg
│ │ bg_overcast.jpg
│ │ bg_rain.jpg
│ │ bg_sand_storm.jpg
│ │ bg_snow.jpg
│ │ bg_thunder_storm.jpg
│ │ city_bg_pressed.9.png
│ │ drag_view_handle.png
│ │ icon.png
│ │ icon_search.png
│ │ ic_launcher.png
│ │ locate_indicator.png
│ │ search_input_bg.9.png
│ │ select_city_bg_cover.9.png
│ │ select_city_bg_default.jpg
│ │ temperature_small_img.png
│ │ title_bar_about.png
│ │ title_bar_back.png
│ │ title_bar_bg.9.png
│ │ title_bar_refresh.png
│ │ title_bar_shared.png
│ │ today_weather_extra_arrow.png
│ │ trend_bg_line.png
│ │ weather_forcast_bg.9.png
│ │ weather_forecast_icon.png
│ │ weather_icon_cloudy.png
│ │ weather_icon_fine.png
│ │ weather_icon_fog.png
│ │ weather_icon_hail.png
│ │ weather_icon_overcast.png
│ │ weather_icon_rain_big.png
│ │ weather_icon_rain_middle.png
│ │ weather_icon_rain_small.png
│ │ weather_icon_rain_snow.png
│ │ weather_icon_rain_storm.png
│ │ weather_icon_sand_storm.png
│ │ weather_icon_sleet.png
│ │ weather_icon_snow_big.png
│ │ weather_icon_snow_middle.png
│ │ weather_icon_snow_small.png
│ │ weather_icon_snow_storm.png
│ │ weather_icon_thunder_storm.png
│ │ weather_img_cloudy_day.png
│ │ weather_img_cloudy_night.png
│ │ weather_img_fine_day.png
│ │ weather_img_fine_night.png
│ │ weather_img_fog.png
│ │ weather_img_hail.png
│ │ weather_img_overcast.png
│ │ weather_img_rain_big.png
│ │ weather_img_rain_middle.png
│ │ weather_img_rain_small.png
│ │ weather_img_rain_snow.png
│ │ weather_img_rain_storm.png
│ │ weather_img_sand_storm.png
│ │ weather_img_sleet.png
│ │ weather_img_snow_big.png
│ │ weather_img_snow_middle.png
│ │ weather_img_snow_small.png
│ │ weather_img_snow_storm.png
│ │ weather_img_thunder_storm.png
│ │ welcome_bg.jpg
│ │ welcome_icon.png
│ │ wind_samll_img.png
│ │
│ ├─drawable-ldpi
│ │ icon.png
│ │
│ ├─drawable-mdpi
│ │ icon.png
│ │ ic_launcher.png
│ │
│ ├─drawable-xhdpi
│ │ icon.png
│ │ ic_launcher.png
│ │
│ ├─drawable-xxhdpi
│ │ icon.png
│ │
│ ├─layout
│ │ city_item.xml
│ │ select_city.xml
│ │ weather.xml
│ │ weather_dialog.xml
│ │ weather_forecast_item.xml
│ │ welcome.xml
│ │
│ └─values
│ colors.xml
│ dimens.xml
│ strings.xml
│ styles.xml

└─src
└─e
└─swust
└─iweather
│ SelectCity.java
│ Weather.java
│ Welcome.java

├─util
│ Utils.java

└─web
SinaWeather.java
UpdateWeather.java

D. 如何調用Android隱藏API

在windows7操作系統Eclipse開發軟體中按照如下步驟調用Android隱藏API。

1、首先把classes.jar文件拷貝到Android工程中的lib目錄下

2、接著在Eclipse中把classes.jar文件加入到build
path中,如下圖:

E. Unity在Android和iOS中如何調用Native API

首先unity支持在C#中調用C++ dll,這樣可以在Android和iOS中提供C++介面在unity中調用。利用這一特性,可以擴展unity的功能。例如集成和調用第三方庫。同時為了滿足對unity介面的一致性,可以考慮在android和iOS上提供相同的介面供C#調用。這里列舉以下兩個例子。本例對應的介面聲明如下:public class CallNativeAPI { #if UNITY_EDITOR public static void OpenWebView(string url) { return; } public static void SumNum(int v1, int v2) { TestUnityEditor.SumNum(v1, v2); return; } #elif UNITY_IPHONE [DllImport ("__Internal")] public static extern void OpenWebView(string url); [DllImport ("__Internal")] public static extern void SumNum(int v1, int v2); #elif UNITY_ANDROID [DllImport ("libtestunity", CallingConvention = CallingConvention.Cdecl)] public static extern void OpenWebView(string url); [DllImport ("libtestunity", CallingConvention = CallingConvention.Cdecl)] public static extern void SumNum(int v1, int v2); #endif public static void SumNumForResult(int v1, int v2, CallbackManager.ResultCallback callback) { TestCallbackManager.sumNumCallback.SetResultCallBack(new CallbackManager.ResultCallback(callback)); SumNum(v1, v2); return; } } namespace CallbackManager { public delegate void ResultCallback(int result); public class SumNumManager{ public SumNumManager() { } private ResultCallback resultCallback; public void SetResultCallBack(ResultCallback callback) { resultCallback = callback; } public void SendResult(int result) { resultCallback(result); } } } public class TestCallbackManager { public static CallbackManager.SumNumManager sumNumCallback = new CallbackManager.SumNumManager(); }

F. 如何使用Android調用百度地圖API

1、調用網路地圖API首先要申請一個秘鑰,進入http://lbsyun..com/用網路賬號登陸,進入頁面申請秘鑰(具體所填信息以網站為准)

網路地圖擁有龐大的地圖相關功能,詳細內容請參照官網(http://lbsyun..com/index.php?title=androidsdk ) 中的開發指南。

G. android 的API如何使用

看來你還連門都沒入啊,用的java語言,如何調用api跟java一樣的。

還有想使用控制項前,必須先找到他的id。
比如:AutoCompleteTextView autocomplete = (AutoCompleteTextView) findViewById(R.id.autocomplete);
想要使用就直接調用方法就可以了:
autocomplete.settext("aaa");

注意直接findViewById只能找本activity設置的布局文件中的控制項,如果想要找其他的需要先找到布局文件再去找控制項。

H. 比較低的android系統下調用API Level 16 的方法,要怎麼做才行

加入V4兼容包,AndroidManifest.xml里設置成:
<uses-sdk
android:minSdkVersion="4"
android:targetSdkVersion="16" />
project.properties這個文件配置成:target=android-16
這樣你開發的程序就可以兼容1.6——4.1版本的android手機了

I. android怎樣調用@hide和internal API

Android有兩種類型的API是不能經由SDK訪問的。 第一種是位於com.android.internal包中的API。我將稱之為internal API。第二種API類型是一系列被標記為@hide屬性的類和方法。從嚴格意義上來講,這不是一個單一的API,而是一組小的被隱藏的API,但我仍將其假設為一種API,並稱之為hidden API。 Hidden API 例子 你可以查看一下android的源碼,並能找到一些變數、函數和類等,都被@hide屬性標記了。 下面的例子就是在WifiManager(API 10源碼)中隱藏的變數。 另一個例子是在WifiManager(API 10源碼)中隱藏了setWifiApEnabled函數。 因此,只要你看到@hide屬性,那你看到的就是hidden API。 Internal和hidden API的區別 Hidden API之所以被隱藏,是想阻止開發者使用SDK中那些未完成或不穩定的部分(介面或架構)。舉個例子,Bluetooth API在API 5(Android 2.0)上才開放;在API 3 和4上都是用@hide屬性隱藏了。當這些API被驗證和清理後,Google的開發者會移除@hide屬性,並讓其在API 5官方化。很多地方在API 4 和5之間發生了變化。如果你的程序依賴某些隱藏的API,當其部署到新的平台上時,就有可能陷入困境。 對於internal API來說,從來都沒有計劃將其開放出來。它就是Android的「內部廚房」,對開發者來說,應該將其視作黑盒。凡事都會有變化的。如果你依賴某些internal API,也有可能在新的Android release上,這些internal API發生變化,從而令你失望。 總結一下區別: Hidden API = 進行中的工作; Internal API = 黑盒; Internal和hidden API的編譯時 vs. 運行時 當你使用Android SDK進行開發的時候,你引用了一個非常重要的jar文件——android.jar。它位於Android SDK平台的文件夾中(SDK_DIR/platforms/platform-X/android.jar,其中,X表示API等級)。這個android.jar移掉了com.android.internal包中所有的類,也移掉了所有標記有@hide的類,枚舉,欄位和方法。 但當你在設備上啟動應用程序時,它將載入framework.jar(簡單來說,它和android.jar等同),而其未移掉internal API和hidden API。(但它對開發者來說,並不能友好地訪問,因此,我將向大家展示不通過反射如何使用這些API)。 關於internal API,還有一件事需要說明。Eclipse的ADT插件增加了一個額外的規則,那就是禁止使用com.android.internal包中的任何東西。所以,即便是我們可以拿到最原始的android.jar(未刪減版),也沒有輕松的辦法通過Eclipse使用這些internal API。 你可以親自檢查一下。創建一個新的Android工程(或者使用已有的)。查看一下它引用的類庫(右擊project Properties –> Java Build Path –> Libraries)。 重要的總結:internal和hidden API在SDK中是按照一樣的方式處理的(都從android.jar中移除了),但internal API更慘的是,還被Eclipse的ADT插件顯式禁止了。 不通過反射使用internal和hidden API 這些文章的終極目標是讓開發者能夠不通過反射使用Internal和Hidden API。如果你完成了接下來部分中描述的步驟,你將能使用這些Internal和Hidden API,如同公開的API。你不再需要使用反射。 註:如果你正在使用這些非公開的API,你必須知道,你的程序有著極大的風險。基本上,無法保證在下一次的Android OS更新時,這些API不被破壞,也無法保證不同的運營商有著一致的行為。你自己決定吧。 接下來有三個場景: 1. Internal 和hidden API都可用(場景A) 2. 只Hidden API可用(場景B) 3. 只Internal API可用(場景C) 場景A是B、C的總和。場景B是最簡單的一個(不需要對Eclipse的ADT修改)。 場景A:閱讀Part1, 2, 3, 4, 5 場景B:閱讀Part1, 2, 3, 5 場景C:閱讀Part1, 2, 3, 4, 5 我解釋了為什麼我們不通過反射就會很難使用internal和hidden API。這是因為android.jar中就沒包含這些API,因此,沒人能夠在編譯時引用這些類。 這篇文章將描述如何還原最初的android.jar。這將允許我們像使用公開的API那樣使用internal和hidden API。 如何得到原版android.jar? 我們需要修改android.jar,這樣它才能包含所有的*.class文件(包括internal和hidden API類)。有兩種辦法: 1) Android是一個開源工程。我們可以下載源碼並搭建編譯環境,這樣它就不能移除那些internal和hidden的類了。這個辦法比較困難; 2) 每個模擬器或真機在運行時都會有一個等同android.jar的東西。我們可以從這里拿到jar文件,提取出原始的.class文件,並拷貝到Android SDK的android.jar中。 我將採用方案2。它易於開始,還不需要搭建Linux環境及編譯環境等。 從設備上獲取framework.jar 你可以使用命令行(adb pull)從模擬器或設備上下載文件,或者使用DDMS(藉助Eclipse或SDK中的應用)。 注意:模擬器通常在.dex文件中包含代碼,而真機一般在優化版的dex文件中包含代碼——odex文件。操作odex文件比較困難,這也是為什麼我選擇模擬器的原因。 與Android SDK中的android.jar等同的文件是framework.jar。這個文件位於設備的:/system/framework/framework.jar adb pull /system/framework/framework.jar 當framework.jar從設備上下下來之後,重命名為framework.zip並解壓到獨立的文件夾中,看起來是這個樣子的: classes.dex正是我們需要的。 創建framework-classes.zip 首先,我們需要把.dex文件轉換成.jar格式。你可以使用通用的工具dex2jar。只需要運行: dev2jar classes.dex 當轉換結束時,你應該得到了classes.dex.dex2jar.jar文件。重命名為framework-classes.zip。使用zip查看器,進入到framework-classes.zip/com/android/internal/: 恭喜你,你已經擁有了所有的.class文件,包括internal和hidden API(盡管截圖只確認了internal部分)。 創建original-android.jar Android SDK的android.jar位於ANDROID_SDK/platforms/android-X/android.jar(X表示API等級)。 拷貝android.jar成custom-android.jar。解壓至custom-android文件夾。將framework-classes.zip中所有的.class文件拷貝到custom-android文件夾中(你需要覆蓋所有已經存在的.class文件)。 然後,壓縮custom-android文件成original-android.zip。重命名為original-android.jar。 步驟總結 1. 選擇你的目標平台X 2. 創建目標平台X的模擬器 3. 啟動模擬器,下載/system/framework/framework.jar 4. 重命名framework.jar -> framework.zip 5. 從framework.zip中抽取classes.dex 6. 使用dex2jar工具,將其轉換成classes.jar 7. 重命名classes.jar -> framework-classes.zip 8. 拷貝android.jar –> custom-android.zip 9. 解壓custom-android.zip至custom-android文件夾 10. 將framework-classes.zip中所有文件拷貝至custom-android文件夾(覆蓋存在的文件) 11. 壓縮custom-android文件夾成original-android.zip 12. 重命名original-android.zip -> original-android.jar 打完收功。

熱點內容
怎麼用紙做豌豆解壓玩具 發布:2022-09-29 04:39:17 瀏覽:732
雲存儲播放時間表 發布:2022-09-29 03:58:31 瀏覽:598
新英朗4缸買哪個配置劃算 發布:2022-09-29 03:51:54 瀏覽:122
紅旗5配置怎麼選 發布:2022-09-29 03:44:21 瀏覽:887
linux安裝maven 發布:2022-09-29 03:29:18 瀏覽:595
吉利星瑞豪華天窗版有什麼功能配置 發布:2022-09-29 03:20:28 瀏覽:822
伺服器固定ip和彈性ip一起用 發布:2022-09-29 02:40:49 瀏覽:510
gpioc語言 發布:2022-09-29 02:34:40 瀏覽:959
h乚c語言 發布:2022-09-29 02:34:39 瀏覽:410
迷你世界體驗服正式服密碼是多少 發布:2022-09-29 02:21:19 瀏覽:419