当前位置:首页 > 编程学习资源 >

Android开发常用基础公共库

大小:7.5 MB已被762人关注

Android开发常用基础公共库是一个不错的学习资源,大小为7.5 MB,由徐宛畅 提供,Android类资源中评分为7.5。

Tags:android Android公共库 

资源介绍

Android开发常用基础公共库(mvp/mvvm/retrofit/rxjava/socket/ble/多语言)

心得笔记

给大家精选了网上关于《Android开发常用基础公共库》的学习笔记心得及相关实例内容,值得大家学习参考。

Android bdflow数据库神器的使用

今日观看别人源码的时候偶然间发现了一个很好用的数据库神器,在这里分享一下。

什么是dbflow?

dbflow是Android SQLite ORM的一个使用注解操控的工具库。简单说就是对sqlite数据库进行操作的一个java库。

ORM(Object-relational mapping),中文翻译为对象关系映射,是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。

为什么使用dbflow?

1、 速度

基于AnnotationProcessing(注解处理器),在编译时生成代码,运行时性能优良,通过复用对象以及缓存机制,得到不错的速度体验。

2、 扩展性

数据表单映射到数据对象,通过该对象继承Model类,一般的话继承BaseModel类就可以,对类内成员添加注解生成所需要的表单。

3、 查询语句

如果你使用过greenDao等其他的库的话,查询语句都非常接近SQL语句。

4、 基于sqlite

不限制平台,有sqlite的地方就可以使用dbflow。

5、 开源

源码是个好东西,有能力的人可以看看。https://github.com/Raizlabs/DBFlow

怎么使用dbflow

配置环境

不管是想学习什么东西,环境就是个主要东西,那对于一个三方库来说第一步就是导入类库。

首先在主要的build.gradle中添加maven地址:

allprojects {
 repositories {
     maven { url "https://jitpack.io" } }
}

其次在基类module中添加依赖:

复制代码 代码如下:

def dbflow_version = "4.2.4" dependencies {     annotationProcessor "com.github.Raizlabs.DBFlow:dbflow-processor:${dbflow_version}" compile "com.github.Raizlabs.DBFlow:dbflow-core:${dbflow_version}" compile "com.github.Raizlabs.DBFlow:dbflow:${dbflow_version}" compile "com.github.Raizlabs.DBFlow:dbflow-rx2:${dbflow_version}" compile "com.github.Raizlabs.DBFlow:dbflow-sqlcipher:${dbflow_version}" }

如果需要添加kotlin的代码的话查看上文的源码地址下方有说明。

使用

在Application中添加init

FlowManager.*init*(this);

创建数据库

@Database(name = DbFlowData.*DBNAME*,version = DbFlowData.*VERSION*) 
public class DbFlowData {
 public static final String *DBNAME*="DbFlowData";
 public static final int *VERSION*=1; 
}

使用注解Database,name数据库名称 version数据库版本

创建表单

@Table(database = DbFlowData.class)
 public class DbFlowModel extends BaseModel { 
@PrimaryKey(autoincrement = true) public int id; 
@Column public String name;

 public int getId() { return id; } 
public void setId(int id) { this.id = id; } 
public String getName() { return name; } 
public void setName(String name) { this.name = name; }

}

使用注解Table database从属数据库对象,表单属性使用各类注解,PrimaryKey主键,Colum列。

注意:这里我们继承的 BaseModel 是 DBFlow 给我们提供的,是可以不继承的,差别仅仅增删改查的操作上有所不同。

创建完后,点击Build->make,会在..\build\generated\source\apt\debug下生成必要代码。

插入:

创建一个表单对象,赋值完,调用save方法即可插入操作。

复制代码 代码如下:
DbFlowModel dbFlowModel = new DbFlowModel(); dbFlowModel.name = name; dbFlowModel.save();

删除:

类似于sql语句的代码进行操作

SQLite.*delete*()
 .from(DbFlowModel.class)
 .where(DbFlowModel_Table.*id*.eq(id), DbFlowModel_Table.*name*.eq(name))
 .execute();

查询:

这个有很多复杂的查询操作,想知道详细的还是看官方文档。

复制代码 代码如下:
List<DbFlowModel> list = SQLite.*select*().from(DbFlowModel.class).queryList();

更新:

都是类似的。

SQLite.*update*(DbFlowModel.class)
 .set(DbFlowModel_Table.*name*.eq("PXXXX"))
 .where(DbFlowModel_Table.*name*.eq("P0000"))
 .execute();

注意:新建表单后,需要对数据库的version进行升级,不然会报错的。

这里主要简单的介绍一下dbflow的基本使用,主要用作分享和记录一些好用的东西,

源码:https://github.com/xiaogoudandan/WilliamApp

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

