自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 Android四大组件之ContentProvider

要解决的问题:有两个工程A和工程B,工程A中通过SQLiteOpenHelper的子类创建了一个自产自销的数据库,工程B中没有数据库,但是工程B想要与工程A共用同一个数据库。为实现以上目标,需要2个系统类:ContentProvider 内容提供者 Andord四大组件之一ContentResolver 内容观察者 两者结合起来可以进程间(多个工程之间)数据的共享使用方式:工程A中

2017-02-04 22:07:00 333

原创 Android四大组件之Service

一、特点:1. 是Android的四大组件之一2. 有生命周期方法3. 可以在长期在后台进行操作的类4. 是Context的子类二、常见作用 :1. 音乐播放器,可以在服务类中控制并处理音乐的播放2. 长期在后台下载的操作,如:全选下载40集电视剧3. 长期在后台处理一些监控类的事情三、使用方式:开启服务通过startService方法启动的服务就叫做开启的服务特点1.

2017-01-08 18:48:04 302

原创 Android四大组件之BroadcastReceiver

一、概述二、使用步骤 代码中接收广播数据的实现步骤:1. 创建一个BroadcastReceiver的子类 (该子类就相当于收音机)2. 在子类中重写onReceive方法,每当接收到广播数据时,系统都会自动调用此方法3. 注册广播接收者(注册BroadcastReceiver的子类),作用相当于将收音机调频到指定频道接收数据注册广播时,分为2中方式:方式1: 静态注册方式2:

2017-01-05 20:40:04 332

转载 三级管原理

三级管原理https://blog.csdn.net/qq_42282258/article/details/82085477

2020-11-03 11:11:10 268

原创 BSP开发

将android移植到特定硬件平台上,其核心是bsp的搭建工作,bsp是板级支持包,并不是特定某个文件,而是从功能上理解的一种硬件适配软件包,它的核心就是:linux内核硬件相关部分(主要是linux device drivers);android用户空间的硬件抽象层。(HAL,hardware abstract layer).linux驱动程序工作在内核空间,android的HAL工作在用户空间,有了这两个部分的结合,就可以让庞大的android系统运行在特定的硬件平台上。在具有了特定的硬件平台

2020-05-20 09:13:46 5935

原创 Android驱动入门

Android驱动入门 https://blog.csdn.net/brantyou/article/list/1?t=1驱动入门

2020-05-19 11:52:24 242

原创 Android input系统框架

https://www.cnblogs.com/weiqifa/p/9604149.html添加链接描述

2020-03-27 15:57:41 314

原创 Android系统移植与平台开发

Android系统移植与平台开发https://blog.csdn.net/mr_raptor/article/details/30113417图片: 带尺寸的图片: 居中的图片: 居中并且带尺寸的图片: 当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。如何插入一段漂亮的代码片去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.// An highl...

2020-03-25 10:03:06 121

原创 Android9.0保活后台service

