Welcome 微信登录

首页 / 移动开发 / Android

Android Service服务详细介绍及使用总结

Android Service服务详细介绍及使用总结

Android Service服务详解一.Service简介Service是android 系统中的四大组件之一(Activity、Service、BroadcastReceiver、 ContentProvider),它跟Activity的级别差不多,但不能页面显示只能后台运行,并且可以和其他组件进行交互。service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,...
Android 启动模式详细介绍

Android 启动模式详细介绍

Android 启动模式:启动模式:LaunchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里。这里简单介绍一下任务栈task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建一个与之对应的task。任务栈里面的Activity是按照先进后出的形式保存的,比如:...
android-使用环信SDK开发即时通信功能(附源码下载)

android-使用环信SDK开发即时通信功能(附源码下载)

最近项目中集成即时聊天功能,挑来拣去,最终选择环信SDK来进行开发,选择环信的主要原因是接口方便、简洁,说明文档清晰易懂。文档有Android、iOS、和后台服务器端,还是非常全的。环信官网:http://www.easemob.com/本篇文章目的主要在于说明环信Demo如何实现即时通信的。我在集成环信SDK到我们自己开发的app之前,研究了一下环信demo的代码,看了两三天的样子,基本搞清楚来龙去脉,但是只是清楚来龙去脉,要说到里面的细节可能得深一步研...
Android 序列化的存储和读取总结及简单使用

Android 序列化的存储和读取总结及简单使用

