導航:首頁 > 操作系統 > android百度音樂api

android百度音樂api

發布時間:2022-05-31 10:51:42

❶ 我想知道QQ音樂 百度音樂 有沒有開放API 使之可以獲取用戶的音樂列表

★獲取排行榜
目前抓到兩個排行榜的地址:
新歌榜:http://music.qq.com/musicbox/shop/v3/data/hit/hit_newsong.js
總榜:http://music.qq.com/musicbox/shop/v3/data/hit/hit_all.js

因為還沒有進行進一步的嘗試就不放例子了

★獲取音樂地址
http://stream1歌曲信息中的location值.qqmusic.qq.com/3歌曲ID(7位數,不足在前面補0). mp3
例如之前搜索出來的第一首歌的地址應該是:
http://stream18.qqmusic.qq.com/31679711. mp3
第二首歌的地址應該是
http://stream13.qqmusic.qq.com/31516144. mp3

這個仍然在測試中,希望對和我一樣正在努力做在線音樂的童鞋有些幫助。

❷ 如何在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

❸ 在android中怎麼寫百度api根據指定位置定位

網路地圖SDK為開發者們提供了如下類型的地圖覆蓋物:


我的位置圖層(MyLocationOverlay):用於顯示用戶當前位置的圖層(支持自定義位置圖標);


Poi搜索結果圖層(PoiOverlay):用於顯示興趣點搜索結果的圖層;


路線圖層(RouteOverlay):公交、步行和駕車線路圖層,將公交、步行和駕車出行方案的路線及關鍵點顯示在地圖上(起、終點圖標用戶可自定義);


公交換乘圖層(TransitOverlay):公交換乘線路圖層,將某一特定地區的公交出行方案的路線及換乘位置顯示在地圖上(起、終點圖標用戶可自定義);


自定義圖層(ItemizedOverlay):可將一個或多個興趣點繪制到地圖上,且支持自定義圖標(支持動態更新Item位置、圖標);


彈出窗圖層(PopupOverlay):在地圖上顯示一個彈出窗口;


幾何圖形繪制圖層(GraphicsOverlay):用於繪制點、折線段、弧線、圓、矩形、多邊形等幾何圖形的圖層;


文字繪制圖層(TextOverlay):用於繪制文字的圖層。


圖片圖層(GroundOverlay):用於展示用戶傳入圖片的圖層。


全景圖圖層(PanoramaOverlay):在全景圖內標繪興趣點,支持自定義圖標樣式。


註:除彈出窗圖層外,其他各個圖層均已實現多實例。全景圖圖層是針對全景圖所使用的特殊圖層。


MapView使用一個List管理覆蓋物,通過向MapView.getOverlays() add或remove上述類或其基類的實例即可向地圖添加或刪除覆蓋物。在更新地圖覆蓋物後,需調用MapView.refresh() 使更新生效。




定位原理


使用網路Android定位SDK必須注冊GPS和網路使用許可權。定位SDK採用GPS、基站、Wi-Fi信號進行定位。當應用程序向定位SDK發起定位請求時,定位SDK會根據應用的定位因素(GPS、基站、Wi-Fi信號)的實際情況(如是否開啟GPS、是否連接網路、是否有信號等)來生成相應定位依據進行定位。

用戶可以設置滿足自身需求的定位依據:

若用戶設置GPS優先,則優先使用GPS進行定位,如果GPS定位未打開或者沒有可用位置信息,且網路連接正常,定位SDK則會返回網路定位(即Wi-Fi與基站)的最優結果。為了使獲得的網路定位結果更加精確,請打開手機的Wi-Fi開關。


下面我們將利用 MyLocationOverlay和 PopupOverlay 這兩個類

一 . 導入庫文件


在使用網路定位SDKv4.0之前,我們要下載最新的庫文件,下載地址:點擊下載相關庫文件,將liblocSDK4.so文件拷貝到libs/armeabi目錄下。將locSDK4.0.jar文件拷貝到工程的libs目錄下