展开 +

收起 -

相关资源

Android游戏开发大全
Android游戏开发大全 超清第3版 立即下载
深入浅出Android软件开发教程
深入浅出Android软件开发教程 高清版

《深入浅出Android软件开发教程》 是面向Android初学者的教程,介绍设计开发Android应用程序的基础理论和实践方法,讲解Android系统的体系结构、Java语言与面向对象编程基础、XML基础、开发环境

立即下载
Android底层开发实战
Android底层开发实战 高清版

《 Android底层开发实战 》分为四个部分:一部分为预备知识篇,简要介绍嵌入式系统的定义与软硬件开发以及Android开发环境的搭建。第二部分为系统结构篇,主要介绍Android系统的源码结构、内

立即下载
OPhone/Android游戏开发与推广指南
OPhone/Android游戏开发与推广指南 高清版

《OPhone/Android游戏开发与推广指南》 一书系统地介绍了游戏开发的知识,结合案例把游戏引擎、重力感应游戏、飞行战机游戏、3D游戏和联网游戏深入浅出地呈现给开发者。更难能可贵的是,作

立即下载
音视频开发进阶指南:基于Android与iOS平台的实践
音视频开发进阶指南:基于Android与iOS平台的实践 扫描版

本书采用从零开始,逐级深入的方式写作,以项目实战为阶段性目标,外加实际生产环境下的特殊案例作为优化方案,让读者可以全方位掌握移动平台下音视频开发的大部分内容,感兴趣的可以

立即下载
高性能Android应用开发
高性能Android应用开发 高清版

性能问题在很大程度上决定了用户是否会使用一款App, 高性能Android应用开发 正是Android性能方面的关键性指南。全书共8章,主要从电池、内存、CPU和网络方面讲解了电池管理、工作效率和速度

立即下载
Android应用程序开发权威指南
Android应用程序开发权威指南 第四版

Android应用程序开发权威指南(第四版) 是Android应用程序开发领域的权威之作,由Android系统的资深专家执笔,深入浅出地讲解了Android应用程序开发平台的搭建、Android应用程序开发过程中的点

立即下载
Android项目开发范例大全
Android项目开发范例大全 影印版 立即下载
Head First Android开发
Head First Android开发 高清版

《Head First Android开发》 如果你有一个很好的想法,要开发一流的Android应用,这本书会帮你用zui快的速度构建你的第yi个实际应用。你会学到一些实践技巧,掌握如何建立应用的结构,如何设计

立即下载
Android应用案例开发大全
Android应用案例开发大全 超清第四版

Android应用案例开发大全 出版时间:2018 本书以讲解Android 手机综合应用程序开发为主题,通过11 个典型范例全面且深入地讲解了单机应用、网络应用、商业案例、游戏案例等多个开发技术。 全书共分12 章,详细介绍了3D 动态壁纸—百纳水族馆,LBS 类应用—掌上杭州,营销管理系 统—手机汽车4S 店,LBS 交通软件—百纳公交小助手,校园服务类应用—社团宝,校园辅助软件— 手机新生小助手,生活辅助类应用—美食天下,音乐休闲软件—百纳网络音乐播放

立即下载
下载地址:百度网盘下载
网友留言
3小时45分钟前回答

React-Native实现ListView组件之上拉刷新实例(iOS和Android通用)

在web应用中,上拉刷新加载更多,下拉刷新列表的操作非常常见,那么在React-Native中是如何实现呢,我们具体来看一下 ReactNative提供了RefreshControl下拉刷新组件,但是没有提供上拉刷新组件,上拉刷新在App中是很常用的。 今天我们来实现一个iOS和Android通用的上拉刷新功能。 下面简要介绍下我实现的思路。 思路: 1、常量定义: const moreText = "加载完毕"; //foot显示的文案 //页码 var pageNum = 1; //每页显示数据的条数 const pageSize = 10; //页面总数据数 var pageCount = 0; //页面List总数据 var totalList = new Array(); //foot: 0 隐藏 1 已加载完成 2 显示加载中 2、定义ListView ListView enableEmptySections={true} dataSource={this.state.dataSource} rende……

159小时14分钟前回答

js判断手机系统是android还是ios

话不多说,请看代码: script type="text/javascript"var u = navigator.userAgent;var isAndroid = u.indexOf('Android') -1 || u.indexOf('Adr') -1; //android终端var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端alert('是否是Android:'+isAndroid);alert('是否是iOS:'+isiOS);/script 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持码农之家! ……

码小辫

乌寄翠 提供上传

资源
35
粉丝
26
喜欢
109
评论
12

Copyright 2018-2021 www.xz577.com 码农之家

版权投诉 / 书籍推广 / 赞助:520161757@qq.com