Welcome 微信登录

首页 / 移动开发 / Android

Android开发 OpenGL ES绘制3D 图形实例详解

Android开发 OpenGL ES绘制3D 图形实例详解

OpenGL ES是 OpenGL三维图形API 的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。 Ophone目前支持OpenGL ES 1.0 ,OpenGL ES 1.0 是以 OpenGL 1.3 规范为基础的,OpenGL ES 1.1 是以 OpenGL 1.5 规范为基础的。本文主要介绍利用OpenGL ES绘制图形方面的基本步骤。本文内容由三部分构成。首先通过EGL获得OpenGL ES的编程接口;其次介绍构建3D程序的基本概念;最后...
Android 轻松实现语音识别详解及实例代码

Android 轻松实现语音识别详解及实例代码

使用Intent调用语音识别程序说明Android中主要通过RecognizerIntent来实现语音识别,其实代码比较简单,但是如果找不到语音识别设备,就会抛出异常 ActivityNotFoundException,所以我们需要捕捉这个异常。而且语音识别在模拟器上是无法测试的,因为语音识别是访问google 云端数据,所以如果手机的网络没有开启,就无法实现识别声音的!一定要开启手机的网络,如果手机不存在语音识别功能的话,也是无法启用识别!注意:使用前需...
百度语音识别(Baidu Voice) Android studio版本详解

百度语音识别(Baidu Voice) Android studio版本详解

百度语音识别(Baidu Voice) Android studio版本 已同步更新至个人blog:http://dxjia.cn/2016/02/29/baidu-voice-helper/ 最近在一个练手小项目里要用到语音识别,搜索了一下,比较容易集成的就算Baidu voice跟讯飞语音了,baidu提供了直接可以使用的显示控件,而讯飞需要自己实现,另外baidu提供每天5W次的调用频率,对于我来说足够使用啦。所以就选择使用Baidu Voice(控...
Android语音识别技术详解及实例代码

Android语音识别技术详解及实例代码

今天从网上找了个例子实现了语音识别,个人感觉挺好玩的,就把代码贴出来与大家分享下: Android中主要通过RecognizerIntent来实现语音识别,其实代码比较简单,但是如果找不到设置,就会抛出异常ActivityNotFoundException,所以我们需要捕捉这个异常。而且语音识别在模拟器上是无法测试的,因为语音识别是访问google云端数据,所以如果手机的网络没有开启,就无法实现识别声音的!一定要开启手机的网络,如果手机不存在语音识别功能...
Android7.0 工具类:DiffUtil详解

Android7.0 工具类:DiffUtil详解

一 概述DiffUtil是support-v7:24.2.0中的新工具类,它用来比较两个数据集,寻找出旧数据集-》新数据集的最小变化量。 说到数据集,相信大家知道它是和谁相关的了,就是我的最爱,RecyclerView。 就我使用的这几天来看,它最大的用处就是在RecyclerView刷新时,不再无脑mAdapter.notifyDataSetChanged()。 以前无脑mAdapter.notifyDataSetChanged()有两个缺点:1.不会触...
Android ListView自动显示隐藏布局的实现方法

Android ListView自动显示隐藏布局的实现方法

借助View的OnTouchListener接口来监听listView的滑动,通过比较与上次坐标的大小,判断滑动方向,并通过滑动方向来判断是否需显示或者隐藏对应的布局,并且带有动画效果。1.自动显示隐藏Toolbar首先给listView增加一个HeaderView,避免第一个Item被Toolbar遮挡。View header=new View(this);header.setLayoutParams(new AbsListView.LayoutPara...
Android中src和background的区别详解

Android中src和background的区别详解

ImageView中XML属性src和background的区别:background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸。src是图片内容(前景),bg是背景,可以同时使用。此外:scaleType只对src起作用;bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式,示例代码如下:<ImageView android:id="@+id/i...
Android指纹识别开发实例

Android指纹识别开发实例

Android M指纹的资料太少,经过一段时间阅读原生Android代码,写了以下例子,贡献出来给需要帮助的人。 以下内容基于64位的高通CPU,搭载fpc1020芯片,此部分代码在原生android上做了更改,以应付工厂指纹的测试。原生android指纹录入需要采集10次(因不同的芯片而定)。 代码简单说明: 1. FingerPrintEnrollBase类: 重要的是Java代码public interface Listener { void...
Android自定义View实现水面上涨效果

Android自定义View实现水面上涨效果

实现效果如下:实现思路:1、如何实现圆中水面上涨效果:利用Paint的setXfermode属性为PorterDuff.Mode.SRC_IN画出进度所在的矩形与圆的交集实现2、如何水波纹效果:利用贝塞尔曲线,动态改变波峰值,实现“随着进度的增加,水波纹逐渐变小的效果”话不多说,看代码。首先是自定义属性值,有哪些可自定义属性值呢?圆的背景颜色:circle_color,进度的颜色:progress_color,进度显示文字的颜色:text_color,进度...
Android IPC进程间通信详解最新AndroidStudio的AIDL操作)

Android IPC进程间通信详解最新AndroidStudio的AIDL操作)

