㈠ 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系统平台,了解系统架构,熟悉多个子模块。尤其在安全领域,知识体系涉及硬件、操作系统、框架层以及应用层,并多次在公开会议、论坛进行演讲。兴趣广泛,爱好电影、篮球、台球、创意和科技数码产品等。