android
文章平均质量分 80
LuoCliper
人生最酷的事情,就是把曾经吹过的牛B,一个个变成现实。
展开
-
你应该要知道的handler消息屏障
Handler:postSyncBarrier 它到底是干什么的?简单理解为 消息插队。场景:排队买票先来了一个普通用户来排队,买完票走了。后面又来了一个VIP用户A来买票 就一直站在卖窗口这里 也不走(ps:添加屏障 ),紧接者又来了一个普通用户C,再后面又来了VIP用户B, VIP A 对VIP B 说,哥们不要排队直接来窗口买票,VIP B买完票走了,VIP A 被 某个哥们叫走了(移除屏障),这个时候终于轮到普通用户C买票了。只要有消息事件触发,线程再被naticePollOnce唤醒 后原创 2020-08-19 00:30:20 · 592 阅读 · 0 评论 -
activity之间的平移切换效果
效果如图----两个activity慢慢的切换动画这里我们介绍一个方法package com.example.activity;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;im原创 2015-04-01 15:42:49 · 1488 阅读 · 1 评论 -
AsyncTask源码分析
AsycTask 维护了一个线程池 看源码可发现它有一个最大线程和最小线程数 分别为(128和5) ,但是这是一个不准确的,最大线程数应该取决于你的CPU 首先它会获取你的CPU数量, 如果你的CPU为双核最大线程数应该为 (2*CPU数量+1) ,核心线程是你的CPU数量当使用的线程数量越多,栈的资源也就越大,对手机的消耗也就越大,同样电量的消耗也会变大,手机发热原创 2015-04-15 16:31:51 · 564 阅读 · 0 评论 -
wifi的使用
首先需要强调一点的是wifi只能在真机上测试! 在Android里,所有的wifi操作都在android.net.wifi包里,而常用的类也就只用几个,对于一般的开发人员来说,常用的操作也是有限的,不需要刻意的去记,用的时候现查就可以了!!! import java.util.List;import android.content.Context;import a原创 2015-05-02 23:19:25 · 558 阅读 · 0 评论 -
Android 编程下图片的内存优化
1. 对图片本身进行操作尽量不要使用 setImageBitmap、setImageResource、 BitmapFactory.decodeResource 来设置一张大图,因为这些方法在完成 decode 后,最终都是通过 Java 层的 createBitmap 来完成的,需要消耗更多内存。因此,改用先通过 BitmapFactory.decodeStream 方法,创建出翻译 2015-05-03 23:13:36 · 384 阅读 · 0 评论 -
Android Fragments
一个片段是一个应用程序的用户界面或行为,可以放置在一个活动让更模块化的活动设计。 它不会是错误的,如果我们说,一个片断是一种 sub-acitivity 。 以下是关于片段要点:一个片段都有它自己的布局和自身行为有自己的生命周期回调。您可以添加或删除片段的活动而活动正在运行。您可以组合多个片段,一个活动来构建一个多窗格UI。一个片段可以用在多翻译 2015-05-03 23:31:34 · 1431 阅读 · 0 评论 -
android 之services
服务是一个在后台运行的组件执行长时间运行的操作,而不需要与用户进行交互。 例如,一个服务可能在后台播放音乐时,在不同的应用程序中,用户也可以通过网络获取数据没有阻止用户交互活动。 服务基本上可以两种状态:状态描述开始服务是 开始 当一个应用程序组件,如一个活动,它通过调用开始 由startService() 。 一旦开始,一个服务可以无限期地翻译 2015-05-03 23:38:53 · 478 阅读 · 0 评论 -
android中调用WebService
调用 WebService 分以下几步: 1、指定 WebService 的命名空间和调用方法; 2、设置调用方法的参数值,如果没有参数,可以省略,设置方法的参数值的代码如下: rpc.addProperty("abc", "test"); 要注意的是,addProperty方法的第1个参数虽然表示调用方法的参数名,但该参数值并不一原创 2015-05-04 15:13:42 · 539 阅读 · 0 评论 -
Android+webService的连接
最近初步在搞android怎么去跟webservice的连接,调用参数返回。在这里发下我运行的源码。已测试,已成功! import android.widget.EditText;public class LQserviceActivity extends Activity { /** Called when the activity is first created. */ pri原创 2015-05-04 15:22:54 · 1084 阅读 · 0 评论 -
Android中View绘制流程以及invalidate()等相关方法分析
整个View树的绘图流程是在ViewRoot.java类的performTraversals()函数展开的,该函数做的执行过程可简单概况为 根据之前设置的状态,判断是否需要重新计算视图大小(measure)、是否重新需要安置视图的位置(layout)、以及是否需要重绘 (draw),其框架过程如下:转载 2015-05-13 08:57:46 · 508 阅读 · 0 评论 -
获取图片资源用到的三级缓存技术
package com.example.imagelist.utils;import java.io.File;import java.io.FileOutputStream;import java.io.Input原创 2015-04-01 17:10:46 · 689 阅读 · 0 评论 -
从源码的角度解析View的事件分发
有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListView引入了一个滑动菜单的功能,ListView就不能滚动了?为什么图片轮播器里的图片使用Button而不用ImageView?等等……对于这些问题,我并没有给出非常详细的回答,因为我知道如果想要彻底搞明白这些问题,掌握Android事件分发机制是必不可少的,而Android事件分发转载 2015-05-16 14:07:56 · 423 阅读 · 0 评论 -
Android开发把项目打包成apk
做完一个Android项目之后,如何才能把项目发布到Internet上供别人使用呢?我们需要将自己的程序打包成Android安装包文件--APK(Android Package),其后缀名为".apk"。将APK文件直接上传到Android模拟器或Android手机中执行即可进行安装。Android系统要求具有其开发者签名的私人密钥的应用程序才能够被安装。生成数字签名以及打包项目成APK都可以采用转载 2015-05-14 21:54:07 · 588 阅读 · 0 评论 -
android面试常考题
1、Android的四大组件是哪些,它们的作用? 2、请`介绍下Android中常用的五种布局。 3、android中的动画有哪几类,它们的特点和区别是什么 4、android 中有哪几种解析xml的类?官方推荐哪种?以及它们的原理和区别。 5、ListView的优化方案 6、请介绍下Android的数据存储方式。 7、activity的启动模式原创 2015-05-14 20:27:13 · 875 阅读 · 0 评论 -
ListView的常见优化:获取网络图片异步加载,分批加载,分页显示,图片缓存等优化方式
熟练掌握listview优化,获取网络图片异步加载,分批加载,分页显示,图片缓存等优化方式 一、复用convertView,减少findViewById的次数1、优化一:复用convertViewAndroid系统本身为我们考虑了ListView的优化问题,在复写的Adapter的类中,比较重要的两个方法是getCount()和getView()。界面上有多少个条转载 2015-05-07 09:22:47 · 1103 阅读 · 0 评论 -
打开URL启动android默认浏览器,启动指定浏览器
原文出自:http://blog.csdn.net/u013812046/article/details/39226515一、启动android默认浏览器 Intent intent = new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri转载 2015-05-07 09:27:12 · 22364 阅读 · 0 评论 -
Android基础之使用Fragment控制切换多个页面
Android官方已经提供了Fragment的各种使用的Demo例子,在我们SDK下面的API Demo里面就包含了Fragment的各种使用例子,需要看Demo的朋友,直接看API Demo那个程序就可以了,不用到处去找。里面分开不同功能,实现了不同的类今天讲解一下Fragment的控制,主要是切换View和页面替换等操作。还有就是如何获取Fragment的管理对象,以及与Act转载 2015-05-28 22:21:26 · 596 阅读 · 0 评论 -
高仿优酷菜单的效果
效果如图,可以点击切换,执行动画import android.os.Bundle;import android.app.Activity;import android.view.KeyEvent;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;i原创 2015-05-04 18:20:59 · 583 阅读 · 0 评论 -
教你怎么使用下拉刷新(第三方)
很久没用开源项目,重新复习一下下拉刷新 也是想总结下一个项目,应该需要那些东西, 为自己打下基础, 你也可以自己去下 library,关于源码我会在后面放在效果图pulltorefresh(下拉刷新) 有一个类是 PullToRefreshListView 因为我只讲下拉刷新,所以只取了一部分的类。 首先复制 将一个包粘贴进 你的工程 需要注翻译 2015-06-20 22:42:04 · 1353 阅读 · 0 评论 -
搭建XMPP协议,实现自主推送消息到手机
关于服务器端向Android客户端的推送,主要有三种方式:1.客户端定时去服务端取或者保持一个长Socket,从本质讲这个不叫推送,这是去服务端拽数据。但是实现简单,主要缺点:耗电等2.Google的C2DM,具体不细说,缺点,服务器在国外,你懂得,不是很稳定。3.XMPP协议,它是一种基于XML的传递协议,具有很强的灵活性和可扩展性。它的特点是将复杂性从客户端转移到了服务器端。听转载 2015-06-22 10:19:57 · 826 阅读 · 0 评论 -
PullToRefresh使用详解(三)--实现异步加载的下拉刷新列表
http://blog.csdn.net/harvic880925/article/details/17789617效果图: 初始化后,正在加载图片 加载出一部分 下拉刷新 新生成的ITEM转载 2015-06-01 00:07:38 · 511 阅读 · 0 评论 -
对Json数据的处理(模拟获取数据是来自于本地)
先上图:首先定义了Json数据:{ "persons": [ { "id": "1", "status":"大徙弟", "name": "孙悟空", "tool": "金箍棒", "number": "杀死了50只妖怪" }, { "id": "2", "status":"二徙弟", "name": "猪八戒", "tool": "九齿钉耙", "num转载 2015-06-04 00:48:20 · 852 阅读 · 0 评论 -
对JSON的初步认识
有一种叫做JSON (JavaScript Object Notation) 的轻量级数据交换格式能够替代XML的工作.优点:1. 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小2. 易于解析这种语言, 客户端JavaScript可以简单的通过eval()进行JSON数据的读取3. 支持多种语言, 包括ActionScript, C, C#, ColdFusion, Java, Ja原创 2015-06-24 21:56:21 · 556 阅读 · 0 评论 -
监听EditText的变化
最近遇到了问题就是在文本框输入号码长度为多少的时候,自动显示button控件,点击button跳到下一个界面在网上自己学了一下EditText 控件的高级用法(写了一个demo) 来实践一下 遇到的问题 开始一直报错我也我就纳闷了,后来才知道,这个监听事件不能与框架X—utils (注册事件) 一起使用 你们使用的时候千万要记住了public class L原创 2015-06-25 22:25:55 · 487 阅读 · 0 评论 -
使用 SQLiteDatabase 操作 SQLite 数据库
[java] view plaincopy使用 SQLiteDatabase 操作 SQLite 数据库/* Android提供了一个名为SQLiteDatabase的类,该类封装了一些操作数据库的API,使用该类可以完成对数据进行添加(Create)、查询(Retrieve)、更新(Update)和删除(Delete)操作(这些操作转载 2015-06-27 00:02:16 · 614 阅读 · 0 评论 -
数据库的多表设计
原创 2015-06-27 15:27:00 · 469 阅读 · 0 评论 -
当前屏幕保存为图片文件的类(getWindow().getDecorView())-----截屏
想要做图片的分享功能,首先就需要抓屏,将当前屏幕保存为一个图片文件 让我们一起来做做截屏 package com.gaolei.framework.android.util; import java.io.File; import java.io.FileNotFoundException; import jav原创 2015-06-06 22:54:12 · 3285 阅读 · 1 评论 -
eclipse debug (调试) 学习心得
eclipse debug (调试) 学习心得进入debug模式:1、设置断点2、启动servers端的debug模式3、运行程序,在后台遇到断点时,进入debug调试状态=============================作用域 功能 快捷键 全局 单步返回 F7 全局 单步跳过 F6 全局 单步跳入 F5 全局 单步跳入选择原创 2015-06-27 15:21:35 · 464 阅读 · 0 评论 -
使用getIdentifier()获取资源Id
使用getIdentifier()方法可以方便的获各应用包下的指定资源ID。主要有两种方法:(1)方式一Resources resources = context.getResources();int indentify = resources.getIdentifier(org.loveandroid.androidtest:drawable/icon",null,null);转载 2015-06-08 00:15:30 · 484 阅读 · 0 评论 -
TCP/IP、Http的区别
TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己转载 2015-06-29 11:32:22 · 445 阅读 · 0 评论 -
基础总结篇之一:Activity生命周期
子曰:溫故而知新,可以為師矣。《論語》学习技术也一样,对于技术文档或者经典的技术书籍来说,指望看一遍就完全掌握,那基本不大可能,所以我们需要经常回过头再仔细研读几遍,以领悟到作者的思想精髓。近来回顾了一下关于Activity的生命周期,参看了相关书籍和官方文档,也有了不小的收获,对于以前的认知有了很大程度上的改善,在这里和大家分享一下。熟悉javaEE的朋友们都了解serv转载 2015-06-09 00:00:46 · 651 阅读 · 0 评论 -
onSaveInstanceState和onRestoreInstanceState
Android Activity的onSaveInstanceState() 和 onRestoreInstanceState()方法:1. 基本作用: Activity的 onSaveInstanceState() 和 onRestoreInstanceState()并不是生命周期方法,它们不同于 onCreate()、onPause()等生命周期方法,它们并不翻译 2015-05-24 16:36:48 · 350 阅读 · 0 评论 -
[Android] Android开发优化之——使用软引用和弱引用
Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。这里重点介绍一下软引用和弱引用。如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的转载 2015-06-10 01:24:04 · 446 阅读 · 0 评论 -
Android中使用Handler造成内存泄露的分析和解决
什么是内存泄露?Java使用有向图机制,通过GC自动检查内存中的对象(什么时候检查由虚拟机决定),如果GC发现一个或一组对象为不可到达状态,则将该对象从内存中回收。也就是说,一个对象不被任何引用所指向,则该对象会在被GC发现的时候被回收;另外,如果一组对象中只包含互相的引用,而没有来自它们外部的引用(例如有两个对象A和B互相持有引用,但没有任何外部对象持有指向A或B的引用),这仍然属于不可转载 2015-06-09 23:38:29 · 407 阅读 · 0 评论 -
使用ANT打包Android应用
大家好,今天来分享一下如何使用ANT打包Android应用。通常我们习惯用eclipse来开发Android程序,它会自动帮我们打包当前的应用程序。如果在Navigator视图下,我们可以看到以下几个文件:在上图中,com包放置的是我们的class文件,classes.dex是class文件经过转换后的可以在dalvik上跑的精简类文件,resources.ap_是经过转载 2015-06-09 00:08:32 · 588 阅读 · 0 评论 -
MobclickAgent——友盟用户分析工具
关于友盟。。。。转载过来学习下,以后应该用得到!!!Android 统计分析 SDK使用指南1.建立App,下载SDK2.实现基本的使用3.使用错误报告4.使用自定义事件5.使用分发渠道分析6.使用应用程序更新提醒7.使用用户反馈收集8.设置数据发送策略9.使用在线配置功能1.建立App,下载SDKTop登录你的帐号后,看转载 2015-06-10 22:54:20 · 1563 阅读 · 0 评论 -
The type java.lang.Object cannot be resolved
有时候在Eclipse中打开或者导入项目时会出现标题字样的问题:The type java.lang.Object cannot be resolved. It is indirectly referenced。本文介绍解决此问题经验。方法/步骤1此问题从字面上理解是:java.lang.Object不能识别为一个类,请导入相关依赖文件。转载 2015-05-25 21:22:52 · 485 阅读 · 0 评论 -
android全屏去掉title栏的多种实现方法
android全屏去掉title栏包括以下几个部分:实现应用中的所有activity都全屏/实现单个activity全屏/实现单个activity去掉title栏/自定义标题内容/自定义标题布局等等感兴趣的可参考下啊1.实现应用中的所有activity都全屏在manifest中直接加入 复制代码 代码如下:android:theme="@android:styl转载 2015-06-11 00:51:29 · 663 阅读 · 0 评论 -
Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载
1. 百度网盘下载地址Android集成环境 NDK JDK 总链接 : http://pan.baidu.com/s/1bnjaDKb;Android Studio Linux版 : http://pan.baidu.com/s/1eQjA6MA ;Adt Bundle windows 64位版 : http://pan.baidu.com/s/1转载 2015-07-10 11:12:03 · 1410 阅读 · 0 评论 -
侧滑菜单的实现(自己实现咋们不用框架)
不能仅仅会用框架,了解原理才能更快的成长 咋们就是要任性一点,自己去做一些效果public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //FEATU原创 2015-06-15 02:12:32 · 504 阅读 · 0 评论