㈠ android 開發框架有哪些
主要總結了7個好用的android 開發框架推薦給你:
一、 Afinal
Afinal是一個Android的ioc,orm框架,內置了四大模塊功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過finalActivity,我們可以通過註解的方式進行綁定ui和事件。通過finalBitmap,我們可以方便的載入bitmap圖片,而無需考慮oom等問題。通過finalDB模塊,我們一行代碼就可以對android的sqlite資料庫進行增刪改查。通過FinalHttp模塊,我們可以以ajax形式請求http數據。
功能:
一個android的ioc,orm框架,內置了四大模塊功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通過finalActivity,我們可以通過註解的方式進行綁定ui和事件。通過finalBitmap,我們可以方便的載入bitmap圖片,而無需考慮oom等問題。通過finalDB模塊,我們一行代碼就可以對android的sqlite資料庫進行增刪改查。通過FinalHttp模塊,我們可以以ajax形式請求http數據。
優點:功能比較全面,文檔完善,代碼效率比較高。
缺點:沒有項目demo,框架的時間比較久,代碼冗餘比較多(這也是無可避免的),文檔比較老跟不上代碼更新進度。
二、 xUtils
xUtils:可以說是Afinal的升級版。
xUtils 包含了很多實用的android工具。
xUtils 支持大文件上傳,更全面的http請求協議支持(10種謂詞),擁有更加靈活的ORM,更多的事件註解支持且不受混淆影響...
xUitls 最低兼容android 2.2 (api level 8)
三、 ThinkAndroid
ThinkAndroid是一個免費的開源的、簡易的、遵循Apache2開源協議發布的Android開發框架,其開發宗旨是簡單、快速的進行Android應用程序的開發,包含Android
mvc、簡易sqlite orm、ioc模塊、封裝Android
httpclitent的http模塊,具有快速構建文件緩存功能,無需考慮緩存文件的格式,都可以非常輕松的實現緩存,它還基於文件緩存模塊實現了圖片緩存功能,在android中載入的圖片的時候,對oom的問題,和對載入圖片錯位的問題都輕易解決。他還包括了一個手機開發中經常應用的實用工具類,如日誌管理,配置文件管理,android下載器模塊,網路切換檢測等等工具
四、 LoonAndroid
如果你想看ui方面的東西,這里沒有,想要看牛逼的效果這里也沒有。這只是純實現功能的框架,它的目標是節省代碼量,降低耦合,讓代碼層次看起來更清晰。整個框架一部分是網上的,一部分是我改的,為了適應我的編碼習慣,還有一部分像orm完全是網上的組件。在此感謝那些朋友們。
整個框架式的初衷是為了偷懶,之前都是一個功能一個jar,做項目的時候拉進去,這樣對於我來說依然還是比較麻煩。最後就導致我把所有的jar做成了一個工具集合包。
有很多框架都含有這個工具集合里的功能,這些不一定都好用,因為這是根據我個人使用喜歡來實現的,如果你們有自己的想法,可以自己把架包解壓了以後,源碼拉出來改動下。
目前很多框架都用到了註解,除了androidannotations沒有入侵我們應用的代碼以外,其他的基本上都有,要麼是必須繼承框架裡面的activity,要麼是必須在activity的oncreat裡面調用某個方法。
整個框架式不同於androidannotations,Roboguice等ioc框架,這是一個類似spring的實現方式。在整應用的生命周期中找到切入點,然後對activity的生命周期進行攔截,然後插入自己的功能。
五、 KJFrameForAndroid
KJFrameForAndroid 又叫KJLibrary,是一個android的orm 和 ioc
框架。同時封裝了android中的Bitmap與Http操作的框架,使其更加簡單易用;
KJFrameForAndroid的設計思想是通過封裝Android原生SDK中復雜的復雜操作而達到簡化Android應用級開發,最終實現快速而又安全的開發APP。我們提倡用最少的代碼,完成最多的操作,用最高的效率,完成最復雜的功能。
功能:
一個android的orm 和 ioc 框架。同時封裝了android中的Bitmap與Http操作的框架,使其更加簡單易用;
KJFrameForAndroid開發框架的設計思想是通過封裝Android原生SDK中復雜的復雜操作而達到簡化Android應用級開發,最終實現快速而又安全的開發APP。總共分為五大模塊:UILibrary,UtilsLibrary,HttpLibrary,BitmapLibrary,DBLibrary。
六、 dhroid
dhroid 是基於android 平台,
極速開發框架,其核心設計目標是開發迅速、代碼量少、學習簡單、功能強大、輕量級、易擴展.使你更快,更好的開發商業級別應用
功能:
1.Ioc容器: (用過spring的都知道)視圖注入,對象注入,介面注入,解決類依賴關系
2.Eventbus: android平台事件匯流排框架,獨創延時事件,事件管理輕松
3.Dhnet: 網路http請求的解決方案,使用簡單,減少代碼,自帶多種網路訪問緩存策略
4.adapter模塊: 數據綁定輕松,不用寫多餘的adapter,天生網路支持(一行代碼搞定載入,刷新問題)
5.DhDb: android中sqlite的最輕量orm框架(增刪改查輕松搞定)
6.Perference: android自帶Perference 升級版,讓你的Perference更強大,更方便
工具集合 JSONUtil(安全處理json),ViewUtil(數據綁定更快) ThreadWorker(非同步任務工具)...
七、 SmartAndroid
SmartAndroid是一套給
Android開發者使用的應用程序開發框架和工具包。它提供一套豐富的標准庫以及簡單的介面和邏輯結構,其目的是使開發人員更快速地進行項目開發。使用
SmartAndroid可以減少代碼的編寫量,並將你的精力投入到項目的創造性開發上。
功能:
SmartAndroid 擁有全范圍的類庫,可以完成大多數通常需要的APP開發任務,包括:
非同步網路操作相關所有功能、強大的圖片處理操作、輕量級ORM資料庫Sqlite庫、zip操作
、動畫特效、Html等解析採集、事件匯流排EventBus/Otto、Gson(Json)、AQuery、主流所有UI控制項(例如:ActionbarSherlock,SlidingMenu,BottomView,Actionbar,DragListView等10多種UI庫)等。
㈡ android 如何獲得pdf文件的頁數
分頁方法:
打開網路pdf 思路整體還是來源與圖片的載入。
android中載入網路圖片的框架有很多個。如image-laoder, fresco、glide等,首先都是從內存中找圖片,如果內存中沒有,接著從本地找,本地沒有在從網路下載。
android中載入pdf也是類似,首先從本地找pdf文件,如果本地存在該pdf文件,直接打開,如果本地不存在,將該pdf文件下載到本地在打開。
下載文件用到了retrofit2的庫,已經封裝到android_pdf中了。
2.依賴android_pdf庫方法
2.1 在項目的gradle中增加如下代碼:
compile 'com.lidong.pdf:android_pdf:1.0.1'
2.2 一句代碼就可以載入網路pdf。
```
pdfView.fileFromLocalStorage(this,this,this,fileUrl,fileName); //設置pdf文件地址
```
2.3對fileFromLocalStorage(this,this,this,fileUrl,fileName)的解析
/**
```
* 載入pdf文件
* @param onPageChangeListener
* @param onLoadCompleteListener
* @param onDrawListener
* @param fileUrl
* @param fileName
*/
public void fileFromLocalStorage(
final OnPageChangeListener onPageChangeListener,
final OnLoadCompleteListener onLoadCompleteListener,
final OnDrawListener onDrawListener,
String fileUrl,
final String fileName)
```
1. OnPageChangeListener onPageChangeListener :翻頁回調
2. OnLoadCompleteListener onLoadCompleteListener:載入完成的回調
3. OnDrawListener:頁面繪制的回調
4. String fileUrl : 文件的網路地址
5. String fileName 文件名稱
3.使用android_pdf庫方法
3.1寫一個布局文件
```
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.lidong.pdf.androidpdf.MainActivity">
<com.lidong.pdf.PDFView
android:id="@+id/pdfView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</RelativeLayout>
```
3.2在MainActivity中載入
```
import android.graphics.Canvas;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
import com.lidong.pdf.PDFView;
import com.lidong.pdf.api.ApiManager;
import com.lidong.pdf.listener.OnDrawListener;
import com.lidong.pdf.listener.OnLoadCompleteListener;
import com.lidong.pdf.listener.OnPageChangeListener;
import com.lidong.pdf.util.FileUtils;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import okhttp3.ResponseBody;
import rx.android.schelers.AndroidSchelers;
import rx.functions.Action1;
import rx.schelers.Schelers;
public class MainActivity extends AppCompatActivity implements OnPageChangeListener
,OnLoadCompleteListener, OnDrawListener {
private PDFView pdfView ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pdfView = (PDFView) findViewById( R.id.pdfView );
displayFromFile1("http://file.chmsp.com.cn/colligate/file/00100000224821.pdf", "00100000224821.pdf");
}
/**
* 獲取打開網路的pdf文件
* @param fileUrl
* @param fileName
*/
private void displayFromFile1( String fileUrl ,String fileName) {
pdfView.fileFromLocalStorage(this,this,this,fileUrl,fileName); //設置pdf文件地址
}
/**
* 翻頁回調
* @param page
* @param pageCount
*/
@Override
public void onPageChanged(int page, int pageCount) {
Toast.makeText( MainActivity.this , "page= " + page +
" pageCount= " + pageCount , Toast.LENGTH_SHORT).show();
}
/**
* 載入完成回調
* @param nbPages 總共的頁數
*/
@Override
public void loadComplete(int nbPages) {
Toast.makeText( MainActivity.this , "載入完成" + nbPages , Toast.LENGTH_SHORT).show();
}
@Override
public void onLayerDrawn(Canvas canvas, float pageWidth, float pageHeight, int displayedPage) {
// Toast.makeText( MainActivity.this , "pageWidth= " + pageWidth + "
// pageHeight= " + pageHeight + " displayedPage=" + displayedPage , Toast.LENGTH_SHORT).show();
}
```
㈢ 求教誰會使用Android-Pdf-Viewer-Library這個開源框架
1.新建項目,去官網下載zip包,解壓,打開releases文件,把裡面最新的jar包,考入項目工程libs目錄下,引入包。
2.通過1,就可以使用了,很簡單,下面是自己寫的demo,用它提供的各種不同方法完成從伺服器獲取一個json數據:
㈣ android 解析pdf文件 有什麼好的開源框架
PDF操作類庫 iText
iText是一個非常著名的能夠快速產生PDF文件的Java類庫。支持文本,表格,圖形的操作,可以方便的跟 Servlet 進行結合。
Java的PDF處理類庫 PDFBox
PDFBox是Java實現的PDF文檔協作類庫,提供PDF文檔的創建、處理以及文檔內容提取功能,也包含了一些命令行實用工具。 主要特性包括: 從PDF提取文本 合並PDF文檔 PDF 文檔加密與解密 與Lucene搜索引擎的集成 填充PDF/XFDF表單數據 從文本文件創建PDF文檔
Android PDF 閱讀器
Android PDF Viewer 是Android平台下的PDF閱讀器。更多Android PDF 閱讀器信息
純Java的PDF閱讀器 PDF Renderer
PDF Renderer 是一個開源的純 Java 的 PDF 文檔渲染和閱讀器,使用 Java2D 技術。PDF Renderer 將 PDF 渲染到 Swing 面板,也可繪制到其他 Graphics2D 的實現(可方便生成各種格式的圖片)。需要注意的是 PDF Renderer 並不能幫你生成 PDF 文檔。
㈤ Android PDF讀取後實現翻書效果
網頁鏈接這個?沒做過,可以看一下原文
㈥ 如何在android上嵌入mupdf作為pdf閱讀器
MuPDF目前在android的pdf閱讀領域,應該是用得最多的那類之一。特點:小,功能全,文檔比較豐富。
mupdf打包需要注意的事
1. ubuntu注意當前目錄位置,例如有的掛載盤沒有許可權,sudo make也沒有用。
2. mupdf的platform/android是編譯android所需要操作的目錄。裡面有一個README,其中一步是生成genarated目錄的。這步必須要做。也就是到mupdf根目錄,進行make generate,會生成這個目錄。然後把這個目錄復制到platform/android下面。
3. 修改local.properties也是必要的
4. android目錄下的jni/Application.mk也需要修改一下, APP_PLATFORM=android-8 APP_ABI := armeabi
APP_ABI默認是armeabi-v7a,這個是生成不同的cpu的so文件用的。 一般會生成兩個分別放在lib中。
5.然後在android目錄下直接ndk-build就OK了。會生成一個obj目錄。mupdf.so文件就在裡面了。
㈦ 《Android程序設計Android程序設計》pdf下載在線閱讀,求百度網盤雲資源
《Android程序設計》(Zigurd Mednieks)電子書網盤下載免費在線閱讀
鏈接:https://pan..com/s/1AbudOHIhnJ5-KQH-jLNBYw
書名:Android程序設計
作者:Zigurd Mednieks
譯者:祝洪凱
出版社:機械工業出版社華章公司
出版年份:2013-3-1
頁數:456
內容簡介:
如何才能構建設計良好的Android應用?通過本書提供的權威指南,深入探索Android核心模塊及其API,了解如何創建可以運行在一系列Android設備上的出色的應用軟體。本書將帶你探索行之有效的應用設計和實施方式,包括一些應用框架,你可以把這些框架作為自己項目的起始點。
深入感測器、本地開發、3D圖形和許多其他主題,並發現如何在選擇的平台上構建應用程序。如果你要進階到高級程序員,你將學會如何創建良好的Android應用程序。
作者簡介:
Zigurd Mednieks是領先的OEM、企業和創建基於Android系統的創業投資顧問。
Laird Dornin是一家大型無線運營商的高級工程師,在Java、Android、J2ME、SavaJe和WebKit方面有豐富的經驗。
G.Blake Meike是一位經驗豐富的開發人員,為移動和服務端平台構建Java應用有豐富的經驗。
Masumi Nakamura是Where Inc.的Big Data和Recommendations組的首席架構師。
㈧ android 平台如何實現對PDF文件的編輯操作
手機可以對PDF文件編輯,不過基本都是在電腦上操作,手機以迅捷PDF閱讀器為例,
在首頁打開PDF文件,點擊左邊第1個就可以編輯PDF文件,當然旁邊還有很多功能,
手機不怎麼編輯PDF文件,電腦編輯PDF文件比較多,這是手機編輯PDF文件的方法,還是在電腦上編輯比較方便,望採納。
㈨ 《Android系統服務開發》pdf下載在線閱讀,求百度網盤雲資源
《Android系統服務開發》([韓] 金大佑)電子書網盤下載免費在線閱讀
資源鏈接:
鏈接:
書名:Android系統服務開發
作者:[韓] 金大佑
譯者:邸春紅
出版社:人民郵電出版社
出版年份:2015-2
頁數:424
內容簡介:
•基於Jellybean(4.1.2)版本的Android系統服務
•線程間通信(Inter-Thread Communication)必備知識(Message、Message Queue、Looper、Handler等)
•針對進程間通信(Inter-Process Communication)的UNIX套接字使用方法
•守護進程程序結構
•面向移動通信網路的通信棧:RIL、通信框架、USIM
•Android的Power Management Service
作者簡介:
金大佑
西江大學電子工程學士及碩士學位。大學時期沉迷於Linux,並創建了Linux社團。曾參與LG電子Android項目,目前在瑞薩移動參與Android LTE手機項目。雖然熱衷於Android開發,但目前仍在使用非智能手機。主要關注領域是Android平台、SW設計以及ARM架構。希望有一天可以將創建開源項目作為個人愛好。
朴宰永
高麗大學無線電工程學士及碩士學位,進入LG電子後,至今一直從事手機開發業務。十餘年開發過程中,從與硬體相關的BSP業務到UI業務,乃至批量生產相關業務均有涉獵,積累了豐富經驗。比較關注的領域是無線通信、移動平台、ARM架構、USIM、電源管理。今後想通過授課對社會做出貢獻。
文炳元
曾在LG電子參與手機開發,目前在游戲公司負責數據分析。認為程序員的能力不僅在於了解豐富的知識,更在於能夠找到解決問題的方法。現在仍然不斷努力,希望每天都有新突破。
陳家林
Marvell高級研發經理,有7年多智能手機平台研發經驗,專注於Android系統平台,了解系統架構,熟悉多個子模塊。尤其在安全領域,知識體系涉及硬體、操作系統、框架層以及應用層,並多次在公開會議、論壇進行演講。興趣廣泛,愛好電影、籃球、檯球、創意和科技數碼產品等。