Android 序列化1.序列化的目的 (1).永久的保存对象数据(将对象数据保存在文件当中,或者是磁盘中 (2).通过序列化操作将对象数据在网络上进行传输(由于网络传输是以字节流的方式对数据进行传输的.因此序列化的目的是将对象数据转换成字节流的形式) (3).将对象数据在进程之间进行传递(Activity之间传递对象数据时,需要在当前的Activity中对对象数据进行序列化操作.在另一个Activity中需要进行反序列化操作讲数据取出) (4).Java...
Android 中使用 ViewPager实现屏幕页面切换和页面轮播效果

Android 中使用 ViewPager实现屏幕页面切换和页面轮播效果

之前关于如何实现屏幕页面切换,写过一篇博文《Android中使用ViewFlipper实现屏幕切换》,相比ViewFlipper,ViewPager更适用复杂的视图切换,而且Viewpager有自己的adapter,这也让其适应复杂对象,实现数据的动态加载。ViewPager是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一,利用它,我们可以做很多事情,从最简单的导航,到页...
Android实现拍照、选择相册图片并裁剪功能

Android实现拍照、选择相册图片并裁剪功能

通过拍照或相册中获取图片,并进行裁剪操作,然后把图片显示到ImageView上。当然也可以上传到服务器(项目中绝大部分情况是上传到服务器),参考网上资料及结合项目实际情况,测试了多款手机暂时没有发现严重问题。代码有注释,直接贴代码:public class UploadPicActivity extends Activity implements View.OnClickListener { private Button take_photo_btn; p...
ViewPager的setOnPageChangeListener方法详解

ViewPager的setOnPageChangeListener方法详解

背景最近需要实现一个自定义Notification的功能。网上找了找代码,解决方案就是通过RemoteViews来实现。但是在实现过程中遇到不少问题,网上也没有很好的文章描述这些问题,所以在这里做个总结,希望大家能少走点弯路。实现RemoteViews 自定义View这是最基础的知识点,虽然做过自定义通知的应该都清楚,但我觉得还是有必要带一下。它主要被用于AppWidget和Notification,它描述一个在其它进程中显示的View。以下是例子代码。从...
Android中实现淘宝购物车RecyclerView或LIstView的嵌套选择的逻辑

Android中实现淘宝购物车RecyclerView或LIstView的嵌套选择的逻辑

使用了RecyclerView嵌套RecyclerView的方案。购物车的第一个界面为RecyclerView,每个Item里面包含一个店铺。在Item中使用RecyclerView包含店铺和店铺的多个商品。实现思路:使用接口回调将第二个adapter的商品选择的监听事件回调给第一个adapter后再在第一个adapter中回调给MainActivity。使用接口回调将第一个adapter的商品选择的监听事件回调给MainActivity。在MainAct...
Android 中使用ExpandableListView 实现分组的实例

Android 中使用ExpandableListView 实现分组的实例

Android 中使用ExpandableListView 实现分组一个视图显示垂直滚动两级列表中的条目。这不同于列表视图,允许两个层次,类似于QQ的好友分组。要实现这个效果的整体思路为:1.要给ExpandableListView 设置适配器,那么必须先设置数据源。2.数据源,就是此处的适配器类,此方法继承了BaseExpandableListAdapter,它是ExpandableListView的一个子类。需要重写里面的多个方法。方法的意思,代码中都...
Android init.rc文件简单介绍

Android init.rc文件简单介绍

Android init.rc文件简单介绍init.rc脚本是由Android中linux的第一个用户级进程init进行解析的。init.rc 文件并不是普通的配置文件,而是由一种被称为“Android初始化语言”(Android Init Language,这里简称为AIL)的脚本写成的文件。该文件在ROM中是只读的,即使有了root权限,可以修改该文件也没有。因为我们在根目录看到的文件只是内存文件的镜像。也就是说,android启动后,会将init.r...
Android Apk去掉签名以及重新签名的方法

Android Apk去掉签名以及重新签名的方法

Android Apk去掉签名以及重新签名的方法Android开发中很重要的一部就是用自己的密钥给Apk文件签名,不经过签名的Apk文件一般是无法安装的,就算装了最后也是失败。网上流传的“勾选允许安装未知来源的应用”其实跟签不签名没啥关系,说白了就是允许安装不从电子市场上下载的应用而已。近几日需要修改一个Apk中JNI调用的.so文件,苦于没有apk源代码,只好研究了一下签名相关的问题。当然有很多第三方工具可以做到,但其实JDK中已经提供了强大的签名工具j...
ANDROID中自定义对话框AlertDialog使用示例

ANDROID中自定义对话框AlertDialog使用示例

在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式。AlertDialog中定义的一些对话框往往无法满足我们关于对话框的需求,这时我们就需要通过自定义对话框VIEW来实现需求,这里我自定义一个登陆的提示对话框,效果图显示如下:Layout(alertdialog自定义登陆按钮)界面代码:<?xml...
详解Android XML中引用自定义内部类view的四个why

详解Android XML中引用自定义内部类view的四个why

今天碰到了在XML中应用以内部类形式定义的自定义view,结果遇到了一些坑。虽然通过看了一些前辈写的文章解决了这个问题,但是我看到的几篇都没有完整说清楚why,于是决定做这个总结。使用自定义内部类view的规则本文主要是总结why,所以先把XML布局文件中引用内部类的自定义view的做法摆出来,有四点:1.自定义的类必须是静态类;2.使用view作为XML文件中的tag,注意,v是小写字母,小写字母v,小写字母v;3.添加class属性,注意,没有带and...
Android Matrix源码详解

Android Matrix源码详解

Matrix的数学原理在Android中,如果你用Matrix进行过图像处理,那么一定知道Matrix这个类。Android中的Matrix是一个3 x 3的矩阵,其内容如下:Matrix的对图像的处理可分为四类基本变换:Translate 平移变换Rotate 旋转变换Scale 缩放变换Skew 错切变换从字面上理解,矩阵中的MSCALE用于处理缩放变换,MSKEW用于处理错切变换,MTRANS用于处理平移变换,MPERSP用于处理透视变换。实际中当然...
解决Android解析图片的OOM问题的方法!!!

解决Android解析图片的OOM问题的方法!!!

大家好,今天给大家分享的是解决解析图片的出现oom的问题,我们可以用BitmapFactory这里的各种Decode方法,如果图片很小的话,不会出现oom,但是当图片很大的时候就要用BitmapFactory.Options这个东东了,Options里主要有两个参数比较重要.options.inJustDecodeBounds = false/true; //图片压缩比例. options.inSampleSize = ssize; 我们去解析一个图片,如...
Android实现微信朋友圈发本地视频功能

Android实现微信朋友圈发本地视频功能

一、前言前一篇文章已经详细介绍了如何使用Xposed框架编写第一个微信插件:摇骰子和猜拳作弊器 本文继续来介绍如何使用Xposed框架编写第二个微信插件,可以将本地小视频发布到朋友圈的功能。在这之前我们还是要有老套路,准备工作要做好,这里还是使用微信6.3.9版本进行操作,准备工作:1、使用apktool工具进行反编译,微信没有做加固防护,所以这个版本的微信包反编译是没有任何问题的。2、借助于可视化反编译工具Jadx打开微信包,后续几乎重要分析都是借助这个...
Android自定义相机界面的实现代码

Android自定义相机界面的实现代码

我们先实现拍照按钮的圆形效果哈,Android开发中,当然可以找美工人员设计图片,然后直接拿进来,不过我们可以自己写代码实现这个效果哈,最常用的的是用layout-list实现图片的叠加,我们这个layout命名为btn_take_photo.xml,这是一个自定义的drawable文件,所以按照规范,我们要将它放在drawable文件夹里。注意:drawable文件夹一般是来放自定义的drawable文件的,可以将它看成自己写的背景样式等等哦解释代码:l...
<< 31 32 33 34 35 36 37 38 39 40 >>