前言前面梳理了Android的线程间的通信《Thread、Handler和HandlerThread关系何在?》 ,这些都是在同一个进程中,那进程间的通信,或者说不同的应用间的通信该如何实现呢?这个时候就要用到AIDL(Android Interface Definition LanguageAndroid接口定义语言 )。使用方法(AndroidStudio)我发现现在AIDL的教程基本上还是eclipse的,但是在AndroidStudio里面使用AI...
Android 消息机制以及handler的内存泄露

Android 消息机制以及handler的内存泄露

Handler每个初学Android开发的都绕不开Handler这个“坎”,为什么说是个坎呢,首先这是Android架构的精髓之一,其次大部分人都是知其然却不知其所以然。今天看到Handler.post这个方法之后决定再去翻翻源代码梳理一下Handler的实现机制。异步更新UI先来一个必背口诀“主线程不做耗时操作,子线程不更新UI”,这个规定应该是初学必知的,那要怎么来解决口诀里的问题呢,这时候Handler就出现在我们面前了(AsyncTask也行,不过...
Thread、Handler和HandlerThread关系详解

Thread、Handler和HandlerThread关系详解

前言前几天看到一道面试题:Thread、Handler和HandlerThread有什么区别?,这个题目有点意思,对于很多人来说,可能对Thread和Handler很熟悉,主要涉及到Android的消息机制(Handler、Message、Looper、MessageQueue),详见《 从Handler.post(Runnable r)再一次梳理Android的消息机制(以及handler的内存泄露)》但是这个HandlerThread是拿来做什么的呢?...
Android Studio提示inotify大小不足的解决办法

Android Studio提示inotify大小不足的解决办法

前言Inotify会对工程内的所有文件夹设置”watch handle”。不幸的是,Linux默认的watch handle的限值不能满足实际工程大小的需要,超过限值将强制IntelliJ重新扫描项目目录的递归树(这将非常耗时)。为了避免这种问题,我们推荐修改提高watches的限值(一般521k就可以了),以下是具体的解决步骤。问题描述:使用Android Studio 导入AOSP源码并且indexing完,ide右上角可能抛出警告”Kernel in...
Android布局性能优化之按需加载View

Android布局性能优化之按需加载View

有时应用程序中会有一些很少用到的复杂布局。在需要它们的时候再加载可以降低内存的消耗,同时也可以加快界面的渲染速度。定义ViewStubViewStub是一个轻量级的View,它没有高宽,也不会绘制任何东西。所以它的加载与卸载的成本很低。每个ViewStub都可以使用android:layout属性指定要加载的布局。下面这个ViewStub用于一个半透明的ProgressBar的加载。它只有在新工作开始时才会显示。<ViewStubandroid:id...
Android实现音频条形图效果(仿音频动画无监听音频输入)

Android实现音频条形图效果(仿音频动画无监听音频输入)

音频条形图如下图所示就是这次的音频条形图:由于只是自定义View的用法,我们就不去真实地监听音频输入了,随机模拟一些数字即可。如果要实现一个如上图的静态音频条形图,相信大家应该可以很快找到思路,也就是绘制一个个的矩形,每个矩形之间稍微偏移一点距离即可。如下代码就展示了一种计算坐标的方法。for (int i = 0; i < mRectCount; i++) {// 矩形的绘制是从左边开始到上、右、下边(左右边距离左边画布边界的距离,上下边距离上边画...
Android6.0 屏幕固定功能详解

Android6.0 屏幕固定功能详解

可能大家看到这个标题不知道是什么东西,我先说明下,android6.0在设置->安全->屏幕固定开启后,然后再长按home键出现最近的几个Activity可以选择一个图钉按钮就开启了屏幕固定功能。屏幕固定开启后,屏幕只能固定在设定的Task上的Activity切换。一、设置固定屏幕我们先来看SystemUI/src/com/android/systemui/recents/ScreenPinningRequest.java的代码,这段代码就是长...
Android Studio查看Android 5.x源码的步骤详解

Android Studio查看Android 5.x源码的步骤详解

关于Android Studio的好处我就不用说了,下面两点就足矣让你转投Android Studio了: 1、Android Studio是Google官方指定的,目前官网已经去掉了ADT, 大家可以在Android开发者官网 中进行查看,目前只有Android Studio提供下载了. 2、Google也表示ADT不再进行维护了.转投Android Studio时大势所趋,网上关于如何使用Android Studio的帖子也是满天飞,所以我就不再啰嗦夸...
<< 71 72 73 74 75 76 77 78 79 80 >>