LocationClient 定位SDK的核心類,LocationClient類必須在主線程中聲明。需要Context類型的參數。Context需要時全進程有效的context,推薦用getApplicationConext獲取全進程有效的context,我們調用registerLocationListener(BDLocationListener)方法來注冊定位監聽介面,BDLocationListener裡面有兩個方法,onReceiveLocation()(接收非同步返回的定位結果),onReceivePoi()(接收非同步返回的POI查詢結果,POI是「Point of Interest」的縮寫,可以翻譯成「信息點」,每個POI包含四方面信息,名稱、類別、經度、緯度、附近的酒店、飯店,商鋪等信息。我們可以叫它為「導航地圖信息」,導航地圖數據是整個導航產業的基石),我們這里只需要重寫onReceiveLocation就行了BDLocation 封裝了定位SDK的定位結果,在BDLocationListener的onReceive方法中獲取。通過該類用戶可以獲取error code,位置的坐標,精度半徑,地址等信息,對於其getLocType ()方法獲取的error code一些情況

61 : GPS定位結果62 : 掃描整合定位依據失敗。此時定位結果無效。63 : 網路異常,沒有成功向伺服器發起請求。此時定位結果無效。65 : 定位緩存的結果。66 : 離線定位結果。通過requestOfflineLocaiton調用時對應的返回結果67 : 離線定位失敗。通過requestOfflineLocaiton調用時對應的返回結果68 : 網路連接失敗時,查找本地離線定位時對應的返回結果161: 表示網路定位結果162~167: 服務端定位失敗

LocationClientOption 用來設置定位SDK的定位方式,比如設置打開GPS,設置是否需要地址信息,設置發起定位請求的間隔時間等等,參數設置完後調用LocationClient 的setLocOption方法LocationOverlay MyLocationOverlay的子類,重寫裡面的dispatchTap()方法,顯示彈出窗口圖層PopupOverlay,調用mMapView.getOverlays().add(myLocationOverlay)就將我的位置圖層添加到地圖裡面PopupOverlay 彈出圖層,這個類還是比較簡單,裡面只有三個方法,hidePop() (隱藏彈出圖層)showPopup(Bitmap pop, GeoPoint point, int yOffset) (顯示彈出圖層)和showPopup顯示多張圖片的重載方法,由於showPopup方法只接受Bitmap對象,所以我們必須將我們的彈出圖層View對象轉換成Bitmap對象,我們調用getBitmapFromView方法就實現這一轉換BDLocationListener介面的onReceiveLocation(BDLocation location) 方法我還要重點講解下,我們會發現onReceiveLocation方法會反復執行,他執行的間隔跟LocationClientOption類的setScanSpan()方法設定的值有關,我們設定的是5000毫秒,則onReceiveLocation方法每隔5秒執行一次,注意,當我們設定的值大於1000(ms),定位SDK內部使用定時定位模式。調用requestLocation( )後,每隔設定的時間,定位SDK就會進行一次定位。如果定位SDK根據定位依據發現位置沒有發生變化,就不會發起網路請求,返回上一次定位的結果;如果發現位置改變,就進行網路請求進行定位,得到新的定位結果。如果你只需要定位一次的話,這個設置小於1000,或者不用設置就可以了,定時定位時,調用一次requestLocation,會定時監聽到定位結果 四 . 在運行程序之前,我們還必須在AndroidManifest.xml進行相關配置和許可權的聲明


還有很重要的一點就是在AndroidManifest.xml中添加下面的內容



android:name=com..location.f

android:enabled=true

android:process=:remote >


android:name=com..lbsapi.API_KEY

android:value=6KOX4mXHeBRzgriV6OP1T2Hw

/>


其中的meta-data問題:網上這樣說,大家記住就得了。。。。


因為單獨的定位sdk需要一個key值,而定位sdk的值又不像mapManager中可以直接賦值

所以就需要在注冊表單中注冊

❹ android 的API如何使用

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

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

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

❺ 有沒有遇到過各個版本之間android api介面的區別

