自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

郭风朴(guofengpu)的Android影音专栏

IT路上的牛耕实践者

  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

转载 Android日志打印类LogUtils,能够定位到类名,方法名以及出现错误的行数并保存日志文件

在开发中,我们常常用打印log的方式来调试我们的应用。在Java中我们常常使用方法System.out.println()来在控制台打印日志,以便我们的调试。Android中有一个专门的类Log来实现在Android系统下日志的打印,更加方便我们定位程序出现问题的地方。    但是Android官方提供的Log类在实际项目使用中,也不是非常方便。当程序出现错误时,我们最希望的就是这个Log

2016-08-13 13:51:21 853

转载 浅析extern “C”的作用

浅析extern “C”的作用         关于extern “C”的作用和意思,网上资料已经有很多了(我也参考了几篇),不过我还是觉得有必要自己总结一下,毕竟“好记性不如烂笔头”嘛~~        到C标准函数库的头文件里看看,一般会经常看见有如下宏定义(除非你从来没有查看类似printf函数在头文件中的定义,就另当别论了:-()[cpp] view plain

2016-08-13 13:48:01 927

转载 android基本架构

Android其本质就是在标准的Linux系统上增加了Java虚拟机Dalvik,并在Dalvik虚拟机上搭建了一个JAVA的application framework,所有的应用程序都是基于JAVA的application framework之上。Android主要应用于ARM平台,但不仅限于ARM,通过编译控制,在X86、MAC等体系结构的机器上同样可以运行。android分为四个

2016-08-13 11:44:42 542

转载 Android HttpClient实例详解--用代码说话

版权声明:本文为博主原创文章,未经博主允许不得转载。 [java] view plain copy package alex.reader.ebook.bam;  import java.io.IOException;  import java.util.ArrayList;  import java.util.HashMap;  import ja

2016-08-13 11:07:49 967

转载 android中的数据库操作

android中的数据库操作      Android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作。 一、android内的数据库的基础知识介绍        1.用了什么数据库            android中采用的数据库是SQLite这个轻量级的嵌入式开源数据库,它是用c语言构建的。相关简介可以从链接查看。 

2016-08-13 10:55:19 613

转载 Android中的Menu(菜单)的三种类型菜单的学习

今天学习一下菜单组件,在Android中的菜单中有三种①:OptionMenu(选项菜单)②:ContextMenu(上下文菜单) ③:SubMenu(子菜单)         下面分别来学一下        一:OptionMenu(选项菜单) 当我们使用手机的时候,按着手机上面的Menu,弹出的菜单就是选项菜单。但是我们一次性能显示菜单选项只能是6个如果我们设置的超过6个时候,第六

2016-08-13 10:45:33 1700

转载 Android系统五大布局详解Layout

我们知道Android系统应用程序一般是由多个Activity组成,而这些Activity以视图的形式展现在我们面前,视图都是由一个一个的组件构成的。组件就是我们常见的Button、TextEdit等等。那么我们平时看到的Android手机中那些漂亮的界面是怎么显示出来的呢?这就要用到Android的布局管理器了,网上有人比喻的很好:布局好比是建筑里的框架,组件按照布局的要求依次排列,就组成了用于

2016-08-13 10:21:04 1179

转载 基础总结篇:Intent应用详解

看似尋常最奇崛,成如容易卻艱辛。北宋.王安石看似普通的事情其实最不同寻常,并不是简简单单就可以做好的;成功看起来似乎很容易,而成功的过程却充满着艰辛。对于我们认为很普通的事情,不屑一顾,就永远不会有长进,脚踏实地,就离成功又近一步;成功并不像看到的那么容易,寻找捷径是不可取的,我们往往要比别人付出更多的辛勤和努力。今天我们来讲一下Android中Intent的原理和应用。前面我们总

2016-08-13 10:08:21 558

原创 基础总结篇:创建及调用自己的ContentProvider

鍥而捨之,朽木不折;鍥而不捨,金石可鏤。戰國.荀子《勸學篇》若不能坚持到底,即使是朽木也不能折断;只要坚持不停地用刀刻,就算是金属玉石也可以雕出花饰。用今天的话来说就是:再容易的事情,没有锲而不舍的精神,都不可能做到;再难的事情,只要有坚持不懈的努力,都一定能够做到。希望我们在坚持理想的道路上都能够锲而不舍地雕刻自己的那块“金石”。今天我们来讲解一下如何创建及调用自己的ContentP

2016-08-13 09:48:26 725

转载 基础总结篇:ContentProvider之读写短消息

古之成大事者,不惟有超世之才,亦有堅韌不拔之志。北宋.蘇軾《晁錯論》我们的前辈中那些成就大事的人,不单单有过人的智慧和才能,也须有坚韧不拔的意志。试问没有坚韧的意志,如何写得出复杂的系统,如何创造出伟大的产品?作为程序员的我们,智慧和才能似乎不太欠缺,我们欠缺的也许是正是坚韧的意志,所以从今天起,锻炼自己的意志吧,在坚持理想的道路上,让这种意志给自己力量。今天我们来讲一下如何利用Conte

2016-08-13 09:43:15 904

转载 基础总结篇:ContentProvider之读写联系人

靡不有初,鮮克有終。《詩經》很多事情,绝大多数人都会在开始的时候满怀热情,而能坚持到底的却是寥寥无几。对待自己的目标,虎头蛇尾绝不可取,半途而废只会一无所成,我们必须持之以恒的做下去,坚持到底才能摘取胜利的果实。最近也忙了起来,忙着给自己充电,深知这项任务的艰巨,不是一天两天的事,所以也借用这句警言来告诫自己,坚持不懈的走下去。今天我们来讲解一下如何利用ContentProvider机

2016-08-13 09:41:14 651

转载 基础总结篇:BroadcastReceiver应用详解

問渠那得清如許?為有源頭活水來。南宋.朱熹《觀書有感》据说程序员是最爱学习的群体,IT男都知道,这个行业日新月异,必须不断地学习新知识,不断地为自己注入新鲜的血液,才能使自己跟上技术的步伐。今天我们来讲一下Android中BroadcastReceiver的相关知识。BroadcastReceiver也就是“广播接收者”的意思,顾名思义,它就是用来接收来自系统和应用中的广播。在

2016-08-13 09:38:40 556

转载 基础总结篇:Activity的task相关

古人學問無遺力,少壯工夫老始成。紙上得來終覺淺,絕知此事要躬行。南宋.陸遊《冬夜讀書示子聿(yù)》软件行业也是一样,多少前辈不遗余力的奋斗才出现了软件行业的繁荣的景象,其中已有不少成为大师级人物。今天我们站在伟人的肩膀上,自然会有不少的优势,但不要忘了,要在对技术的认知方面有所提升,仍需我们去实践,去实践。今天我们来讲一下Activity的task相关内容。上次我们讲到Activ

2016-08-13 09:30:26 436

转载 基础总结:Activity生命周期

子曰:溫故而知新,可以為師矣。《論語》学习技术也一样,对于技术文档或者经典的技术书籍来说,指望看一遍就完全掌握,那基本不大可能,所以我们需要经常回过头再仔细研读几遍,以领悟到作者的思想精髓。近来回顾了一下关于Activity的生命周期,参看了相关书籍和官方文档,也有了不小的收获,对于以前的认知有了很大程度上的改善,在这里和大家分享一下。熟悉javaEE的朋友们都了解servlet技术,

2016-08-13 09:23:54 758

原创 优秀程序员的18大法则

经过多年的积累,我发现,下面这些基本的指导法则,可以帮助我成为一个更加高效的程序员。程序设计法则,与设计和工程的原理密切相关。下面这些编程法则帮助我让我获益匪浅,所以我想分享给大家,希望也能帮助大家更高效,生产出的代码更容易维护,并且bug和缺陷更少。DRY原则不要重复(Don’t repeat yourself)——程序设计中一个最根本的原则就是要避免重复。许多编程结构(比如循环

2016-08-12 11:10:34 436

转载 使用函数的得墨忒耳法则来解耦

编写“羞怯”的代码:包含两层意思,一个是不向别人暴露你自己,不会没必要的向其他模块暴露任何事情;另一个是不与太多人打交道,不依赖于其他模块实现的模块。不与太多人打交道,说的就是要降低与别人的耦合,比如你的模块A依赖于一个模块B的功能,那么你就仅仅调用这个模块B的功能,而不要调用这个模块的实现中出现的模块C的功能,因为,一旦B的模块实现方式改变,那么C可能不存在,或者C出现了变动,那么它的影

2016-08-12 10:15:47 550

原创 java代码质量检测评价工具

如果能在构建代码前发现代码中潜在的问题会怎么样呢?很有趣的是,Eclipse 插件中就有这样的工具,比如 JDepend 和 CheckStyle,它们能帮您在软件问题暴露前发现这些问题。在 让开发自动化 的本期文章中,自动化专家 Paul Duvall 将带来一些关于 Eclipse 插件的例子,您可以安装、配置和使用这些静态分析插件,以便在开发生命周期的早期预防问题。

2016-08-11 14:22:02 1180

原创 敏捷开发之Scrum扫盲篇

现在敏捷开发是越来越火了,人人都在谈敏捷,人人都在学习Scrum和XP... 为了不落后他人,于是我也开始学习Scrum,今天主要是对我最近阅读的相关资料,根据自己的理解,用自己的话来讲述Scrum中的各个环节,主要目的有两个,一个是进行知识的总结,另外一个是觉得网上很多学习资料的讲述方式让初学者不太容易理解;所以我决定写一篇扫盲性的博文,同时试着也与园内的朋友一起分享交流一下,希望对初学

2016-08-10 16:56:54 604

原创 我是如何自学 Android 的?

1. Java知识储备本知识点不做重点讲解:对于有基础的同学推荐看《Java编程思想》,巩固基础,查漏补全,了解并熟悉更多细节知识点。对于没有基础的同学推荐看一本Java基础的书籍,看完后可以继续看《Java编程思想》提升自己。对于自认为时间很充裕,只要基础学扎实就好的推荐看《疯狂Java讲义》,这本书真的很厚,但是讲解的特别详细。2. Android基础学习1. 基础UI

2016-08-09 13:39:25 2486 5

转载 学Android开发 这19个开发工具助你顺风顺水

要想快速开发一个Android应用,通常会用到很多工具,巧妙利用这些工具,能让我们的开发工作事半功倍,节省大量时间,下面大连Android开发培训小编就为大家介绍下这19个开发工具都有神马用途。  1、XAppDbg  XAppDbg是一个可以在运行中改变代码中参数的一个应用开发工具。这个工具可以为你省下大量的时间,因为你不用为应用的每次小改变而重新编译运行你的程序。  2、C

2016-08-09 13:37:11 579

翻译 黑客向导/VLC模块树,各模块功能说明

本网页列出VLC源代码树中 Modules目录中各子项目,目的是为了给新的VLC开发者对code有个总体的把握。各子目录按照字母顺序被列出,在列表右侧是对各目录功能的详细说明,每个目录下面的第一个子目录也被列出,为了更详细的VLC modules说明,请看这里https://wiki.videolan.org/Documentation:Modules/   注意:下面这张”目录“表示不完整的,注

2016-08-08 15:28:38 580

翻译 VLC代码树详解

VLC代码树详解/黑客指南本翻译的官方网址为https://wiki.videolan.org/VLC_source_tree/说明VLC源码各部分功能大致说明。下面是正式翻译。为了让读者对VLC源代码有总体的了解,本网页列出VLC源码各目录的具体作用。一个新的IT开发人士接触VLC SOURCE代码时,因大脑里对VLC没有太多的知识积累,可能会被这么多的目录吓到,(我靠,这么多目录怎么学啊),这里

2016-08-08 14:24:42 765

原创 在Markdown Pad中输入表格

http://www.jianshu.com/p/21d355525bdf本文参照简书上文章所写,好文章就应该参考,先抄再创新嘛。今天在用Markdown Pad学习Markdown语法时发现无法输入表格,后来在官网上找到解决方案。找到工具--选项--Markdown,然后更改Markdown处理器为Markdown(扩展),点击保存并关闭后,即可在Markdown Pad中输入表

2016-08-08 14:00:38 3708

转载 Android总结篇系列:Android广播机制

1.Android广播机制概述Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器)。广播作为Android组件间的通信方式,可以使用的场景如下:1.同一app内部的同一组件内的消息通信(单个或多个线程之间);2.同一app内部的不同组件之间的消息通信(单个进程);3.同一app具有多个进程的不同组件之

2016-08-05 15:33:49 479

转载 Android Handler中的handleMessage方法和post方法之源码剖析 及UI更新方法

我们都知道,在子线程中进行UI操作(更新UI控件)包括以下四种方法:1.Handler的handlerMessage()方法。2.Handler的post()方法。3.View的post()方法。4.Activity的runOnUiThread()方法。本文重点分析前两种方法,后面两种稍微说一下。在说第一个方法之前,让我们先来看张图片(图片来源于http://my.oschin

2016-08-05 15:18:54 1470

转载 Android ANR 分析解决方法

一:什么是ANRANR:Application Not Responding,即应用无响应二:ANR的类型ANR一般有三种类型:1. KeyDispatchTimeout(5 seconds) --主要类型按键或触摸事件在特定时间内无响应2. BroadcastTimeout(10 seconds) --BroadcastReceiver在特定时间内无法处理完成3. Ser

2016-08-05 15:00:05 714

原创 Android ANR产生的原因及如何避免

在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。所以一个流畅的合理的应用程序中不能出现anr,而让用户每次都要处理这个对话框。因此,在程序里对响应性能的设计很重要,这样系统不会显示ANR给用户。默认

2016-08-05 14:55:09 3227

转载 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器

最简单的基于libVLC的例子文章列表:最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器(图形界面版)最简单的基于libVLC的例子:最简单的基于libVLC的推流器=====================================================本文记录使用libV

2016-08-04 17:03:07 747

转载 Vlc for Android 全面阐述

简介Vlc for android是一款开源安卓播放器,具备播放多媒体文件、光盘、设备以及网络流媒体协议等功能,支持ARMv7 CPU或一个x86 CPU的设备,所有播放控制特性都已经开发完整。下面将介绍如何获取代码、编译、vlc原理、缩小延迟、添加截图和录制视频、多路播放等。详解1、获取代码官网源码下载:http://mirror.us.leaseweb.ne

2016-08-04 15:52:55 1741

原创 Android.mk 文件语法详解

0. Android.mk简介:Android.mk文件用来告知NDK Build 系统关于Source的信息。 Android.mk将是GNU Makefile的一部分,且将被Build System解析一次或多次。所以,请尽量少的在Android.mk中声明变量,也不要假定任何东西不会在解析过程中定义。Android.mk文件语法允许我们将Source打包成一个"modules

2016-08-04 15:13:22 577

转载 Android 的媒体路由功能应用与框架解析 MediaRouter

一、功能描述       Android的媒体路由API被设计用来允许多种媒体(视频、音乐、图片)在与ANDROID设备连接(无线或有线)的辅助设备(如电视、立体声、家庭戏院系统、音乐播放机)上显示和播放,使用该框架和API,允许Android用户立即在辅助设备上显示图片、播放音乐、共享视频等。   媒体路由框架提供两种播放输出类型:远端播放和辅助输出。远端播放类型指的是辅助设

2016-08-02 15:58:07 5287

转载 不只是给面试加分 -- Java WeakReference的理解与使用

前言: 看到篇帖子, 国外一个技术面试官在面试senior java developer的时候, 问到一个weak reference相关的问题. 他没有期望有人能够完整解释清楚weak reference是什么, 怎么用, 只是期望有人能够提到这个concept和java的GC相关. 很可惜的是, 20多个拥有5年以上java开发经验的面试者中, 只有两人知道weak reference的存在,

2016-08-02 13:58:27 476

转载 Stack和Queue:后进先出和先进先出和Java 实现后进先出(LIFO)及Stac和Java集合类: Set、List、Map、Queue使用场景梳理 - .Little Hann

Queue是先进先出的集合而Stack是后进先出的集合。这两个集合在日常的工作中也经常会用到。Queue相当我们去银行柜台排队,大家依次鱼贯而行。Stack象我们家中洗碗,最后洗好的碗叠在最上面,而下次拿的时候是最先拿到最后叠上去的碗。了解了这样场景,就很容易明白Stack和Queue可用在哪里了。比如我们为医院作一个排队叫号的系统,那肯定是选择Queue对象处理。如果我们要为出牌或下棋准

2016-08-02 11:06:08 13501 1

转载 java内存分配分析 及堆、栈和队列分析

堆是一个运行时数据区,通过new等指令创建,不需要程序代码显式释放优点:可动态分配内存大小,生存周期不必事先告诉编译器,Java垃圾回收自动回收不需要的数据;缺点:运行时需动态分配内存,数据存取速度较慢。如:String str = new String(“abc”);String str2 = new String(“abc”);它们代表的含义如下图所示:

2016-08-02 10:34:24 1506

转载 Java五个最常用的集合类之间的区别和联系

1.ArrayList: 元素单个,效率高,多用于查询2.Vector:    元素单个,线程安全,多用于查询3.LinkedList:元素单个,多用于插入和删除4.HashMap:   元素成对,元素可为空5.HashTable: 元素成对,线程安全,元素不可为空ArrayList底层是Object数组,所以ArrayList具有数组的查询速度快的优点以及增删

2016-08-02 10:10:59 601

转载 Android TimeAnimator && TimeListener翻译

TimeAnimator:提供了一个简单的回调机制,通过 TimeAnimator.TimeListener,在动画的每一帧处通知你。这个动画器没有时间,插值或是对象值设定。回调监听器为每一帧动画接受信息,包括总运行时间和从前一帧到现在的运行时间.相关方法:setTimeListener(TimeAnimator.TimeListener listener):设置监听器.start()

2016-08-01 18:43:28 2218

转载 Android 三种动画详解

1 背景不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让全面说说Android的动画,所以今天来一发Android应用的各种Animation大集合。英文厉害的请直接移步参考Android Developer。Android系统提供了很多丰富的API去实现UI的2D与3D动画,最主要的划分可以分为如下几类:View Animation: 视图动画在古老的

2016-08-01 14:39:39 984

嵌入式智能家居软硬件产品研发流程,产品研发项目协作控制

产品经理,项目经理必看。产品研发具体流程,特别适合新产品,新项目研发的总体把控,从项目方案收集、外观结构设计,硬件原理图PCBlayout、软件研发测试到试产、BOM变更、材料控制、SMT贴片、首件、试产。所有流程相近描述。绝对是智能硬件产品项目开发经理,必看首选,

2016-05-21

空空如也

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

TA关注的人

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