Android开发
文章平均质量分 83
HappinessLee
专注音视频
展开
-
Android4.2.2的preview的数据流和控制流以及最终的预览显示
Android源码版本Version:4.2.2; 硬件平台 全志A31step1:之前在讲到CameraService处的setPreviewWindow中传入一个窗口给HAL[cpp] view plain copystatus_t setPreviewWindow(const sp& buf) { ALOGV转载 2017-03-29 10:14:43 · 1118 阅读 · 0 评论 -
android 如何监听返回键
在需要监听的activity中重写onKeyDown()。public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {转载 2014-02-28 18:05:09 · 7555 阅读 · 0 评论 -
android 如何结束一个线程?
如何结束一个线程? 关于线程的结束有以下几点:1.不要手动调用stop方法强行终止一个线程,这种方式不安全。通过帮助文档,我们可以知道,Android的线程类本身就提供了一些公共方法去结束线程。final void stop()This method is deprecated. because stopping a thread in t转载 2014-02-10 09:40:15 · 1132 阅读 · 0 评论 -
Android中Handler的作用
* Handler的定义: * 主要接受子线程发送的数据, 并用此数据配合主线程更新UI。当应用程序启动时, * Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如说, * 你要是点击一个 Button ,Android会分发事件到Button上,来响应你的操作。 * 如果此时需要一个耗时的操作,例转载 2013-11-14 15:36:43 · 1247 阅读 · 0 评论 -
Android 退出整个应用程序
我们在写android应用程序时,经常会遇到想退出当前Acitivity,或者直接退出应用程序.我之前的一般操作是按返回键,或者直接按home键直接返回,其实这两种操作都没有关闭当前应用程序,没有释放系统资源。有时跳转的activity较多时,还需要多次按返回键,这样感觉一点都不爽。后面添加了一个菜单返回功能键,这个方法也只能用system.exit(0)来关闭当前活动的Activity,转载 2013-11-25 10:05:17 · 946 阅读 · 0 评论 -
ViewPager onPageChangeListener总结
android ViewPager滑动事件讲解今天在做项目的时候,由于要处理viewPager页面滑动的事件,所以对其进行了一个小小的研究:首先ViewPager在处理滑动事件的时候要用到OnPageChangeListenerOnPageChangeListener这个接口需要实现三个方法:(onPageScrollStateChanged,onPageScrolled转载 2013-09-28 10:23:10 · 102015 阅读 · 14 评论 -
Android开发:界面布局的基本使用
问题提出在android开发中,一个好的程序,除了强大的功能以外,还要有一个能吸引别人眼球的界面。纵观当下流行的诸多Android软件,那些绚丽多彩,美轮美奂的程序界面与手触屏完美结合,给我们带来了不一般的用户体验,也把我们带进了梦幻般的Android世界。那么,如何开发出这些界面,让我们的Android软件在众多同类软件中脱颖而出呢?问题分析在android开发中,用于界转载 2013-08-27 18:11:27 · 21937 阅读 · 0 评论 -
android的触摸事件
由于触摸(Touch)而触发的事件Android的事件:onClick, onScroll,onFling等等,都是由许多个Touch组成的。其中Touch的第一个状态肯定是ACTION_DOWN,表示按下了屏幕。之后,touch将会有后续事件,可能是:ACTION_MOVE //表示为移动手势ACTION_UP //表示为离开屏幕ACTION_CANCEL //表转载 2012-10-22 14:11:05 · 21041 阅读 · 1 评论 -
Android中渐变效果的设置
在Drawable文件夹下建立xml文件: android:shape="rectangle"> android:startColor="#00000000" android:centerColor="#FFFFFFFF" android:endColor="#00000000"翻译 2012-10-22 09:36:34 · 2818 阅读 · 0 评论 -
android Toast大全(五种情形)建立属于你自己的Toast
Toast用于向用户显示一些帮助/提示。下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast。1.默认效果代码Toast.makeText(getApplicationContext(), "默认Toast样式", Toast.LENGTH_SHORT).show(); 2.自定义显示位置效果代码toast = Toast.ma转载 2012-09-24 09:44:26 · 1021 阅读 · 1 评论 -
Android 屏幕滑动事件
Android里有两个类 android.view.GestureDetector android.view.GestureDetector.SimpleOnGestureListener (另外android.widget.Gallery好像是更牛x的OnGestureListener ) 1)新建一个类继承SimpleOnGestureListener,Ha转载 2012-09-19 15:05:11 · 1324 阅读 · 0 评论 -
Android框架浅析之锁屏(Keyguard)机制原理
最近终于成功的摆脱了FM收音机,迈向了新的模块:锁屏、状态栏、Launcher---姑且称之为“IDLE”小组,或许叫手机 美容小组,要是能施展下周星星同学的还我漂漂拳,岂不快哉。 OK,闲话打住,咱开始正文。 本文主要内容: 1、分析锁屏界面的组成 ; 2、基于源代码分析锁屏相关类 ; 3、提转载 2012-10-11 09:32:37 · 1298 阅读 · 0 评论 -
Android平台下OpenGL初步
本文只关注于如何一步步实现在Android平台下运用OpenGl。1、GLSurfaceViewGLSurfaceView是Android应用程序中实现OpenGl画图的重要组成部分。GLSurfaceView中封装了一个Surface。而android平台下关于图像的现实,差不多都是由Surface来实现的2、Renderer有了GLSurfaceView之后,就原创 2014-06-11 17:37:07 · 2078 阅读 · 0 评论 -
Android MediaCodec小结
MediaCodec进行编解码的大体逻辑是这样的: 主要函数的调用逻辑如下: 需要做的东西是一个媒体文件合成器,功能是先截取出多段媒体文件中的某些片段,再将这些片段合成为一个新的媒体文件。实际上就是先用解码器将多段outputBuffer数据拿出来,然后再用编码器将它们放到一个文件里去。如果还要加上叠加字幕、特技处理等的效果,实际上也是先拿到ou转载 2014-07-09 15:39:24 · 31169 阅读 · 17 评论 -
利用Android源代码编译一个自己写的Hello World模块
这应该是我的Android底层开发第二篇文章,在编译Android源代码成功的基础上又进一步利用Android源代码编译成功了一个自己写的hello world,算入门第二步了。1、在android 源代码路径下的development路径下创建hello路径;2、创建hello.c文件;3、在hello.c文件中写入以下内容:点击(此处)折叠或打开转载 2014-10-16 10:35:50 · 2580 阅读 · 2 评论 -
Android+FFmpeg+OpenSL ES音频解码播放
目录(?)[+]准备工作编译FFmpeg开发环境建立audioplayer工程建立AS工程实现解码播放运行结果本例工程下载audioplayer准备工作1.编译FFmpeg下载最新版的FFmpeg,具体编译步骤参考文章:FFmpeg的Android平台移植—编译篇。 对于FFmpeg不太了解的可转载 2016-08-12 15:10:00 · 2010 阅读 · 0 评论 -
Android Studio JNI/NDK 编程 Windows 下环境搭建 demo 开发
环境windows 7 (注:其实 Linux 开发可能更方便)Android Studio 2.1;一 . 下载 安装android-ndk开发包 地址:链接:http://pan.baidu.com/s/1c1GSiy8 密码:h7gr; 下载完成后最好解决到一个根目录,中间不要有空格,中文;二转载 2016-05-21 11:03:27 · 2496 阅读 · 0 评论 -
基于OpenGL的Android系统视频转换功能实现
第1章OpenGL ES3D图形编程首先OpenGL。OpenGL的英文全称是OpenGL Graphics Library,中午名称是开发式图形库。OpenGL为程序开发人员定义了一个跨平台的图形硬件编程接口,可用于三维图像(二维亦可),功能非常强大,适用于从普通PC到大型图型工作站等计算机。它采用LGPL或者GPL许可证。在行业领域中被广泛接纳,自其诞生之日起已经催生了许多优秀转载 2016-06-02 16:54:50 · 6344 阅读 · 6 评论 -
android四大组件(详细总结)
Android四大组件分别为activity、service、content provider、broadcast receiver。一、android四大组件详解1、activity(1)一个Activity通常就是一个单独的屏幕(窗口)。(2)Activity之间通过Intent进行通信。(3)android应用中每一个Activity都必须要在An转载 2016-06-01 10:18:44 · 996 阅读 · 0 评论 -
android:padding和android:margin的区别
Android的Margin和Padding跟Html的是一样的。如下图所示:黄色部分为Padding,灰色部分为Margin。通俗的理解:Padding 为内边框,指该控件内部内容,如文本/图片距离该控件的边距Margin 为外边框,指该控件距离边父控件的边距对应的属性为android:layout_marginBottom="25dip"转载 2016-05-12 09:05:25 · 708 阅读 · 0 评论 -
开源项目之Android Afinal框架
项目如图:本文参考网络!Afinal是一个开源的android的orm和ioc应用开发框架,其特点是小巧灵活,代码入侵量少。在android应用开发中,通过Afinal的ioc框架,诸如ui绑定,事件绑定,通过注解可以自动绑定。通过Afinal的orm框架,无需任何配置信息,一行代码就可以对android的sqlite数据库进行增删改查操作。同时,Afinal内嵌了转载 2015-12-23 11:39:07 · 643 阅读 · 0 评论 -
Android内存优化大全(全)
写在最前:本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上把网上搜集的各种内存零散知识点进行汇总、挑选、简化后整理而成。所以我将本文定义为一个工具类的文章,如果你在ANDROID开发中遇到关于内存问题,或者马上要参加面试,或者就是单纯的学习或复习一下内存相关知识,都欢迎阅读。(本文最后我会尽量列出所参考的文章)。OOM:转载 2015-12-28 16:23:17 · 640 阅读 · 0 评论 -
Intent和IntentFilter详解
Intent Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,Int转载 2015-12-28 10:04:04 · 1037 阅读 · 0 评论 -
Android Studio目录结构浅析
应各位朋友的要求,写这篇文章,让我们来简单了解下Android Studio中不同目录(文件)的位置和用途。首先看下一个App的最简单的目录结构【= = 好复杂的样子】OK,我们这么看,第一,把这么多文件先分成这么三块1. 编译系统(Gradle)2. 配置文件3. 应用模块Gradle是Google推荐使用的一套基于Groovy的编译系统脚本(当然,你也可以使用a转载 2015-11-24 14:45:38 · 822 阅读 · 0 评论 -
Android HttpClient及连接管理器
超文本传输协议HTTP也许是当今互联网上使用的最重要的协议了。 尽管java.net包提供了基本通过HTTP访问资源的功能,但它没有提供全面的灵活性和其它很多应用程序需要的功能。HttpClient就是寻求弥补这项空白的组件,通过提供一个有效的保持更新的功能丰富的软件包来实现客户端最新的HTTP标准和建议。 为扩展而设计同时为基本的HTTP协议提供强大的支持HttpClient组件也许就是转载 2015-04-08 15:21:27 · 1840 阅读 · 0 评论 -
Java中堆内存和栈内存详解
Java把内存分成两种,一种叫做栈内存,一种叫做堆内存在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器转载 2014-10-15 23:02:24 · 998 阅读 · 0 评论 -
Android滑动手势侦测方法
Android SDK提供了一个listener类来侦测各种不同的手势:SimpleOnGestureListener. 你只需要实现自己所关心的手势就可以了. 首先创建自己的一个手势detector类: class MyGestureDetector extends SimpleOnGestureListener { @Override public boolean转载 2012-09-19 15:09:02 · 976 阅读 · 1 评论 -
MT6573默认锁屏界面修改
(1)锁屏界面主要有2个java文件、2个xml文件和一些图片文件。frameworks/base/core/java/com/android/internal/widget/SlidingTab.javaframeworks/base/policy/src/com/android/internal/policy/impl/LockScreen.javaframeworks/bas转载 2012-10-10 11:34:43 · 2868 阅读 · 1 评论 -
android动画效果
本文主要研究Android中的三种动画,第一种是单个View的各种动画效果,第二种是两个Activity切换时的动画效果,第三种是类似于Gif的Frame By Frame动画效果,其中View的各种动画包括在xml文件中定义和代码中定义两种方式。一、动画基本类型:如下表所示,Android的动画由四种类型组成,即可在xml中定义,也可在代码中定义,如下所示:转载 2012-09-03 11:46:33 · 5889 阅读 · 1 评论 -
MTK编译笔记
1. uboot路径mediatek\custom\common\uboot\logo\hvga\hvga_kernel.bmpmediatek\custom\common\uboot\logo\hvga\hvga_uboot.bmp2. android上层动画路径vendor\mediatek\project\artifacts\out\target\product\projec转载 2012-09-03 11:41:42 · 828 阅读 · 0 评论 -
Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形)
1、首先说一下canvas类:Class OverviewThe Canvas class holds the "draw" calls. To draw something, you need 4 basic components: A Bitmap to hold the pixels, a Canvas to host the draw calls (writing into t转载 2012-08-23 11:54:43 · 927 阅读 · 0 评论 -
drawable-mdpi、drawable-ldpi、drawable-hdpi区别
在之前的版本中,只有一个drawable,而2.1以后版本中有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。 drawable- hdpi、drawable- mdpi、drawable-ldpi的区别: (1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA(480x8转载 2012-08-23 10:30:55 · 981 阅读 · 0 评论 -
Android 中的Canvas画图
Android中有一个Canvas类,Canvas类就是表示一块画布,你可以在上面画你想画的东西。当然,你还可以设置画布的属性,如画布的颜色/尺寸等。Canvas提供了如下一些方法: Canvas():创建一个空的画布,可以使用setBitmap()方法来设置绘制的具体画布; Canvas(Bitmapbitmap):以bitmap对象创建一个画布,则将内容都绘制在bitm转载 2012-08-22 15:50:40 · 10716 阅读 · 0 评论 -
android中颜色值参考
各种颜色值,方便查找------------------------------------------------------------------- #ffffff #fffff0 #ffffe0 #ffff00 #fffafa #fffaf0 #fffacd #fff8dc Shell">#fff5ee #fff0f5 #ffefd转载 2012-08-22 15:22:24 · 1142 阅读 · 0 评论 -
Android中XLIFF的应用
今天看了一个google的demo,发现部分资源字符串在/res/values/string.xml中包含有类似xliff的节点,刚才查了一下,Xliff是XML Localization Interchange File Format 的缩写,中文名为XML本地化数据交换格式。对于在Android的资源字符串中,可能会有类似下面的 %1$s 写法,这里,id我们可以随便定义,后面的%1$转载 2012-08-21 14:33:54 · 13804 阅读 · 3 评论 -
android:visibility属性
android:visibility="gone"此属性意思是此视图是否显示,例如RelativeLayout中android:visibility="gone"其有三个属性:visible显示;invisible显示黑背景条;gone不显示在类中,可以设置其显示与否,setVisibility(View.GONE);不显示setVisibility(Vie转载 2012-08-21 14:21:13 · 709 阅读 · 0 评论 -
设置Button挨在一起
要用android:layout_marginLeft等参数调整,而且LinearLayout和RelativeLayout都可以的,不过需要注意的是: 外边框:android:layout_marginLeft等参数的默认数值为0dp,但相邻两个控件之间会自动添加8dp,如果想一个挨一个的话,android:layout_marginLeft="-8dp"。 内边框:android:paddin转载 2012-08-30 11:33:01 · 2134 阅读 · 0 评论 -
AndroidManifest.xml文件解析
AndroidManifest.xml是每个android程序中必须的文件。它位于application的根目录,描述了package中的全局数据,包括了package中暴露的组件(activities, services, 等等),它们各自的实现类,各种能被处理的数据和启动位置。此文件一个重要的地方就是它所包含的intent-filters。这些filters描述了activity启动的位置转载 2012-08-20 17:43:09 · 761 阅读 · 0 评论 -
android 资源和国际化
资源是外部文件(既非代码文件),被代码使用,并且在编译时被编译到你的应用程序中,android 支持的资源,包括XML,PNG,JPNG文件,XML文件会由于其所描述的内容不同而形式不同。 资源从原代码中被抽取出来,基于效率考虑,XML文件被编译成二进制、可以快速加载的形式。字符串,同样被压缩为一种更富效率的存储形式。对于android 程序开发,需要它时知道去那里找这些资源就可以转载 2012-08-20 17:29:36 · 1663 阅读 · 0 评论 -
ViewSwitcher的使用方法
前言 虽然ViewSwitcher的中文API早已翻译出来,但一直没有在项目中使用过,也没有搜到很合适很简单的中文例子,这里与大家一起探讨和分享一下其用法。 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs.com 相关API转载 2012-09-03 10:34:39 · 1049 阅读 · 0 评论