還是有區別的,具體如下:
Android 1.5 API變更概要:
1、UI framework
· Framework for easier background/UI thread interaction
· 新SlidingDrawer 組件
· 新HorizontalScrollview 組件
2、AppWidget framework
· 一些關於創建桌面AppWidget 的API.
· 提供根據自定義的內容創建LiveFolders的API
3、Media framework
· 原聲錄音和回放 APIs
· 互動式的MIDI 回放引擎
· 開發者使用的視頻錄像API (3GP format).
· 視頻相片分享 Intents
· 媒體搜索Intent
4、Input Method framework
· 輸入法服務framework
· 文本預測引擎
· 提供具有下載能力的IME給使用者
5、Application-defined hardware requirements
應用可定義硬體需求,應用程序可以定義說明此程序需要什麼硬體需求.比如是否需要物理鍵盤或者軌跡球.
6、Speech recognition framework
· 支持語音識別庫.
7、Miscellaneous API additions
· LocationManager -應用可以接收到位置改變的信息.
· WebView - 觸摸start/end/move/cancel DOM 事件的支持
· 重建Sensor Manager APIs
· GLSurfaceView - 創建OpenGL 應用更加方便的framework .
· 軟體升級安裝成功的Broadcast Intent - 更加平和優秀的軟體升級體驗

Android 1.6 API變更概要:
1、UI framework
· 新的類 android.view.animation 控制動畫行為:
o AnticipateInterpolator
o
o BounceInterpolator
o OvershootInterpolator
2、· 新的XML 屬性android:onClick ,從一個layout文件描述一個view的 View.OnClickListener.
· 對不同解析度的屏幕的新的支持. 對於Bitmap和Canvas會執行有針對性的縮放行為.該框架會根據屏幕解析度和其他內容自動縮放bitmap等.
要在你的應用中使用Android 1.6包含的API的話你必須要設置 "4"屬性在manifest的 元素中
3、Search framework
· 應用程序現在可以公開的有關內容,作為建議放入快速搜索框,新的設備范圍內的搜索功能,是可從主屏幕搜索。為了支持這一點,搜索框架增加了新的屬性,可搜索的元數據文件。有關完整的信息,請參閱SearchManager文檔。
4、Accessibility framework
· New android.accessibility package that includes classes for capturing accessibility events and forwarding them to an AccessibilityService handler.
· New AccessibilityService package that lets your application track user events and provide visual, audible, or haptic feedback to the user.
5、Gesture Input
· 新的gesture API :創建,識別,讀取,保存手勢.
6、Text-to-speech
· 新的android.speech.tts 包提供了TTS文本朗讀功能,從一個文本生成一個聲音文件的回放.
7、Graphics
·android.graphics 中的類,現在支持為不同的屏幕尺寸進行縮放.
8、Telephony
· 新的SmsManager 發送和接受簡訊.
9、Utilities
· 新的DisplayMetrics 欄位決定當前設備屏幕的密度.
10、Android Manifest elements
o 新的 元素
o 新的 標簽
o glEsVersion: 指定最小openGL ES的版本
·
11、元素的新的屬性:
o 目標SDK版本: 應用程序能夠指定目標版本. 它能夠運行在舊版本(低至minSdkVersion), 他是按照應用程序的指定版本開發的. Specifying this version allows the platform to disable compatibility code that is not required or enable newer features that are not available to older applications.
o maxSdkVersion: 指定設計這個程序運行的最高版本 重要: 當使用 這些屬性前請認真閱讀文檔.
12、New Permissions
· CHANGE_WIFI_MULTICAST_STATE: 允許應用進入Wi-Fi 多點傳送模式.
· GLOBAL_SEARCH: 允許全局搜索系統,以便精確確定 content provider.
· INSTALL_LOCATION_PROVIDER: 允許應用在Location Manager.安裝一個location provider.
· READ_HISTORY_BOOKMARKS: 允許應用讀取(並不能寫) 用戶的瀏覽記錄和書簽
· WRITE_HISTORY_BOOKMARKS: 允許應用寫入 (並不能讀) 用戶的瀏覽記錄和書簽
· WRITE_EXTERNAL_STORAGE: 允許程序寫入外部存儲器.應用程序使用API級別3下將默認授予此許可權 (這對用戶可見的); 應用程序使用API level4 或者更高的,必須要明確的宣告此許可權.

