![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
繁星点点-
不尝试去做就没有实现的可能。
展开
-
AccessibilityService 获取WebView内容
相信很多人使用AccessibilityService获取WebView内容的时候是为空的,使用AccessibilityNodeInfo的findAccessibilityNodeInfosByText方法是获取不到WebView里面的内容的。解决方法:给AccessibilityService服务添加一个Flag,下面的所有代码是Kotlin的写法// 设置标志位,读取webView...原创 2018-08-06 15:57:07 · 17327 阅读 · 13 评论 -
Android studio 修改项目包名
我们知道在eclipse下修改项目包名是很容易的,直接选中包目录右键--》Refactor --》Rename,在弹出框中修改包目录结构就可以了但是在Android studio 中按照这样修改就不行了,那么怎么做呢,只能一级一级修改:在项目结构顶部右手边有个设置按钮,点击之后取消选择Compact Empty Middle Packages,意思是不折叠空文件夹。原创 2016-06-28 09:20:26 · 7442 阅读 · 1 评论 -
获取APK签名sha1值
Ubuntu下使用Android studio的Terminal窗口进去用户根目录的.android文件夹使用命令:keytool -list -v -keystore debug.keystore 会得到三种指纹证书或者打开文件浏览器定位到Home根目录,然后使用快捷键Ctrl+H 显示隐藏文件(.android 属于隐藏文件)进到.android文件夹右键“原创 2016-06-28 07:49:58 · 2319 阅读 · 0 评论 -
在Android Studio中进行单元测试和UI测试
关于单元测试比较不错的文章分享给大家:http://www.jianshu.com/p/03118c11c199转载 2016-05-10 23:33:35 · 403 阅读 · 0 评论 -
开源图片加载库universal-image-loader使用
库地址:https://github.com/nostra13/Android-Universal-Image-Loader/wiki/Configuration了解库的结构和可以调用的方法ImageLoader | | - init(ImageLoaderConfiguration) | - isInited()原创 2016-04-06 21:24:55 · 494 阅读 · 0 评论 -
TextView 显示html
TextView tv_title =(TextView) findViewById(R.id.tv_title);String html ="XCL-Charts" +" 版本: 2.4"+" 最后更新: 2015-09-26"+ " "+原创 2015-12-22 11:04:20 · 576 阅读 · 0 评论 -
Android电话拨号器
知识点:内部类的使用可以加快加载的速度,但外部类单独生成的类文件加载慢一些。实现方式:该程序的拨号功能的实现是通过调用系统自带的拨号器里面的Activity实现的。 核心方法:为拨号按钮添加点击事件private final class ButtonClickListener implements View.OnClickListener{publicvoid onClic原创 2015-12-03 21:30:55 · 320 阅读 · 0 评论 -
Activity的生命周期
一、Activity运行在stackActivities是由Activity stack管理的。当一个新的Activity被启动,它就会处于stack的top位置,成为当前运行的Activity。而前一个Activity依 然保留在stack里面,当需要调用这个Activity时就会回到stack的top位置成为当前运行的Activity。 Task运行过程二、Activi原创 2015-12-03 21:22:56 · 589 阅读 · 0 评论 -
Android设置特定时间执行操作
方式一:// 设置3.5秒后启动第二个动画 new Timer().schedule(new TimerTask(){ @Override public void run(){ handler.sendEmptyMessage(0x123); } }, 35原创 2015-12-03 21:42:18 · 2356 阅读 · 0 评论 -
float/double数据不显示成科学计数法
importjava.text.NumberFormat; NumberFormat nf =NumberFormat.getInstance();nf.setGroupingUsed(false);nf.format(3421313.34);原创 2015-12-03 21:13:52 · 11532 阅读 · 0 评论 -
健壮且可读的安卓架构设计
自接触Android以来,我一直在寻找一种比较健壮的开发方法。譬如避免在UI线程进行IO操作,防止重复的网络请求,对重要数据进行缓存并且准确的更新这些缓存等等。当然,代码结构也要保持尽量清晰。本文并不是给你提供一个权威精准的解决方案,更多的是去探讨在灵活性、可读性和健壮性之间有着很好平衡的App的一种开发方式。一些现有的解决方案在Android的初期版本,许多人处理多任务时会选择转载 2015-12-20 20:48:26 · 403 阅读 · 0 评论 -
byte[]数组和int之间的转换
这里简单记录下两种转换方式:第一种:1、int与byte[]之间的转换(类似的byte short,long型)[java]view plaincopy/** * 将int数值转换为占四个字节的byte数组,本方法适用于(低位在前,高位在后)的顺序。 和bytesToInt()配套使用 * @param value *转载 2015-12-03 21:34:28 · 2734 阅读 · 0 评论 -
设置ExpandableListView不显示分割线
android:id="@+id/expandlist" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ffffff" android:cacheColorHint="#00000000"原创 2015-12-03 21:14:35 · 2807 阅读 · 0 评论 -
短信发送器
核心方法:private final classButtonClickListener implements View.OnClickListener{publicvoid onClick(View v) {Stringnumber = numberText.getText().toString();//取得号码Stringcontent = contentText.getText原创 2015-12-03 21:31:30 · 327 阅读 · 0 评论 -
Android 使用LruCache和DiskLruCache建立图片加载库
目前第三方的图片加载库很多,例如:universal-image-loader,Volley等,今天我们来写一个简单的图片加载库实现图片网络下载缓存。 首先先了解一下图片加载用什么方式,通常我们从网络加载图片的时候希望加载的图片优先从本地缓存获取,本地没有就从网络下载再缓存到本地,这样可以减少网络访问的开销和提高图片加载的速度,从而增加用户体验。 本地的缓存资源原创 2016-06-13 17:27:39 · 512 阅读 · 0 评论 -
Android Service 你应该掌握的东西
Service 是Android四大组件之一,通常是在后台运行的,执行一些耗时的操作。对于Service 我们需要掌握的知识点有:1、Service 的生命周期2、Service 的创建3、远程服务的AIDL 跨进程通讯4、提高 Service 的生存率的一些方法下面我们来一步步学习。一、Service 的生命周期Service 的启动方式有两种,下面来原创 2016-06-12 21:49:06 · 4168 阅读 · 0 评论 -
Android studio 中GitHub的使用
下面是对Androidstudio 中如何使用GitHub的一些个人总结,尽量做到简单明了,希望可以帮到有需要的朋友,下面主要是介绍在Android studio中使用GitHub发布版本和同步版本到本地的内容,因为篇幅有限,如何注册账户和管理repositories省略了,省略的内容可以自己上网了解一下。 发布版本:第一步:首先你得申请一个GitHub的账户,到https://git...原创 2015-04-02 22:15:38 · 1051 阅读 · 0 评论 -
android设置控件的字体和背景(通过资源引用)笔记
所有View的子类都具有的一个方法,设置背景颜色:int resid = getResources().getColor(R.color.background_green_low)setBackgroundColor(int resid);--------------------------------------------------------------------------...原创 2015-04-29 16:13:20 · 842 阅读 · 0 评论 -
使用DialogFragment代替Dialog定制各种样式
DialogFragment 在API3.0 之后引入,官方推荐使用DialogFragment来代替Dialog优点:(1)方便管理。因为DialogFragment本身也是继承Fragment类,所以具有Fragment的生命周期。(2)保存Dialog状态。旋转屏幕的时候屏幕会重绘导致Dialog消失,利用Fragment的生命周期回调保存Dialog的信息。(3)定制Dia原创 2017-09-14 17:54:48 · 1057 阅读 · 0 评论 -
GestureDetector使用详解
转自:http://blog.csdn.net/harvic880925/article/details/39520901一、概述当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等。一般情况下,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionEvent ev转载 2016-07-26 00:14:06 · 1213 阅读 · 0 评论 -
BitmapFactory解析与Bitmap的内存优化
转自:http://www.tuicool.com/articles/3eMNr2n1、BitmapFactory解析Bitmap的原理BitmapFactory提供的解析Bitmap的静态工厂方法有以下五种:Bitmap decodeFile(...)Bitmap decodeResource(...)Bitmap decodeByteArray(...)Bit转载 2016-07-24 21:34:08 · 6653 阅读 · 0 评论 -
获取Bitmap的几种方式总结
从获取方式分:(1)以文件流的方式假设在sdcard下有 test.png图片FileInputStream fis = new FileInputStream("/sdcard/test.png"); Bitmap bitmap=BitmapFactory.decodeStream(fis);(2)以R文件的方式假设 res/drawable下有 test原创 2016-07-24 14:12:28 · 22232 阅读 · 0 评论 -
定时器AlarmManager使用
转自:http://www.open-open.com/lib/view/open1350291466977.htmlAlarmManager的作用文档中的解释是:在特定的时刻为我们广播一个指定的Intent。简单的说就是我们设定一个时间,然后在该时间到来时,AlarmManager为我们广播一个我们设定的Intent。AlarmManager alarmManager = (Alar转载 2016-07-24 11:49:57 · 434 阅读 · 0 评论 -
Android studio 创建aidl文件夹
在src/main文件夹下建一个aidl文件夹跟java文件夹是在同一级目录下点击 刷新Android studio的工程,就会看到多了一个aidl目录,选中aidl文件夹右键--》NEW --》AIDL --》AIDL File ,在弹出框填写aidl文件的名称,点击OK,软件会自动生成一个aidl文件。该aidl文件是放在跟工程的相同的包路径目录下。原创 2016-06-28 08:22:46 · 1060 阅读 · 0 评论 -
Android studio 添加assets文件夹
我们知道Eclipse创建的工程默认是有个assets文件夹的,但是Android studio默认没有帮我们创建,那么我们就自己创建一个就好啦。在项目的顶部有个下拉,默认选择的是Android,但是在Android 模式下不能真实反映整个工程的目录结构,所以我们点击它在下拉选项中选择Project,选完之后目录发生了变化我们找到/src/main,选中main文件夹右原创 2016-06-28 08:37:17 · 48533 阅读 · 6 评论 -
深入Android MediaPlayer的使用方法详解
原文:http://www.jb51.net/article/38722.htm1)如何获得MediaPlayer实例:可以使用直接new的方式:MediaPlayer mp = new MediaPlayer();也可以使用create的方式,如:MediaPlayer mp = MediaPlayer.create(this, R.raw.test);//这时就转载 2016-07-23 23:30:48 · 642 阅读 · 0 评论 -
Android Notification 的总结分析
原作地址:http://www.jb51.net/article/36567.htm在原作基础上做了修改和补充,更完善些。notification有以下3种 ###############################################################1>普通notification1.内容标题2.大图标3.内容4.内容附转载 2016-07-23 23:19:09 · 400 阅读 · 0 评论 -
AIDL跨进程通讯访问远程服务
AIdl 中文意思是Android 接口定义语言,用于跨进程通讯定义接口用的。跨进程通讯在android中用得最多的就是Binder了,而AIDL就是配套Binder使用的一种接口定义语言,它会转化生成对应的接口文件。Binder跨进程通讯传递的数据类型是有限制的,如下:1、JAVA的基本数据类型(int, long, char, boolean等)。不需要import包。2、Stri原创 2016-06-15 18:44:44 · 802 阅读 · 0 评论 -
Intent的简介以及属性的详解
一. Intent的介绍 Intent的中文意思是“意图,意向”,在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Act转载 2015-12-03 21:26:59 · 556 阅读 · 0 评论 -
使用HttpURLConnection实现文件下载
使用HTTP协议下载文件文件下载步骤:1、创建一个URL对象;2、创建一个HttpURLConnection对象;HttpURLConnectionurlConn =(HttpURLConnection)url.openConnection();3、获得一个InputStream对象;urlConn.getInputStream();4、访问网络的权限;Andr原创 2015-12-03 21:29:51 · 1250 阅读 · 0 评论 -
AES加解密工具类
使用过可行的工具一:只能AES加解密,key要16位package com.rujian.passwordmanager.util;import android.util.Base64;import javax.crypto.Cipher;import javax.crypto.spec.IvParameterSpec;import javax.crypto.s原创 2015-11-30 21:07:03 · 831 阅读 · 0 评论 -
android开发技巧总结(68个常用用法)
下面是我平时开发Android应用用到的技巧的总结,包含了许多Android的用法,希望能帮到有需要的朋友:压缩包:(哎呀~附件不知道怎样上传,知道的可以告诉我哦)百步网盘链接:http://pan.baidu.com/s/1c02r3VU每次都要上传网盘很麻烦的呢,本来有好多好的东西想分享的呢~~~~~~~~~~~~~原创 2015-11-30 20:56:36 · 584 阅读 · 1 评论 -
AlertDialog&ProgressDialog几种形式
@OverridepublicvoidonClick(Viewv) {switch(v.getId()){case R.id.btn1://确定取消对话框//1获取一个对话框的创建器AlertDialog.Builder builder=newBuilder(MainActivity.this);//2所有builder设置一些参数builder.setTitle(原创 2015-11-30 21:17:08 · 832 阅读 · 0 评论 -
Java数组操作集合
0、定义一个Java数组String[] aArray = newString[5];String[] bArray ={"a","b","c", "d", "e"};String[] cArray = newString[]{"a","b","c","d","e"};第一种是定义了一个数组,并且指定了数组的长度,我们这里称它为动态定义。 第二种和第三种在分配内存空间的同时原创 2015-11-30 21:25:19 · 840 阅读 · 0 评论 -
android的EditText重新获取焦点问题
android的EditText重新获取焦点问题在android开发过程中关于EditText在setFocusable(false);后,当需要再次获得焦点输入时设置setFocusable(true);后还是无法获得焦点的问题:解决办法:对EditText设置后就可以了!et.setFocusable(true);et.setFocusableInTouchMode(t原创 2015-11-30 21:24:21 · 1470 阅读 · 0 评论 -
sql.Date与util.Date日期格式化和转换
(1) 获取当前时间,并格式化为yyyy-MM-dd格式:Java.util.Datedate = new Java.util.Date();SimpleDateFormatsimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");String time = simpleDateFormat .format(date); 注意:原创 2015-11-30 20:31:26 · 6880 阅读 · 0 评论 -
Android 实现标题重用
有时候我们需要在不同Activity中使用相似的标题,这时候我们可以定义一个BaseHeadActivity来代表标题,在其它Activity中继承BaseHeadActivity就可以实现标题的重用,也可以在BaseHeadActivity中定义一些方法控制标题组件的显示样式。实现的最核心的部分是BaseHeadActivity需要重写父类的三个setContentView方法,BaseHe原创 2015-06-24 09:01:15 · 584 阅读 · 0 评论 -
Android代码实现清理缓存
Android开发有时候需要实现清理缓存的功能,在网上找了找,基本实现的方式有两种:第一种:有root权限,直接删除应用的缓存文件夹。可以借鉴一下博客:http://www.cnblogs.com/rayray/p/3413673.html第二种:不用root权限,利用android系统的漏洞,这种方式是清理所有的缓存。实现的原理是当你的应用申请很大的内存,而系统的内存不满足申请的原创 2015-06-24 08:20:04 · 3879 阅读 · 1 评论 -
Android--ListView点击Item展开的实现
最近想写一个小程序,为了实现点击ListView展开的效果,从网上找了一下,也没找到好的实现方法,跟自己想的思路差不多,最后决定还是自己想好了。一开始是想使用 ExpandableListView 实现点击展开的,做了一下还行效果出来了。最后还是想使用 ListView来实现。原创 2015-06-18 17:16:42 · 4489 阅读 · 0 评论 -
Http协议分析
这是之前学习http协议的一些笔记,希望能帮到有需要的朋友1.HTTP协议概述HTTP协议用于定义客户端与web服务器通迅的格式。HTTP是hypertexttransfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议HTTP使用请求-响应的方式进行传输,一个请求对应一个响应,并且请求只能是由客户端发起的。HTTP协议的版原创 2015-03-12 19:02:18 · 675 阅读 · 0 评论