Android8.0之后Service变为后台后很开就会被杀死。因此要采取一定的措施进行保活。启动service:Intent i=new Intent(context,TestIntentService.class);if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.O){context.startForegroundService(i);...

2020-01-19 10:02:17 3101

原创 Android Settings 返回上一级

#Android Settings 返回上一级可以直接改framework层代码。这里主要说如何使用上层应用直接跳转,但app必须设置为为 android:sharedUserId=“android.uid.system”如进入系统wifi界面Intent wifiSettingsIntent = new Intent();wifiSettingsIntent.setComponent(...

2020-01-19 09:51:52 927 1

原创 网络请求框架(OKHttp3.0)

OKHttp实现网络请求之Get访问方式 OKHttp实现网络请求之Post访问方式同步方式:第一种访问方式_提交键值对数据 服务端返回的数据,封装在ResponseBody响应体对象中,通过不同方法可以获取字符串,字节数组或流对象。 第二种访问方式_提交JSON字符串异步方式:第一种访问方式_提交键值对提交文件 提交MultipartOKHttp下载

2017-03-14 10:31:51 523

原创 Picasso的用法

public class MainActivity extends AppCompatActivity implements View.OnClickListener { private Button btn_net; private Button btn_asset; private ImageView iv_show; private String mUrl =

2017-03-14 08:31:57 457

转载 常用排序算法总结

常用排序算法总结(一) Posted on 2016-03-28 22:13 SteveWang 阅读(6475) 评论(1) 编辑 收藏   目录冒泡排序  鸡尾酒排序  选择排序插入排序二分插入排序  希尔排序  归并排序堆排序快速排序   我们通常所说的排序算法往往指的是

2017-02-27 19:42:24 317

原创 Android广告图片轮播控件之banner

https://github.com/youth5201314/banner

2017-02-23 16:14:29 402

原创 Android Studio常用的快捷键

Android Studio常用快捷键编辑常用快捷键 按键 说明 Ctrl(Command)+C 复制当前行或选中的内容 Ctrl(Command)+D 粘贴当前行或选中的内容 Ctrl(Command)+X 剪切当前行或选中的内容 Ctrl(Command)+Y 删除行 Ctrl(Command)+Z

2017-02-21 20:25:45 323

原创 ButterKnife

1,在project 级别 中的build.gradle中添加 classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’2,在module级别 中的build.gradle中 添加 apply plugin: ‘android-apt’3,在module级别的build.gradle中dependencies中 引入两个依赖库 co

2017-02-21 20:22:46 295

原创 Volley框架的讲解

什么是Volley(了解)Volley是Ficus Kirpatrick在Google I/O 2013发布的一个处理和缓存网络请求的库,能使网络通信更快,更简单,更健壮。Volley名称的由来: a burst or emission of many things or a large amount at once。在Google IO的演讲上,其配图是一幅发射火弓箭的图,有点类似流星。见下图

2017-02-20 23:20:30 345

原创 Android面试

https://github.com/JackyAndroid/AndroidInterview-Q-A/blob/master/README-CN.md#%E6%8E%A5%E5%8F%A3%E7%9A%84%E6%84%8F%E4%B9%89-%E7%99%BE%E5%BA%A6

2017-02-16 17:05:19 264

原创 网络框架之Retrofit2

网络框架之_Retrofit2概述Restrofit框架是Square公司出品的网络框架;运用注解和动态代理,极大的简化了网络请求的繁琐步骤,非常适合处理Restful网络请求。主要特点: 性能好,处理快,使用简单。目前android最流行的Http库之一(速度比Volley更快)使用Rest api很方便支持NIO(新的IO的API,可以替代标准的Java IO API)Retrofi

2017-02-15 20:04:53 299

原创 Gsonformat

是AndroidStudio中的插件.settings/plugins安装即可。

2017-02-15 18:32:39 294

原创 单例模式

懒汉式 a、私有化静态成员变量(当前类类型) b、私有化构造方法 c、对外提供一个公开的静态方法(getInstance)返回唯一的实例 饿汉式 a、私有化静态成员变量(当前类类型),并创建对象 b、私有化构造方法 c、对外提供一个公开的静态方法(getInstance)返回唯一的实例

2017-02-08 09:29:59 242

转载 Set 遍历的三种方法。

1.迭代遍历:Set<String> set = new HashSet<String>();Iterator<String> it = set.iterator();while (it.hasNext()) {  String str = it.next();  System.out.println(str);}2.for循环遍历:for (String str : set) {

2017-02-08 09:17:18 10393 1

转载 Handler一定要在主线程实例化吗?new Handler()和new Handler(Looper.getMainLooper())的区别

一个帖子的整理:Handler一定要在主线程实例化吗?new Handler()和new Handler(Looper.getMainLooper())的区别如果你不带参数的实例化:Handler handler = new Handler();那么这个会默认用当前线程的looper一般而言,如果你的Handler是要来刷新操作UI的,那么就需要在主线程下跑。情况:1.要刷新UI,hand

2017-02-07 23:14:50 277

原创 RecyclerView的用法

回顾ListView概述一句话:在有限的空间中显示大量的列表集合的控件ListView的使用步骤(question)1.数据集2.适配器Adapter备注:其实ListView是一个MVC的模式,M--Model 数据集V--View ListViewC--Controller 适配器RecyclerView的介绍概述官方的介绍,该控件用于在有限的窗口中展示大量数据集。正如我们刚才介

2017-02-06 19:12:59 241

原创 Loader加载器的使用

特点以及作用:作用类似于AsyncTask异步任务,在封装好的Loader使用过程中,提供一个现成的在子线程中执行的方法用于进行耗时操作,并且同时提供一个会在子线程结束后自动调用的方法用于更新UI页面虽然Loader也能够读取网络数据,但是一般情况下,使用Loader多用于读取大量的数据库数据Loader中指定的加载任务会在页面经历onPause—onStop—onRestart—onStar

2017-02-05 14:07:28 511

原创 SQLite(数据库)的应用

数据库的特点及作用:1.一个数据库中可以存储多张数据表2.每一张数据表的作用。类似于excel中表格的作用,即用于存储n多计较复杂的数据如:存储学生信息 3.数据库的种类:MySql 多用于处理电脑端,网页端的数据库Oracle 与MySql作用类似,只不过能够比MySql存储更多数据,处理更复杂的数据SQLite 轻量级数据库,多用于负责处理手机端或者平板电脑端的数据库

2017-02-04 11:06:33 555

原创 数据存储(SharedPreferences)(内部存储及外部存储)

作用 :处理将数据存储到本地的操作注意:本地指的不是d盘,f盘,而是手机的机身内存和外部存储卡控制数据存储,取出的方式:SharedPreferences内部存储外部存储 (内部存储和外部存储合起来也可称为文件存储)网络(即数据存储服务端中,客户端想要读取数据需连网)SQLite数据库(1)SharedPreferences 轻量级存储特点:1.生成的本地存储文件的类型固定为xm

2017-02-03 19:48:20 987

原创 Notifycation(通知)的使用

特点及作用:状态栏位置下拉后的内容,用于显示通知列表.使用例子:当有未读的微信或者短信时,可以在通知栏中看到提醒 播放器播放音乐时,会在通知栏上显示并控制音乐播放学习目标:向通知栏中添加新的通知信息使用方式:大体使用套路:初始化NotifycationManager对象,稍后用于发送通知信息封装通知信息中要显示的具体内容通过NotifycationManager对象调用notify方法发送第

2017-02-03 15:15:20 660

原创 Menu 菜单的使用

分类:Options MenuContext MenuPopupMenu一、Options Menu:特点以及作用:当点击Menu键或者标题栏右上方的 图标时,在页面右上方或者页面的底边缘(很老的手机上)的列表就是Options Menu的菜单列表(有时候菜单列表中的item选项也可直接显示在标题栏上)使用方式: 1. 在res—menu文件夹内创建xml文件,以menu作为根标签

2017-02-03 12:24:51 807

原创 Dialog的用法

特点:不会自动消失,除非点击返回值或者关闭按钮分类:1.ProgressDialog 进度对话框 2.AlertDialog 提示对话框 3.TimePickerDialog/DatePickerDialog 时间/日期设置对话框(1)TimePickerDialog的使用:

2017-01-31 11:38:07 372

原创 Toast的基本使用

一 特点:1 会自动消失的提示内容.2 默认的显示位置水平居中.3 屏幕靠下,水平居中的位置.二 使用(1)普通显示:/** * 通过makeText设置Toast的文本显示内容以及显示时长 * 通过show方法显示即可 * * 注意:0代表的不是0秒,而是LENGTH_SHORT,即

2017-01-27 16:56:32 352

原创 LinearLayout(线性布局)中weight的难点

一、首先我们先用 RelativeLayout (相对布局)实现一个效果,如下:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main"

2017-01-17 09:21:25 397

原创 AsyncTask异步任务

Android中的线程问题:1. 主线程(Main Thread),UI线程。直接写在onCreate等方法中的代码都是写在主线程的,主线程用于负责UI页面的显示效果以及逻辑顺序的处理功能2. 子线程(Worker Thread),工作线程, 凡是写在自己new Thread中的代码均是运行在子线程中的代码通常情况下,会在子线程中进行耗时操作为什么要在子线程中进行耗时操作??原因:Andro

2017-01-14 10:27:09 259

原创 遗传算法

遗传学基础 自然选择学说是进化论的中心内容,根据进化论,生物的发展进化主要由三个原因,即选择、遗传(基因杂交)、变异(基因突变)。选择决定生物进化的方向。在进化过程中,有的要保留,有的要被淘汰。自然选择是指生物在自然界的生存环境中适者生存,不适者被淘汰的过程。通过不断的自然选择,有利于生存的变异就会遗传下去,积累起来,使变异越来越大,逐步产生了新的物种。遗传是指子代总是和亲代相似。遗传性是一切生

2017-01-13 11:59:11 1827

原创 Android常用的系统广播的使用

 短信广播: 注册:<receiver android:name="receiver.SmsReceiver"> <intent-filter> <action android:name="android.provider.Telephony.SMS_RECEIVED"/> </intent-filter></receiver>权限: <uses-permi

2017-01-06 18:57:57 414

原创 (Genymotion)Error relaunching VirtualBox VM process:5解决方法

具体操作如下:

2017-01-04 22:03:01 8941 2

原创 Genymotion模拟器下载及安装步骤详解

访问网址:https://www.genymotion.com/,点击登录。进入注册页面。点击创建账户输入个人信息完成注册运行genymotion安装文件注意:点击取消,不要安装这个版本的Oracle VirtualBox. genymotion-2.8.0.exe这个版本是不带有Oracle VirtualBox的。暂时先不要启动Genymotion安装oravle virtual box(因

2017-01-04 20:06:22 7391

原创 Button按钮及其点击事件方式

Button按钮框架结构:一、继承结构由于Button是继承于TextView的,因此,TextView中的常用属性,Button也能使用二、两种点击方式方式一: 1. 在布局文件中给Button按钮添加onClick属性,属性值为任意字符串(此字符串用于设置按钮被点击时运行的方法的方法名)。 <Button android:layout_width="wrap_conten

2017-01-03 21:34:53 4502

原创 Android五大UI布局的特有属性

Android五大UI布局一、线性布局LinearLayout框架结构如下:独有属性:1、排列方向:vertical 竖向,horizontal 横向

2017-01-02 21:41:06 3944

原创 Android(UI)布局(文件)控件标签的通用属性

一、View和ViewGroup的概念Android的SDK中定义了一个View类,它是所有Android控件和容器的父类。二、Android中常用的UI布局1. LinearLayout 线性布局2. RelativeLayout 相对布局3. FrameLayout 帧布局,空白布局4. GridLayout 网格布局5. AbsoluteLayout 绝对

2017-01-01 22:35:36 2514 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除