Android 2.0 API變更概要:
1、Bluetooth
· 開啟關閉藍牙
· 設備和服務發現
· 使用 RFCOMM連接一個可插拔的設備收發數據
· 公布RFCOMM 服務和監聽接收 RFCOMM 連接
2、Sync adapters
· 新的APIs, 同步橋接器連接任何backend
3、Account Manager
· 集中的帳戶管理器 API ,安全的儲存和使用可信的tokens/passwords
4、Contacts
· 新的通信APIs 允許獲取多個賬戶的數據.
· 新的快速通信framework APIs 允許開發者在他們的應用中創建通信標記, 一鍵點擊標記打開一個新的窗口展示一個如何聯系當前人的列表.
5、WebView
· 不贊成使用的類: UrlInterceptHandler, Plugin, PluginData, PluginList, UrlInterceptRegistry.
6、Camera
· 顏色模式, 場景模式 閃光模式, 焦點模式, 白平衡 旋轉和其他設置的新的特徵.
· 當縮放級別改變的時候,會回調新的縮放回調介面.
7、Media
· MediaScanner現在為所有圖片生成縮微圖when they are inserted into MediaStore.
· 新的縮微圖 API : 檢索需要的圖片和視頻的縮微圖.
8、Other Framework
· android.R.style 中新的系統主題,能夠更加簡單的顯示當前acitivities的系統壁紙或者保持之前的activity在後台.新的壁紙管理器API 取代並且增加了wallpaper APIs ,我們可以允許我們的應用要求設置系統壁紙.
· 新的Service APIs幫助應用准確的處理Service 生命周期 ,在指定的低內存狀態下service將會被關閉.
o Service.setForeground() 不推薦使用,並且現在這個方法並沒有實際執行. .他被一個新的API所取代, startForeground(), that helps (and requires) associating an ongoing notification with the foreground state.
· MotionEvent 如果設備允許的話,MotionEvent 會返回多點觸摸信息.最多可同時獲取3點
· KeyEvent 現在有了新的按鍵發送 APIs,去幫助實現 action-on-up 和長按鍵行為, 一個新的機製取消按鍵 (虛擬按鍵).
· WindowManager.LayoutParams 現在有了新的常量允許窗口能夠在被鎖或者其他的狀況中喚醒屏幕,這個允許程序能夠讓例如鬧鍾等的應用實現喚醒設備.
·New Intent APIs 廣播設備的對接狀態,當這個設備放在桌面或者停車場,允許程序啟動特殊的activity.
9、Key events executed on key-up
Android 2.0能夠使用虛擬按鍵HOME, MENU, BACK和SEARCH,而非物理按鍵,為了讓用戶在他們的設備中獲得最好的用戶體驗,android平台現在把這些按鍵執行加入到了key-up,做了 key-down/key-up 配對,而非只有key-down.,這有助於防止意外按鈕事件,並讓使用者按下按鈕區域,然後拖動而不生成一個事件出來。
這種改變只會影響你的應用程序一點,如果它是攔截按鈕事件,最好用key-down,而不是key-up.。特例,如果您的應用程序攔截BACK 鍵,你應該確保你的應用妥善處理按鍵事件。

Android 2.0.1 API變更概要:
· 新的快速聯系人標記風格(quickContactBadgeStyle)* 屬性,讓應用的QuickContactBadge 組件接收必要的風格.
· 當在manifest裡面宣布了filter,取消了支持 ACTION_CONFIGURATION_CHANGED 廣播 ,如果想要去接收這個廣播, 這個應用必須注冊 registerReceiver(BroadcastReceiver, IntentFilter).
性能上的改變:
1、Bluetooth
改變了 ACTION_REQUEST_ENABLE 和ACTION_REQUEST_DISCOVERABLE的返回值
· ACTION_REQUEST_ENABLE 如果藍牙是成功開啟的,現在返回RESULT_OK .如果使用者拒絕開啟藍牙的請求,則會返回RESULT_CANCELED .
· ACTION_REQUEST_DISCOVERABLE 如果使用者拒絕啟動藍牙或者藍牙的可發現功能,則返回 RESULT_CANCELED .
2、通訊
The ACTION_INSERT Intent returns RESULT_CANCELED in cases where the contact was not persisted (例如剪切保存到一個空的操作裡面).
修復錯誤:
3、資源
現在framework可以正選擇應用資源的根據API等級劃分的文件夾(drawable-v4是API level4版本用的資源).現在的版本這個功能不能正常工作的問題已經修復.
4、Contacts
The ACTION_INSERT Intent now returns the appropriate kind of URI when the request is made using the (now deprecated) Contacts APIs.
5、Other Framework fixes
· getCallingPackage() 現在正確的報告包名, 而不是進程名.

