自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (3)
  • 收藏
  • 关注

原创 算法之简单排序

本篇博客主要介绍三种简单排序 1.冒泡排序   2.选择排序 3.插入排序  (这里是通过int 类型的数组进行演示)1.冒泡排序 冒泡排序是一种非常简单的排序方法,他的思想非常简单很容易可以实现。冒泡排序是将相邻的两个数据进行比较,大的向下沉,小的向上冒(即位置交换)。java代码示例:public class BubbleSort { private int

2017-07-24 17:31:55 249

原创 数据结构之--------数组

数据结构中最基本的一个结构就是线性结构,而线性结构又分为连续存储结构和离散存储结构。所谓的连续存储结构其实就是数组。数组满足 添加,查找,删除三个功能 。数组的优点是插入快,如果知道下标也可以快速存取。缺点则是查找慢,删除慢,数组大小固定

2017-07-24 17:16:50 296

原创 java中对象的创建和销毁

最近在看Effective Java 一书 该文是第二章的读后感 一 对象的创建在java中对象的创建 一般都都是使用new 关键字 +对象的构造方法 java对象中有一个或多个构造方法,可以生成 不同类型的对象 例:public class Person implements Serializable { private String name ; p

2017-05-26 10:14:48 2050

原创 手写mvp框架

MVP的思想的核心就是View层和Model的分离,而Presenter层作为连接View和Model层的中间类,负责处理UI逻辑;而View层和Presenter层之间通过接口的方式进行互相引用我们不妨把MVP模型分为4种角色:1、View层2、ViewInterface层3、Presenter层4、Model层下面我们来通过以上思想来实现一个简单的listview

2017-04-19 20:51:13 621 1

原创 浅谈android mvc、mvp架构思想

MVC概念       MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。其中M层处理数据,业务逻辑等;V层处理界面的显示结果;C层起到桥梁的作用

2017-04-19 10:37:12 289

原创 我的Android studio 编译ffmpeg之路

最近在学习使用android studio 的CMake 插件  进行编译ffmpeg   由于是自己单独摸索 出现了一系列的坑  特此记录一下 。1.CMakeLists 脚本配置的学习阶段  没出啥问题   慢慢的就配置好了  but。。。  由于so库版本不全  gradle 中没有配置好格式  导致 打包失败(我只有arm版本的so库 需要在gradle 中配置abiFilte

2017-01-10 22:10:04 690

原创 Android studio SO 导入巨坑!!必须将so文件放入jniLibs 目录下

今天在尝试进行使用Android   studio  中的Cmake 对ffmpeg 进行编译的时候 出现了一个坑爹的bug该bug 导致 安装好app后进入页面 秒退    错误原因是找不到指定so库 最开始认为是  Cmake 或者Gradle  配置出错   后阿来经过仔细检查没有找出原因。。。。。最后去网上下载了另一个人上传的编译好的文件 打开后 烤出其so 库

2017-01-10 14:22:52 12129 6

原创 Android 滑动

在Android  开发中 由于手机大小的限制,必定很多时候都会遇到需要自定义 滑动来展示所有内容, 如使用自带控件 ListView  scrollview  属性动画等     首先 简单的介绍下 正常情况下在Android 中 实现滑动的几种方法     1.layout            LayoutParams       上面这两种方法使用比较类似    

2017-01-07 10:45:59 303

原创 Android studio cMake 使用详解

本人最近在学习ndk 开发,由于用惯了AS 之后不想再去试用Eclipse  所以最近一个人再折腾 使用Android Studio 进行NDK 开发(使用ffmpeg进行练手)  由于是一个人自己再折腾,再加上白天也比较忙,晚上还经常加班 折腾了好久才搞明白废话不多说 开始NDK 流程  一.创建一个NDK 工程    这一部其实非常简单,只需要在

2017-01-05 20:52:59 949

原创 H5 微信开发 小bug

场景    搜索栏 使用路由器  点击后跳转到另一个页面进行搜索    然后点击确定按钮  搜索内容bug1.  软键盘没有弹下,history.back 后 搜索出来的内容 高度发生改变 。。  手动设值高度  软键盘 收回2.搜索 history.back 后  搜索出来的页面 所有点击时间无法触发    错因:  软键盘 导致  修改方案:先讲软键盘完全弹

2017-01-04 15:36:18 531

原创 Android 基础-------自定义控件

关于Android 的自定义控件    在Android 中自定义控件可以分为三种  1.android 原生控件的扩展2.组合控件(增加新的属性等)3.通过重写onMearse  onLayout onDraw以及OnTouch  完全自定义的全新控件  一  原生扩展空间   该种模式的自定义控件是 由于原生控件无法完全满足需求,从而对对

2016-12-21 23:45:15 340

原创 使用ffmpeg进行解码的基本流程 和几个重要函数

最近学习了如和使用 ffmpeg进行解码视频和音频 以及转码等 其实在使用ffmpeg的流程基本都是相同的 1. 将输入的文件转为常量字符(音频或者视频文件)2.注册ffmpeg的组件(在这里可以通过使用av_regiest_all()来进行偷懒操作,将所有的组件都进行注册)3.注册晚组件之后就开始封装全局的上下文AVFormatContext  (使用avformat_a

2016-12-21 13:03:27 1008

原创 android activity 跳转 空白问题(貌似看起来没有问题)

昨天项目中新增了 部分功能 遂新建了一个activity 页面   然后在调试的时候 跳转到该页面却是空白页面   。1.首先 检查了清单文件的配置(如果没配置 该页面会崩溃  而不是白页)2.使用debug 在setContent方发处打断点  发现   并没有运行该方法3.最后检查到了在创建activity 的时候 通过android studio 的代码补全  误将o

2016-12-13 15:02:17 3228 1

原创 Linux 配置NDK 和ffmpeg

首先要声明的是 我是购买的阿里云主机 (阿里云主机的xShell 和vim都已经配置好了) 1.安装vim 使用命令:sudo apt-get install vim-gtk如果安装不成功 需要使用apt-get update 更新一下在进行安装 2.下载ndk 和ffmpeng 如果和我一样是使用云主机的话需要上传 否则就需要下载 linux 下解压 tar.gz 命令 tar

2016-12-10 15:24:04 420

原创 ffmpeng 脚本 编译

今天你在编译ffmpeng 的时候 在网上下载了一个脚本 被坑了。。。。原因在于 该sh脚本的每行脚本前面带有空格。。。。解决办法 :删除每行多出来的空格(改空格位于每行的开头)

2016-12-10 14:20:44 651

原创 Linux 环境变量出错补救

今天在进行ndk 环境变量配置的时候 在配置环境变量的时候 使用“;”(分号)而不是“:”(冒号)进行变量分隔 导致 linux 下path 环境变量出错 使得大部分命令都无法正常使用。补救方法 1.输入”export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin” 2.重新使用 vim ~/.bas

2016-12-10 13:02:35 725

原创 Volley 源码解析

volley框架 是基于 接口 的框架 拥有很高的拓展性多用组合,少用继承;针对接口编程,不针对具体实现编程。优秀框架的设计,令人叫绝,受益良多。Volley框架的总体设计:1.请求队列2.缓存 还是非缓存3.网络事件分发4.处理数据volley的网络请求流程 通过请求队列请求网络 然后判断一下是否有缓存,如果有缓存就走缓存的路线 没有就走非缓存路线

2016-11-15 20:36:07 276

原创 Handler原理分析

Message 实现了Parcelable 接口   可以被IPC传递有单例模式的获取Message序列化以及读取方法自身带有一些参数  如 what  target(handler)   callback(Runnable) 等使用池 缓存模式    next 指向下一个缓存目标  缓存池 设计较为简单   1.首先在第一次使用的时候因为没有缓存 所以只能new一个Mes

2016-10-17 20:31:01 222

原创 C语言基础------------数据类型

一、 基本类型 C语言中的基本数据类型与其他语言没有什么区别 ,不做过多解释.美中数据类型所占用的字节数 可以使用sizeof方法获取 如:int类型的长度为sizeof(int)二、指针 在C语言中,指针是应用场景比较多的数据类型,也是相对较难理解的地方. 其实 指针还是比较简单的.指针是存储是内存地址值的变量. 指针是一种特殊的变量,他的内部存储的是内存地址值.

2016-08-27 17:49:42 419

原创 Android基础--------零散小知识

Hanlder机制   andorid  异步机制   俗称handler机制handler机制包括message     消息        handler  句柄     messageQueue 消息队列   looper  轮询器          message                    messagehandler -------------

2016-07-14 14:10:43 214

原创 Android基础--------广播

Broadcast Receiver 广播算是比较特殊的一个组件  它在使用的时候有两种注册模式   一种是静态注册 一种是动态注册  静态注册就是在清单文件中注册     这种注册方法有些频繁使用的广播是不支持静态注册的 因为每次都要便利清单文件  同时 广播的触发条件又较为频繁(如屏幕是否关闭等)  这种注册的广播持续时间长(全程有效)动态注册是在代码中注册

2016-07-14 13:43:50 241

原创 Andorid基础--------数据处理

数据持久化有些信息需要保存在本地三种方法  1.保存在文件中,需要的时候进行读写   io 比较复杂麻烦 不推荐使用 2.保存在SharedPreFerence中3.保存在数据库中SQLite第一种方法是java中的方法,利用流将要保存的数据写入到某个目录下的文件中,在需要的时候进行读写。Android 中提供了一种openFileoutput()的方法

2016-07-14 13:42:41 277

原创 Android基础------图形和图像处理

Drawable  简单使用 在xml中 src  Drawable文件夹下的图片名称          代码中getResource().getDrawable(R.drawable.xxx);bitMap  bitMap 是位图  在处理图片的时候都不是在原图进行处理 都是重新画一张bitmap后在进行处理Bitmap 生成 一般使用BitmapFa

2016-07-14 13:36:13 381

原创 Android基础--------fragment

fragment 俗称碎片    主要容器有两种    一种是FrameLayout   另一种是ViewPager  fragment比起activity方便之处有很多  比如 动态添加  移除 等 1.在frameLayout 中    具体步骤:   1.获取一个fragmentManager    2.开启事务   3.创建一个fragment实例

2016-07-14 11:11:46 245

原创 Andorid基础------Service

Service是安卓的四大组件之一,如果说Activity是Andorid 的前台,那么Service就是Android的后台。Service的使用: 1.声明: 在清单文件(AndroidManifest.xml)中进行注册 2.继承一个Service的 基类 :如 继承Service 3.复写Service中的方法: Service中生命周期的方法 4.启动Service :使用I

2016-07-09 15:35:37 224

原创 Android 基础 -------Activity

Activity 是安卓的四大组件之一,是直接与用户进行交流的页面。Activity的使用: 1.声明 Activity 在使用的时候需要在清单文件(AndroidManifest.xml)中进行注册 2.继承一个Activity的 基类 如:ListActivity、ExpandableListActivity、PreFerenceActivity 、launcherActivity

2016-07-09 14:48:01 285

原创 重新理解OOP(java)

面向对象   面向过程   面向对象主流  对象   一些事物的集合体  具有某些属性和 功能  对面的三大特征   继承  封装  多态     分别解释三大特征   举例应用 万物皆对象

2016-05-03 11:32:01 634 5

Android studio CMake 编译ffmpeg SO库 头文件 和 CMakeLists

Android studio CMake 编译ffmpeg SO库 头文件 和 CMakeLists

2017-01-10

Volley 源码(5.0系统)

volley源码

2016-10-18

android handler 机制 源码

android handler 机制源码 (带部分汉语注释)

2016-10-17

空空如也

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

TA关注的人

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