众多Android 开源项目再次推荐,学习不可错过
?
項目地址:http://www.fbreader.org/FBReaderJ/ Angle? Angle是一款專為Android平臺設(shè)計的,適合快速開發(fā)的2D游戲引擎,基于OpenGL ES技術(shù)開發(fā)。該引擎全部用Java代碼編寫,并且可以根據(jù)自己的需要替換里面的實現(xiàn)。項目地址:http://code.google.com/p/angle/
android-shuffle? android-shuffle是一個GTD(Getting Things Done)個人備忘記事本。? 項目地址:http://code.google.com/p/android-shuffle/ Open GPS Tracker? GPSTracker是一個能夠使用Android地圖記錄你的駕車或旅行路線的 項目,出發(fā)前打開軟件選擇開始記錄,你所經(jīng)過的路線就會實時顯示在地圖上,同時還會顯示當前的行駛速度。程序會按用戶自己設(shè)置的標題自動存路線留做日后查 看,也可以把路線分享給朋友。GPSTracker項目是一個Map方面的完整應(yīng)用,包括兩個主要組成部分,第一部分是一個收集和存儲GPS追蹤數(shù)據(jù)的系 統(tǒng)服務(wù),第二部分是Map Activity控制跟蹤數(shù)據(jù)并在地圖上顯示提供接口。GPSTracker項目用到了osmdroid項目的部分功能,其中OpenStreetMap 是一個可供自由編輯的世界地圖,允許您查看,編輯或者使用世界各地的地理數(shù)據(jù)來幫助您。
? 項目地址:http://code.google.com/p/open-gpstracker/ Rokon? Rokon是一個強大、可擴展、靈活 的Android 2D游戲引擎,基于OpenGL ES技術(shù)開發(fā),物理引擎為Box2D,因此能夠?qū)崿F(xiàn)一些較為復(fù)雜的物理效果,有人將它稱為Cocos2d-iPhone引擎的Android版(因為業(yè)務(wù) 邏輯和編碼風格上也確實很像)。
?)。
項目地址:http://code.google.com/p/rokon/
LGame? LGame是一款國人開發(fā)的Java游戲引擎,有Android及 PC(J2SE)兩個開發(fā)版本。其底 層繪圖器LGrpaphics封裝有J2SE以及J2ME提供的全部Graphics API(PC版采用Graphics2D封裝,Android版采用Canvas模擬實現(xiàn)),所以能夠?qū)2SE或J2ME開發(fā)經(jīng)驗直接套用其中,兩版本 間主要代碼能夠相互移植。Android版內(nèi)置有Admob接口,可以不必配置XML直接硬編碼Admob廣告信息。該引擎除了基本的音效、圖形、物理、 精靈等常用組件以外,也內(nèi)置有Ioc、xml、http等常用Java組件的封裝,代價是jar體積較為龐大,PC版 已突破1.2MB,Android版有所簡化也在500KB左右。此外,該引擎還內(nèi)置有按照1:1實現(xiàn)的J2ME精靈類及相關(guān)組件,可以將絕大多數(shù) J2ME游戲平移到Android或PC版中。? 項目地址:http://code.google.com/p/loon-simple/ OpenIntents? 通過"Intents",Android給連接軟件和動態(tài)替換組件提供了優(yōu)秀的基 礎(chǔ)。Google定義了一批intents(如:打電話啊,聯(lián)系人清單上選擇一個聯(lián)系人,打開瀏覽器,電池更換的時候提供提示,等等,詳細清單請 看:available intents和intent class) 但是任何程序可以自由定義額外的intents和content-providers。我們可以很容易的聯(lián)想到獨立開發(fā)的程序(比如在這次的比賽中)極少 有可能會和新定義的intents和接口良好的一起工作。 我們這個項目的目標是收集很可能在多個項目中都有用的想法(而且很可能已經(jīng)被其他獨立程序員實現(xiàn)了),定義一批比較合理且擴展性比較好的一批 intents和接口,提供基礎(chǔ)但穩(wěn)定有效的實現(xiàn),可以被其他Android程序所應(yīng)用的,特別是其他參加比賽的程序員們。OpenIntents本身也 會參加這次的比賽。我們提供小的樣品程序來演示OpenIntents的用法和特性。 因為我們專注于經(jīng)常被使用到的那些intents,Google也很可能在不久的將來提供他們自己的標準intents(比如關(guān)于日歷的。。。)當那個發(fā) 生的時候,我們會提供透明的接口來直接呼叫Google的實現(xiàn)方法,而你已有的程序可以直接使用Google的新功能而不需要改變?nèi)魏螙|西。而且,由于你 的程序在設(shè)計初期就是已經(jīng)支持intents的了,當Google的intents出來的時候,你可以很方便的直接他們的intents。還有可能的是 Google可能會借用一些OpenIntents開發(fā)的intents。無論如何,如果你的程序使用OpenIntents,在和其他使用 OpenIntents程序提供互相支持的同時,你會得到額外的附加值,從而全面增強用戶體驗。?
? 項目地址:http://code.google.com/p/openintents/ android-bluetooth? 非常官方Android Bluetooth API支持遠程設(shè)備掃描、遠程設(shè)備配對,服務(wù)發(fā)現(xiàn)(SDP)和客戶端RFCOMM串行連接。
項目地址:http://code.google.com/p/android-bluetooth/
Android apktool? Android apktool是一個用來處理APK文件的工具,可以對APK進行反編譯生成程序的源代碼和圖片、XML配置、語言資源等文件,也可以添加新的功能到APK文件中。用該工具來漢化Android軟件然后重新打包發(fā)布是相當簡單的。 項目地址:http://code.google.com/p/android-apktool/ quake2android? quake2android是一個將《雷神之錘2》(Quake2)游戲移植到Android平臺上的開源項目。支持谷歌Nexus One,三星Galaxy S,摩托羅拉Droid X等手機。? 項目地址:http://code.google.com/p/quake2android/ AndEngine? AndEngine是一個開源的,基于OpenGL實現(xiàn)的Android 2D游戲引擎。這里提供一些基于AndEngine實現(xiàn)的示例。 項目地址:http://code.google.com/p/andengine/ android-opencv? android-opencv是一個將OpenCV移到Android手機平臺的開源項目,該項目使用OpenCV最新的一個分枝并利用一個改良過的Android NDK進行構(gòu)建。
項目地址:http://code.google.com/p/android-opencv/
android-dalvik-vm-on-java ? android-dalvik- vm-on-java該項目的目標是開發(fā)一個采用Java實現(xiàn)的Android Dalvik虛擬機。目的是為了學(xué)習(xí)Dalvik VM的思想和架構(gòu)。當前支持Dalvik可執(zhí)行文件格式(.dex),完整的Dalvik指令系統(tǒng),J2ME CLDC API,多線程(包括同步阻塞,等待和通知)。項目地址:http://code.google.com/p/android-dalvik-vm-on-java/
Android PC_BCR? Android PC_BCR讓你能夠使用你的Android手機做為PC機的外圍條形碼掃描儀。掃描的條形碼將通過WiFi網(wǎng)絡(luò)連接傳PC機中。這個開源項目由多個組件 組成,在手機設(shè)備上PC_BCR使用ZXing掃描儀器來掃描條形碼,然后程序通過網(wǎng)絡(luò)傳到PC中,PC中有專門的PC_BCR程序接收。項目地址:http://code.google.com/p/android-pcbcr/
android-sms? android-sms能夠?qū)ndroid SMS短信備份到Gmail中的Android開源程序。項目地址:http://code.google.com/p/android-sms/
jPCT-AE? jPCT-AE是一個將jPCT移植至Android平臺上3D圖形引擎。項目地址:http://www.jpct.net/jpct-ae/
AndTweet? AndTweet是一個輕量級Twitter客戶端,支持利用觸摸和鍵盤進行快速操作。項目地址:http://code.google.com/p/andtweet/
android-smspopup ? android-smspopup這個Android應(yīng)用程序能夠攔截收到的短消息并在一個彈出框中顯示消息內(nèi)容和聯(lián)系人頭像。此外還可以自定義LED顏色,振動模式,當?shù)谝淮翁嵝扬@示沒有看到時會重復(fù)提醒用戶哪些信息沒有看過。項目地址:http://code.google.com/p/android-smspopup/
MyTracks? My Tracks能夠記錄你在戶外活動的GPS軌跡并實時顯示時間,速度,距離和海拔等信息。還可以將這些信息上傳至Google Spreadsheets并在Google My Maps中顯示。項目地址:http://code.google.com/p/mytracks/
i-jetty? i-jetty是一個將開源Web容器Jetty移植到Google Android手機平臺上的開源項目。讓你可以在手機上運行現(xiàn)有的Web應(yīng)用。項目地址:http://code.google.com/p/i-jetty/
??
webOdroid? webOdroid這個開源項目提供了一組完整的工具,能夠根據(jù)現(xiàn)有網(wǎng)站創(chuàng)建一個Android應(yīng)用程序。它提供的特性包括:
- 一個功能齊全的RSS瀏覽器
- 能夠顯示文章列表的ListView或GridView控件。
- 提供易于定制的模板
- 在網(wǎng)站上執(zhí)行遠程搜索
- 根據(jù)文章標題提供搜索建議
- 異步下載和緩存RSS供稿和圖片
- 動態(tài)抽取和裁剪文章的圖片
- 通過一個專用的Joomla組件能夠集成Joomla網(wǎng)站的搜索功能
項目地址:http://www.webodroid.com/
android-json-rpc? android-json-rpc是一個在android程序中使用的JSON-RPC客戶端類庫。它提供了一個簡單的API來執(zhí)行JSON-RPC服務(wù)調(diào)用。項目地址:http://code.google.com/p/android-json-rpc/
BikeRoute? BikeRoute是一個Android應(yīng)用程序提供基于GPS線路計劃和定位功能。支持A到B路徑規(guī)劃,附近的單車停放處的位置,一步一步的指示,路線圖,衛(wèi)星導(dǎo)航等功能。項目地址:http://code.google.com/p/bikeroute/? Andorid PDF Viewer? Andorid PDF Viewer是一個運行在ANDROID手機上的PDF文件查看器。它是pdf-rendere:https://pdf-renderer.dev.java.net/的一個移植實現(xiàn)。
項目地址:http://andpdf.sourceforge.net/
Spring Android? Spring Android 是Spring框架的擴展,用于簡化 Android 本地應(yīng)用程序的開發(fā)。項目地址:http://www.springsource.org/spring-android
AchartEngine? AChartEngine是一個針對Android程序開發(fā)的開源圖表生成類庫。支持以下幾種圖表類型:折線圖區(qū)域圖散點圖time chart柱狀圖餅狀圖bubble chartdoughnut chart
range (high-low) bar chart
?
項目地址:http://code.google.com/p/achartengine/
Opencore? Opencore是google聯(lián)合packetvideo推出的多媒體開源框架,其中的h.264解碼器在目前所有的開源h.264解碼器中最好的,在win32和armv4上測試通過,性能好很多,大概提升20%! OpenCore的另外一個常用的稱呼是 PacketVideo,它是Android的多媒體核心。在防站的過程中,PacketVideo是一家公司的 名稱,而OpenCore是這套多媒體框架的軟件層的名稱。在Android的開發(fā)者中間,二者的含義基本相同。對比Android的其它程序 庫,OpenCore的代碼非常龐大,它是一個基于C++的實現(xiàn),定義了全功能的操作系統(tǒng)移植層,各種基本的功能均被封裝成類的形式,各層次之間的接口多 使用繼承等方式。
OpenCore是一個多媒體的框架,從宏觀上來看,它主要包含了兩大方面的內(nèi)容:
??? * PVPlayer:提供媒體播放器的功能,完成各種音頻(Audio)、視頻(Video)流的回放(Playback)功能
??? * PVAuthor:提供媒體流記錄的功能,完成各種音頻(Audio)、視頻(Video)流的以及靜態(tài)圖像捕獲功能
項目地址:http://www.opencore.net/
Android Tools? Android Tools是一個輕量級IDE用于創(chuàng)建、構(gòu)建、安裝和測試Android應(yīng)用程序。可方便的通過點擊訪問Android的命令、目錄和文件。它還提供一個內(nèi)置的文本編輯器。Android Tools能夠讓學(xué)習(xí)和使用Android變得更加簡便。項目地址:http://fieldbird.sourceforge.net/AndroidTools/
android-binding? android-binding這個開源項目提供了一個框架用于將android view widgets與數(shù)據(jù)模型相綁定。幫助您在android應(yīng)用程序中實現(xiàn)MVC或MVVM模式。項目地址:http://code.google.com/p/android-binding/
Robotium? Robotium是一個測試框架能夠方便你為Android應(yīng)用程序編寫強大、健壯的自動黑盒測試用例。利用Robotium的支持,用例開發(fā)人員能夠編 寫功能、系統(tǒng)和驗收測試方案Robotium支持Activities、Dialogs、Toasts、Menus和Context Menus。項目地址:http://code.google.com/p/robotium/?
?
QuiteSleep?
QuiteSleep是一個Android2.0+應(yīng)用程序,可以設(shè)置免打擾時間段。這個時間段內(nèi),打進來的電話將會被阻止并通過SMS或E-Mail發(fā)送預(yù)定義好的信息給打電話者告知他你正忙或正在睡覺等。 項目地址:http://code.google.com/p/quitesleep/?
??fanfoudroid?
安能飯否是一款開源的飯否Android客戶端 。目前支持功能: 消息/私信收發(fā),后臺提醒,回復(fù)/轉(zhuǎn)發(fā)/收藏,查看/關(guān)注用戶,拍照/圖片上傳。即將支持功能: 關(guān)注管理,隨便看看。?項目地址:http://code.google.com/p/fanfoudroid/
?
?
?
Skylight1?
Skylight1是一個開源的Java手機應(yīng)用程序開發(fā)框架和一些Android應(yīng)用程序與示例。這個開源項目包含了以下子項目:
- SkylightOpenGL?- OpenGL wrapper DSL to the Java binding for OpenGL ES - JSR 239 for Android and Java ME
- Skylight1 DI?- 一個依賴注入框架
- Skylight1 Mocks?- 一組Android電話的模擬對象,包括回放。
- Skylight1 Utils?- 工具類如:FPS計數(shù)器,遠程異常堆棧處理。
- Skylight1 UI - 公共可定制UI類
- Skylight1 XML - XML解析類。
- Skylight1 Server?- corresponding server side projects and utils
- MarketConsoleScraper?- Android Market console scraper contributed by?Worksmart Labs
- Skylight1 Demos?- api and sample demos including:
- Tanked, a 2D OpenGL demo
- Barnstormer, a 3D OpenGL demo
- Flick Test, a flick example showing borders of adjacent views
- Skylight1 Wallpaper, a live wallpaper example featuring selectable backgrounds and a fingerprint.
Current Android Applications:
- Skylight1 TDC?- a test data capture application for Android phones - available here for download
- Skylight1 Game?the initial app, a game for Android phones called?"Balance the Beer"?- available on the market.
- NYC Events?- an app that lists NYC Parks, Art and Music events. - available on the market
- Toast?- an app that helps you make a toast with your phone! - available on the market
項目地址:http://code.google.com/p/skylight1/
?
?
Android團隊提供的示例項目?
如果不是從學(xué)習(xí)Android SDK中提供的那些樣例代碼開始,可能沒有更好的方法來掌握在Android這個框架上開發(fā)。由Android的核心開發(fā)團隊提供了15個優(yōu)秀的示例項 目,包含了游戲、圖像處理、時間顯示、開始菜單快捷方式等。?
地址:http://code.google.com/p/apps-for-android/
?
?
?
Remote Droid?
RemoteDroid是一個Android應(yīng)用,能夠讓用戶使用自己的無線網(wǎng)絡(luò)使用無線鍵盤、觸摸屏操作手機。這個項目為開發(fā)者提供了如網(wǎng)絡(luò)連接、觸 摸屏手指運動等很好的樣例。?
地址:http://code.google.com/p/remotedroid/
?
?
TorProxy和Shadow?
TorProxy應(yīng)用實現(xiàn)了Android手機無線電電傳通訊(TOR),和Shadow應(yīng)用一起使用,可以使用手機匿名上網(wǎng)。從該項目源代碼中,可以 掌握socket連接、管理cookie等方法。?
地址:http://www.cl.cam.ac.uk/research/dtg/code/svn/android-tor/
?
?
?
Android SMSPopup?
SMSPopup可以截獲短信內(nèi)容顯示在一個泡泡形狀的窗口中。從這個項目中可以掌握到如何使用內(nèi)置的短信SMS接口。?
地址:http://code.google.com/p/android-smspopup/
?
?
?Standup Timer?
Standup Timer應(yīng)用用于控制站立會議時間,類似秒表倒計時,可以提醒每個人的講話時間已到,從而保證每個與會者使用時間一樣。從該項目的代碼中,可以學(xué)會如何 使用時間函數(shù)。另外,這個項目的代碼是采用視圖view、模型model嚴格分離的設(shè)計思路。?
地址:http://github.com/jwood/standup-timer
?
?
?Foursquare?
是 Foursquare.com的一個客戶端應(yīng)用,該應(yīng)用主要分為兩個模塊:API(com.joelapenna.foursquare)和界面前端 (com.joelapenna.foursquared)兩部分。從該項目代碼中,可以學(xué)會如何同步、多線程、HTTP連接等技術(shù)。?
地址:http://code.google.com/p/foursquared/
?
?
?Pedometer?
Pedometer應(yīng)用用于記錄你每天走路步[]數(shù)的。盡管記錄不一定精準,但是從這個項目中,可以學(xué)習(xí)幾個不同的技術(shù):加速器交互、語音更新、后臺運行服 務(wù)等。?
地址:http://code.google.com/p/pedometer/
?
?
?OpenSudoku-android?
OpenSudoku是一個簡單的九宮格數(shù)獨游戲。從代碼中可以學(xué)習(xí)到如何在視圖中顯示表格數(shù)據(jù),以及如何和一個網(wǎng)站交互等技術(shù)。?
地址:http://code.google.com/p/opensudoku-android
?
?
?
ConnectBot?
ConnectBot是Android平臺的一個客戶端安全殼應(yīng)用。從該項目代碼中,可以學(xué)習(xí)到很多Android安全方面的內(nèi)容,這些是你在開發(fā)應(yīng)用 時經(jīng)常需要考慮的安全問題。?
地址:http://code.google.com/p/connectbot/
?
?
?
WordPress的Android應(yīng)用?
當然在最后不能不提Wordpress的Android應(yīng)用了,這是Wordpress官方開發(fā)團隊提供的一個項目。從代碼中可以學(xué)習(xí)到XMLRPC調(diào) 用(當然還有更多的優(yōu)秀內(nèi)容)。?
地址:http://android.svn.wordpress.org/trunk/
?
?
?
?Jamendo
Jamendo在線音樂播放器是一款android平臺在開源的在線音樂播放,該播放器的主要特色如下:
1.???????界面美觀,在jamendo播放器中精美的布局的隨處可見,大量使用自定義控件和Adapter進行布局,這點可供初學(xué)者好好探討研究
2.???????構(gòu)架清晰
3.???????在代碼中大量使用全局緩沖機制,如全局Application緩沖,圖片緩沖等等。。
4.???????數(shù)據(jù)傳遞使用JSON方式,網(wǎng)絡(luò)傳輸(Apache Http 4.0)。。。
5.???????全局的MediaService,并且伴有NotifyManager等進行通知
?? 部分截圖如下:
????主界面:
? ?
????MusicSearch界面
???
????Music 播放界面,從圖中可以看出,播放界面做的很美觀
????
??
???播放界面下方用到了SlidingDrawer
???
?
??????RadioSearch 界面
???
?
?? Jamendo?官方網(wǎng)站:http://www.jamendo.com/en/
?
????分享的內(nèi)容依次是:
?? 1.分析Music搜索實現(xiàn),主要是網(wǎng)絡(luò)和JSON傳輸
?? 2.分析全局Application緩存實現(xiàn)方法
???3.分析Download模塊
?? 4.分析Adapter使用
?? 5.分析全局Service構(gòu)成
?? 6.分析自定義Widet,代碼中大量使用自定義布局,對新手學(xué)習(xí)布局很有幫助
???7.分析整體結(jié)構(gòu)
學(xué)習(xí)Android 或者做Android 項目的可以參考這些。
轉(zhuǎn)載于:https://www.cnblogs.com/sfshine/archive/2012/12/07/2807951.html
總結(jié)
以上是生活随笔為你收集整理的众多Android 开源项目再次推荐,学习不可错过的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: const类型成员函数与mutable
- 下一篇: linux键盘映射默认,Linux 中的