Android 2.1 API變更概要:
1、?Live Wallpapers 動態桌面
? 以下增加的API可以提供你開發動態的桌面:
· 新android.service.wallpaper 包.
· 新WallpaperInfo 類.
· 升級的WallpaperManager.
附加說明, 如果你的應用相提供Live Wallpapers的功能, 你必須記得增加一個 元素到你的應用manifest裡面. 宣布這個屬性android:name="android.software.live_wallpaper". 舉例:
2、電話
· 新的SignalStrength 類提供當前網路信號的一些信息這些信息可以從onSignalStrengthsChanged(SignalStrength) 回調.
· 新的onDataConnectionStateChanged(int, int) 回調.
3、Views
· 新的View 方法isOpaque() 和onDrawScrollBars(Canvas).
· 新的RemoteViews 方法addView(int, RemoteViews) 和removeAllViews(int).
· 新的ViewGroup 方法isChildrenDrawingOrderEnabled() 和(boolean).
4、WebKit
· 新的WebStorage 方法操作網頁數據緩存.
· 新的GeolocationPermissions 方法獲取 Geolocation permissions 的出處, 把他們設置到 WebView上.
· 新的WebSettings 方法管理軟體緩存, 網頁緩存 和屏幕的縮放.
· 新的WebChromeClient 方法處理視頻, 歷史記錄, 自定義view, 軟體緩存限制還有其他??

Android 2.2 API變更概要:
1、對Microsoft Exchange更好的支持。
Android的幾個新特性使之更適於Exchange企業環境。其中一些新特性列舉如下:基於用戶名/密碼的 Exchange帳號自動檢測支持Exchange日歷的同步
改進的安全性,管理員可以跨越設備強制應用安全策略
恢復出場設置——管理員可以將設備重置為出場設置,這樣就能在設備被偷或丟失後擦除上面的敏感數據了
全局的地址列表查找——可以根據伺服器端返回的列表幫助用戶自動填充收件人的郵件地址
設備管理API。Android 2.2改進並新增了大量的設備管理API,開發者可以將其用在應用當中:
應用數據備份API——可以將應用數據備份到雲中。如果用戶切換到另一個Android設備,他就可以從之前的設備中恢復數據。
2、Cloud-to-Device消息API。雲中的用戶/系統可以憑借這種增強在設備上觸發動作。該特性可以將移動警告發給手機並且支持雙向的推同步服務。
可以直接在外部的內存設備(SD卡)上安裝應用,還可以將應用從內部遷移到SD卡上,反之亦然。
3、網路共享。Android 2.2可以通過一台Android電話提供的熱點將多個服務連接到Internet上。
性能。藉助於新式的Dalvik JIT編譯器,對於CPU密集型應用來說,Android 2.2的速度要比Android 2.1快2~5倍。根據Linpack基準測試結果,安裝了Froyo的Nexus
One電話可以達到37.5 MFlops,而同樣的電話如果使用Android 2.1的話才有6.5 MFlops。
更快的瀏覽速度。由於瀏覽器現在使用了Chrome V8引擎,JavaScript代碼的處理速度要比Android 2.1快2~3倍。
從瀏覽器中訪問設備API。現在可以直接從瀏覽器中訪問大量的設備API,如加速器、相機、聲音識別、翻譯等,這樣Web應用就能以前所未有的方式與設備交互了。比如說,用戶可以在拍完照後將其上傳到網上,而這一切都是在瀏覽器內完成的。
4、支持Flash 10.1。Froyo支持最新的Flash 10.1
Beta版。最近,JIT編譯器的引入極大地改進了性能,這對Flash應用的運行起到了巨大的幫助作用,因為大家都知道,Flash應用是一種CPU密集型應用。
Android商店。Android 2.2開發者和商店用戶會從如下新特性中受益無窮:
可以在Android商店搜索應用,包括應用數據
更新——點擊一次按鈕後會自動更新所有應用
5、崩潰與凍結報告。Android2.2集成了崩潰/凍結報告特性,這樣在崩潰時用戶就可以將完整的細節信息報告給應用發布者了
從PC上瀏覽商店並將應用直接下載到設備上。用戶可以通過PC選擇商店的應用,之後應用就可以發到到載入的設備上。要想使用這個特性,用戶需要登錄並且設備需要在Android商店注冊-
6、音樂管理。用戶可以將Windows Media或Mac iTunes上的所有非DRM音樂轉換到Android設備上播放。

