Welcome 微信登录

首页 / 移动开发 / Android

Android广播接收机制详细介绍(附短信接收实现)

Android广播接收机制详细介绍(附短信接收实现)

Android中广播(BroadcastReceiver)的详细讲解.1. BroadcastReceiver的注册过程: (1).广播消息发出来后,只有订阅了该广播的对象才会接收发出来的广播消息并做出相应处理。 **(2).**Android广播分为两个方面:广播发送者和广播接收者。Android中的广播使用了观察者模式,基于消息的发布/订阅事件模型。广播接收者通过Binder机制向AMS进行注册,AMS查找符合相应条件的Broadcastreceive...
Android中文件读写(输入流和输出流)操作小结

Android中文件读写(输入流和输出流)操作小结

1. Android中文件读写的原理: (1).所有文件的储存都是字节的储存。 (2).在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘。 (3).在读取文件(特别是文本文件)时,也是一个字节一个字节的读取以形成字节序列。2. 字节流和字符流的区别:(1).字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,字符流就可以。 (2).字节流转换成字符流可以用InputStreamReader,OutputS...
Android LayerDrawable使用实例

Android LayerDrawable使用实例

1.在Android项目开发的时候,经常看到很漂亮的UI界面,比如,当你点击一张图片被选中的时候,覆上一张透明的图片。表示被选中,区别与那些没有被选中的。这种是如何实现的呢?答案是LayerDrawable的使用出现的效果。下面是LayerDrawable的总结,若有不正确的地方,请大家指正。2.简单的来说,LayerDrawable继承与Drawable,Drawable就是一个可画的对象,可能是一张位图BitmapDrawable,也可能是一个图形Sh...
Android中的Shape和Selector的结合使用实例

Android中的Shape和Selector的结合使用实例

一:在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的形状,首先我们了解一下Shape下面有哪些标签,都代表什么意思:(1).solid:填充 android:color指定填充的颜色 (2).gradient:渐变 android:startColor和android:endColor分别为起始和结束颜色, android:angle是渐变角度,必须为45的整数倍。另外渐变默认的模式为android:type=”linear”...
Android中Service(后台服务)详解

Android中Service(后台服务)详解

1.概念: (1).Service可以说是一个在后台运行的Activity。它不是一个单独的进程,它只需要应用告诉它要在后台做什么就可以了。 (2).它要是实现和用户的交互的话需要通过通知栏或者是通过发送广播,UI去接收显示。 (3).它的应用十分广泛,尤其是在框架层,应用更多的是对系统服务的调用。2.作用: (1).它用于处理一些不干扰用户使用的后台操作。如下载,网络获取。播放音乐,他可以通过INTENT来开启,同时也可以绑定到宿主对象(调用者例如ACT...
Android开发中比较耗时的一些操作小结

Android开发中比较耗时的一些操作小结

在Android软件开发过程中,经常遇到耗时操作。为了使手机app运行流畅,耗时操作需要在新的一个线程中完成。那么,Android手机应用开发中,耗时操作有哪些呢?下面来总结一下。1.下载文件操作2.网络连接操作(尤其是网络不好的时候)3.音频格式转换操作4.文件操作5.比较大的数据的初始化操作6.sleep函数等 注: 具体的功能还得根据业务需求来完成。...
Android加载图片内存溢出问题解决方法

Android加载图片内存溢出问题解决方法

1. 在Android软件开发过程中,图片处理是经常遇到的。 在将图片转换成Bitmap的时候,由于图片的大小不一样,当遇到很大的图片的时候会出现超出内存的问题,为了解决这个问题Android API提供了BitmapFactory.Options这个类.2. 由于Android对图片使用内存有限制,若是加载几兆的大图片便内存溢出。Bitmap会将图片的所有像素(即长x宽)加载到内存中,如果图片分辨率过大,会直接导致内存OOM,只有在BitmapFacto...
Android 通用型手电筒代码

Android 通用型手电筒代码

前几天这边一个小区断电,黑麻麻的,一只猫闯进寝室,把我吓哭,然后就果断写了个手电筒,下次断电,再来,我要吓死它。我之前看到很多人都是直接调用闪光灯,其实大部分机型都不支持,我这个是用相机功能来实现的,大部分机型都支持。MainActivity.classpublic class MainActivity extends FragmentActivity { @Overrideprotected void onCreate(Bundle savedInsta...
Android实现语音识别代码

Android实现语音识别代码

苹果的iphone 有语音识别用的是Google 的技术,做为Google 力推的Android 自然会将其核心技术往Android 系统里面植入,并结合google 的云端技术将其发扬光大。 所以Google Voice Recognition在Android 的实现就变得极其轻松。语音识别,借助于云端技术可以识别用户的语音输入,包括语音控制等技术,下面我们将利用Google 提供的Api 实现这一功能。 功能点为:通过用户语音将用户输入的语音识别出来,...
Android中使用二级缓存、异步加载批量加载图片完整案例

Android中使用二级缓存、异步加载批量加载图片完整案例

一、问题描述Android应用中经常涉及从网络中加载大量图片,为提升加载速度和效率,减少网络流量都会采用二级缓存和异步加载机制,所谓二级缓存就是通过先从内存中获取、再从文件中获取,最后才会访问网络。内存缓存(一级)本质上是Map集合以key-value对的方式存储图片的url和Bitmap信息,由于内存缓存会造成堆内存泄露, 管理相对复杂一些,可采用第三方组件,对于有经验的可自己编写组件,而文件缓存比较简单通常自己封装一下即可。下面就通过案例看如何实现网络...
Android手机保持屏幕高亮方法

Android手机保持屏幕高亮方法

一开始接触android应用项目时,在项目快上线时策划要求加个高亮,每次都是直接从网上百度一下,现在做游戏了,却还是这个需求,这里备份一下方便后续的查找,毕竟是自己写好且验证没问题的 :)首先,在Activity里添加一下代码:成员变量:private PowerManager.WakeLock wakeLock = null; 重写父类Activity的两个方法并添加一下逻辑:@Override public void onResume() {super...
Android GridView实现滚动到指定位置的方法

Android GridView实现滚动到指定位置的方法

当一个列表项目很多,并且每个项目可以进入到其它Activity或者Fragment时,保存之前列表的位置是一个比较不错的功能,今天研究了一下怎么保存浏览位置,发现GridView和它的父类中有4个相关的方法:复制代码 代码如下:public void smoothScrollToPosition (int position)滚动到position指定的位置,api level 11之下可用*当你滚动完后,返回列表,能正常滚动,但是你再次从列表的项目返回后,...
Android Studio项目中导入开源库的方法

Android Studio项目中导入开源库的方法

前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发。然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不知道怎么导入到自己的基于Android Studio项目中来,微博上也有人私信我,让我来写写,正好今天回来的比较早,就写写吧。主要介绍一下常见的一些导包的场景。前言复制代码 代码如下:--project //项目目录 | build.gradle //项目的g...
Android中的全局变量与局部变量使用小结

Android中的全局变量与局部变量使用小结

全局变量顾名思义就是在整个的类中或者可在多个函数中调用的变量。也称为外部变量。局部变量则是特定过程或函数中可以访问的变量。声明一个变量是很 容易的,但是讲到使用的时候,却不是想象的那样简单。至于本人则是经常定义全局变量使用,但也就是因为这样,定义的是全局变量。也饶了不少的弯子。在使用Adapter即适配器的时候,通常适配器总是与listView使用,因为一个listView 基本上都会有一个listView的Item的布局,下面的情景是:在每个Item里面...
<< 171 172 173 174 175 176 177 178 179 180 >>