Android 2.3 API變更概要:
Android 2.3姜餅發布,代號Gingerbread,包含哪些新特性和改進呢?
1. 新增android.net.sip包,名為SipManager類,可以輕松開發基於Sip的Voip應用。同時使用時必須至少包含這兩個許可權 <uses-permission android:name="android.permission.INTERNET"> and <uses-permissionandroid:name="android.permission.USE_SIP">,如果需要在Market上過濾僅顯示支持VoIP API的機型,可以在發布時androidmanifest.xml中加入 <uses-feature android:name="android.software.sip"android:required="true"> 和 <uses-feature android:name="android.software.sip.voip"> 這兩個標志。
2. Near Field Communications (NFC) 近距離通訊的支持,NFC可以在不接觸的情況下實現數據交換通訊,可以很好的代替RFID SIM卡實現手機支付等擴展功能,當然Android123提示這需要硬體的支持
,新增包在 android.nfc包含NfcAdapter,NdefMessage,NdefRecord等類,類似藍牙的處理方式,使用該API需要聲明許可權<uses-permission android:name="android.permission.NFC"> ,同時在Market上過濾支持NFC的設備需要加入<uses-feature android:name="android.hardware.nfc" android:required="true">這句。
3. 新增陀螺儀和其他的感測器支持
Android 2.3加入了一些新的感應器,比如gyroscope陀螺儀, rotation vector旋轉向量, linear acceleration線性加速器 gravity和barometer氣壓計的支持。如果過濾這些功能,發布時加入類似<uses-feature android:name="android.hardware.sensor.gyroscope" android:required="true">到androidmanifest.xml中。
4. 多攝像頭支持
新增 Camera.CameraInfo 可以管理攝像頭前置或後置
新增 getNumberOfCameras(), getCameraInfo() 和 getNumberOfCameras() 獲取攝像頭數量。
新增 get() 方法,可以獲取攝像頭配置信息 CamcorderProfile
新增 () 獲取jpeg編碼質量參數可以在 CameraPreview.java 文件從ApiDemos示常式序中查看。
5. 新增拍照API
比如獲取焦距getFocusDistances()獲取預覽FPS getPreviewFpsRange(), 獲取焦距范圍 getSupportedPreviewFpsRange() 和設置教育 setPreviewFpsRange()
6. 混響音效
本次Android 2.3框架中加入了對混響音效的支持,比如低音,耳機和虛擬化等效果.
新增 android.media.audiofx 包
新增 AudioEffect 類提供音效控制
新增音頻會話ID,設置 AudioTrack 和 MediaPlayer.
新 AudioTrack 新增 attachAuxEffect()、getAudioSessionId()和 setAuxEffectSendLevel()。
新 attachAuxEffect() ,getAudioSessionId(), setAudioSessionId(int), 和 setAuxEffectSendLevel() .
相關音效在 AudioFxDemo.java 的 ApiDemos 示例。
6. 照片EXIF信息改進
新增經緯度標簽在JPG格式的EXIF中,同時可以使用 getAltitude() 方法獲取經緯度的EXIF信息
新增setOrientationHint() 可以讓程序獲取視頻錄制的方向.
7. 下載管理
在Android 2.3中新增的下載管理支持長時間運行的Http下載服務支持。可以保證在手機重啟後仍然重試下載等操作,整個過程在後台執行。
通過 DownloadManager 類使用getSystemService(DOWNLOAD_SERVICE) 來實例化,通過ACTION_NOTIFICATION_CLICKED 這個Intent來處理。

8. 限制模式
可以幫助開發者監控他的應用的性能,處理線程阻塞,避免ANR的發生。
StrictMode.ThreadPolicy 和 StrictMode.VmPolicy 獲取VM相關信息.
使用限制模式優化的Android應用程序可以查看android.os.StrictMode包的具體介紹。

❻ 如何實現API背景音樂播放

第一篇寫的這些內容很簡單,跟鏈接作者寫的幾乎一樣。

他寫的比較復雜,有些實現方式也不一樣,所以自己寫個博客記錄一下...O(∩_∩)O~

這個播放器很簡單,如果你是什麼Api都不知道,看了這個兩天就寫完了,你可以邊看邊查相關的API是幹嘛用的,如果之前都了解了相關的API,那麼一天就能編完。

做一個播放器的大致思路是什麼呢?播放器當然是要有播放的功能咯,這是我在廢話。這個播放器是不帶下載功能的,所以肯定是從你手機中獲取已經存在的音樂。於是第一步就是獲取手機中的音樂信息,這個跟播放器的界面沒什麼聯系,那你可以把它寫成一個工具類,叫做GetMusicListUtil,專門用來獲取手機音樂信息的類。
上代碼:
public class GetMusicListUtil {

/**
* 從手機中得到所有的音樂,放在list中保存
*
* @param context
* @return
* @author Yang
*/
public static List<Mp3Info> getMusicInfos(Context context)
{
Cursor cursor = context.getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER);
List<Mp3Info> musicInfos = new ArrayList<Mp3Info>();
for(int i=0; i<cursor.getCount(); i++)
{
cursor.moveToNext();
Mp3Info music = new Mp3Info();
long musicId = cursor.getLong(cursor
.getColumnIndex(MediaStore.Audio.Media._ID));
String musicTitle = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.TITLE));
String musicArtist = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.ARTIST));
long musicTime = cursor.getLong(cursor
.getColumnIndex(MediaStore.Audio.Media.DURATION)); //時長
long musicSize = cursor.getLong(cursor
.getColumnIndex(MediaStore.Audio.Media.SIZE)); //文件大小
String musicUrl = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.DATA)); //文件路徑
int isMusic = cursor.getInt(cursor
.getColumnIndex(MediaStore.Audio.Media.IS_MUSIC));
//只把音樂添加到集合中
if(isMusic != 0)
{
music.setId(musicId);
music.setArtist(musicArtist);
music.setDuration(musicTime);
music.setSize(musicSize);
music.setUrl(musicUrl);
music.setTitle(musicTitle);
musicInfos.add(music);
}

}
return musicInfos;
}
/**
* 將因音樂的時長由毫秒轉換成分:秒的格式
*
* @param time
* @return
* @author Yang
*/
public static String formatTime(long time) {
String min = time / (1000 * 60) + "";
String sec = time % (1000 * 60) + "";
if (min.length() < 2) {
min = "0" + time / (1000 * 60) + "";
} else {
min = time / (1000 * 60) + "";
}
if (sec.length() == 4) {
sec = "0" + (time % (1000 * 60)) + "";
} else if (sec.length() == 3) {
sec = "00" + (time % (1000 * 60)) + "";
} else if (sec.length() == 2) {
sec = "000" + (time % (1000 * 60)) + "";
} else if (sec.length() == 1) {
sec = "0000" + (time % (1000 * 60)) + "";
}
return min + ":" + sec.trim().substring(0, 2);
}

/**
* 將List<Mp3Info>轉換成List<HashMap<String,String>>的格式
* 為了給SimpleAdapter填充數據
*
* @param musicInfos
* @return
* @author Yang
*
*/
public static List<HashMap<String,String>> getMusicHashMaps(
List<Mp3Info> musicInfos)
{
List<HashMap<String,String>> musicHashMaps =
new ArrayList<HashMap<String,String>>();
for(Iterator<Mp3Info> iterator = musicInfos.iterator();iterator.hasNext();)
{
Mp3Info music = iterator.next();
HashMap<String,String> map = new HashMap<String,String>();
map.put("title", music.getTitle());
map.put("artist", music.getArtist());
map.put("size", String.valueOf(music.getSize()));
map.put("time", formatTime(music.getDuration()));
map.put("url", music.getUrl());
musicHashMaps.add(map);
}
return musicHashMaps;
}
}

相信大家都能看懂,Cursor對象進行查詢,然後存到一個Mp3Info類型的List中,之所以下面還寫了一個List<HashMap<String,String>>進行保存,就是為了給SimpleAdapter用的,這個adapter給listView填充數據。
這個和原作者寫的沒什麼區別,另外其中的Mp3Info是一個javabean,如下所示:

package org.com.ViPlayer;

public class Mp3Info
{
public long id;
public String title;
public String artist;
public long ration;
public long size;
public String url;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getArtist() {
return artist;
}
public void setArtist(String artist) {
this.artist = artist;
}
public long getDuration() {
return ration;
}
public void setDuration(long ration) {
this.ration = ration;
}
public long getSize() {
return size;
}
public void setSize(long size) {
this.size = size;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}

}

有了音樂的信息之後,我們可以開始編輯界面了,我的界面裡面的那些個圖片也是在原創作者頁面下載的。但是裡面的模式稍微有些不一樣,被我給簡化了。。。
一共只用到了這么多圖片:背景,播放按鈕圖,下一首按鈕圖,前一首按鈕圖,音樂模式按鈕圖,音樂小圖標。

然後就是主界面xml文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bk1"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<LinearLayout
android:id="@+id/handleButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" >

<Button
android:id="@+id/repeat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_alignParentLeft="true"
android:background="@drawable/repeat_none" />
<Button
android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_toRightOf="@+id/repeat"
android:background="@drawable/previous" />

<Button
android:id="@+id/playMusic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_toRightOf="@+id/previous"
android:background="@drawable/play" />

<Button
android:id="@+id/next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_toRightOf="@+id/playMusic"
android:background="@drawable/next" />

<!-- <Button
android:id="@+id/randomMode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_toRightOf="@+id/next"
android:background="@drawable/random1" /> -->
</LinearLayout>

<ListView
android:id="@+id/musicList"
android:layout_width="fill_parent"
android:layout_height="300dp"
android:layout_below="@+id/handleButton" >
</ListView>

<RelativeLayout
android:id="@+id/songInfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/musicList"
android:layout_alignParentBottom="true"

❼ android 在線音樂播放器Demo

李寧電視廣告----塗鴉篇

❽ 如何在安卓應用程序中使用百度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」,www.linuxidc.com選定mapapi.jar,這樣就可以在應用中使用網路地圖API了。工程完整的目錄結構如下圖所示:

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

<?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

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();
}
}

❾ Android用戶下載百度音樂業務客戶端的方法

Android用戶下載網路音樂業務客戶端的方法是:
1.手機訪問music..com/mo下載。下載完成後點擊安裝;
2.電腦訪問網路音樂官網 http://music..com/app andriod客戶端並導入手機安裝;
3.第三方市場:如網路手機助手,安卓市場等,搜索「網路音樂」,按提示下載安裝。

閱讀全文

與android百度音樂api相關的資料

熱點內容
自己購買雲主伺服器推薦 瀏覽:419
個人所得稅java 瀏覽:761
多餘的伺服器滑道還有什麼用 瀏覽:189
pdf劈開合並 瀏覽:27
不能修改的pdf 瀏覽:751
同城公眾源碼 瀏覽:488
一個伺服器2個埠怎麼映射 瀏覽:297
java字元串ascii碼 瀏覽:78
台灣雲伺服器怎麼租伺服器 瀏覽:475
旅遊手機網站源碼 瀏覽:332
android關聯表 瀏覽:945
安卓導航無聲音怎麼維修 瀏覽:332
app怎麼裝視頻 瀏覽:430
安卓系統下的軟體怎麼移到桌面 瀏覽:96
windows拷貝到linux 瀏覽:772
mdr軟體解壓和別人不一樣 瀏覽:904
單片機串列通信有什麼好處 瀏覽:340
游戲開發程序員書籍 瀏覽:860
pdf中圖片修改 瀏覽:288
匯編編譯後 瀏覽:491