
Android
shboli
这个作者很懒,什么都没留下…
展开
-
Android对View进行截图
在某些特殊场合需要对View进行截图,使用View里面的getDrawingCache()方法,返回一个Bitmap对象,就可以实现截图的功能。我们先看一个简单的示例,分别点击三个按钮进行截图,获取到的Bitmap放到下面一个ImageView上面显示,效果图如下:1.原图2.对LinearLayout里面的内容(ImageView+TextView)截图3.对ImageView截图...原创 2019-07-12 22:20:10 · 8552 阅读 · 0 评论 -
Android通过IO流获取服务器的图片数据
在Android开发中,经常需要从后台服务器下载图片进行显示。虽然有很多现成的开源框架使用,给定一个url,进行一些配置后,直接就能加载图片显示,缓存都做好了。但是有的场景,例如涉及安全、隐私的场合,不能直接拿一个公开的url使用,还是需要通过原始数据流的方法来获取图片。通过请求参数,进行一些验证,能提高安全性。这里以最简单的IO流为例,没有涉及到图片缓存。好,废话不多说,直接上代码:原创 2018-01-18 20:17:45 · 6077 阅读 · 4 评论 -
Android给图片添加倒影效果
给图片添加倒影效果怎么实现呢?我们先看下效果图: 注释很详细,就不多说了。具体实现代码如下:package com.example.specialeffect_reflectedimages;import android.app.Activity;import android.graphics.Bitmap;import android.graphics.BitmapFact原创 2018-01-31 18:34:36 · 671 阅读 · 0 评论 -
EditText防止输入空格、换行、限制输入字符长度
EditText InputFilter原创 2017-12-23 23:55:02 · 1067 阅读 · 0 评论 -
Android:读取assets目录下文件(二)
assets xml原创 2017-12-23 23:36:34 · 1080 阅读 · 0 评论 -
Android:读取assets目录下文件(一)
Android 资源文件 AssetManager原创 2017-12-23 23:26:07 · 1187 阅读 · 0 评论 -
Android:判断应用程序接收通知开关是否打开
Android 接收通知开关原创 2017-12-12 11:08:45 · 11013 阅读 · 0 评论 -
setResult(Activity.RESULT_OK)失败分析
Activity startActivityForResult() setResult()原创 2017-12-12 14:46:07 · 4735 阅读 · 0 评论 -
Android:获取应用信息,打开、卸载应用
Android PackageManager PackageInfo SwipeMenuListView原创 2017-11-21 12:20:39 · 932 阅读 · 0 评论 -
Android知识点小结
Android中有很多零散的知识点,打算将平时开发中所遇到的一些记录下来,既可以加强记忆,也方便其他人查阅,共同进步。这篇博客会定期不断更新。1.获得布局加载器LayoutInflater的三种方法: // 方法之一: LayoutInflater inflater = getLayoutInflater(); //调用Activity的getLayoutInflater()方法 // ...原创 2017-05-28 00:05:23 · 336 阅读 · 0 评论 -
WebView与JavaScript交互代码混淆
前两天遇到一个问题,直接通过开发工具,在手机上安装Apk是OK的,可以正常运行,但是导出apk包给别人安装使用的时候,就出现问题了。什么问题呢?App里面有嵌入H5页面,页面里面的点击事件不响应,也就是H5里面的JavaScript与本地Java代码交互的时候调用失败。仔细想了一下这个过程,导出apk和开发工具直接安装的时候,有区别的地方在于应用签名不同,还有导包的时候做了混淆。签名不会对Ja原创 2018-01-29 19:02:53 · 737 阅读 · 0 评论 -
Android倒计时工具类CountDownTimer
在开发中很多地方都会用到倒计时功能,例如限时抢购、12306支付倒计时、短信验证码120s倒计时等等,之前一直使用Handler + Runnable来实现,后来发现Android自带的CountDownTimer这个工具类很好用,也是通过Handler和子线程来实现的。使用起来很方便,示例代码如下:package com.example.countdowntimer;import and...原创 2018-02-22 23:08:32 · 1314 阅读 · 0 评论 -
在Eclipse中使用RecyclerView(一)
AndroidStudio中使用RecyclerView很方便,在build.gradle文件中进行配置,引入该类即可。compile 'com.android.support:recyclerview-v7:23.4.0'现在项目中需要使用到RecyclerView,但是这个项目之前是使用Eclipse开发的,如果再切换到AndroidStudio比较麻烦,直接引入<a...原创 2018-02-23 17:40:20 · 1565 阅读 · 0 评论 -
Android组件化开发实践
一、首先,我们弄清楚什么是组件化开发?为什么要使用组件化开发?在Android项目开发中,我们都是根据不同的块或者业务关系,在主App下分很多不同的package,把需要的第三方库依赖配置好,就开始开发。但是随着项目发展到一定阶段,随着版本迭代,业务功能和参与开发人员的增多,代码会越来越臃肿,耦合越来越严重,开发和维护难度也越来越大,牵一发而动全身。明明只为了添加一个很小的功能,却需要更改很多...原创 2019-03-31 01:57:26 · 12125 阅读 · 19 评论 -
通过aapt工具查看AndroidManifest.xml文件
在反编译或者app打包加固之后,有时候需要查看apk文件中AndroidManifest.xml里面的一些配置信息,查看的方法很多,例如使用apktool、apk-parser等,个人觉得aapt工具最方便,这里介绍一下使用aapt查看的方法。aapt工具在Android SDK build-tools目录里面,以我的笔记本为例,AndroidStudio和Eclipse里面都有。使用方法...原创 2018-11-21 16:08:29 · 17239 阅读 · 0 评论 -
Android:在任务列表隐藏最近打开的app
对于某一个应用,如果不想在最近打开的app列表中留下任何纪录,即按下Home键回到主页,再按任务键的时候,任务列表看不到这个app,在AndroidManifest中给Activity标签添加:android:excludeFromRecents=”true”即可。<?xml version="1.0" encoding="utf-8"?><manifest xmlns...原创 2018-08-30 15:53:16 · 9524 阅读 · 1 评论 -
Android:获取最近打开app列表
按下任务物理键,会显示最近打开的App列表,可以用来切换多任务,如何通过代码来实现这种效果呢? 类似下面这样: 利用反射即可实现这个功能,示例代码如下: private void showRecentApps() { Class serviceManagerClass; try { serviceManagerClass...原创 2018-08-30 15:21:32 · 5220 阅读 · 0 评论 -
使用TextUtils.isEmpty()遇到的坑
Android开发中,我们经常使用TextUtils.isEmpty()来判断字符串是否为null或者空字符串,防止出现空指针异常,但是之前使用这个方法的时候,出现了一点小问题,所以记录下来,防止以后再犯。TextUtils.isEmpty()的实现如下: /** * Returns true if the string is null or 0-length. ...原创 2018-05-01 22:26:29 · 12664 阅读 · 0 评论 -
AndroidStudio——java.lang.UnsatisfiedLinkError错误
在AndroidStudio中导入Eclipse旧项目,刚运行的时候就出现下面的错误提示:E/AndroidRuntime: FATAL EXCEPTION: main Process: com.xxx.xxx, PID: 12801 ...原创 2018-04-17 16:36:22 · 433 阅读 · 0 评论 -
RecyclerView点击,移动到中间位置
这篇博客介绍怎样给RecyclerView添加点击事件,点击某一条item,被点击的item能移动到中间位置。例如我们点击靠右边的03-28那一个item,这个item会自动滑到中间位置,效果如下: 具体实现过程是怎么样的呢?(RecyclerView的使用前面的博客已介绍过,这里就不再赘述了。)首先,我们在RecyclerView的adapter里,自定义一个接口OnItemCli...原创 2018-03-20 19:23:24 · 1900 阅读 · 0 评论 -
在Eclipse中使用RecyclerView(二)
上一篇博客里介绍了如何在Eclipse中引入jar包,这里再具体介绍下怎么使用。我们先看下效果图: 效果和飞猪、携程买机票页面顶部效果类似(下面这是飞猪顶部效果) 接下来我们看代码。package com.li.recyclerviewdemo;import java.text.SimpleDateFormat;import java.util.ArrayList;...原创 2018-03-20 18:12:59 · 603 阅读 · 0 评论 -
Android中的Exception总结
Exception总结原创 2017-11-20 10:48:18 · 2580 阅读 · 0 评论 -
Android:使用GsonFormat插件遇到的坑
JsonSyntaxException GsonFormat原创 2017-11-28 20:15:44 · 2094 阅读 · 0 评论 -
EditText防止输入空格
Android EditText TextWatcher InputFilter原创 2017-08-10 11:30:15 · 738 阅读 · 0 评论 -
Spinner替代方案
Android Spinner 替代方案 PopupWindow原创 2017-08-01 21:11:27 · 2834 阅读 · 0 评论 -
Spinner弹出框遮挡住显示框的解决办法
Android Spinner 弹出框原创 2017-08-01 20:27:53 · 4886 阅读 · 3 评论 -
很简单的方法实现带数字的水平方向进度条
Android ProgressBar 进度条 数字百分比原创 2017-07-31 18:32:02 · 928 阅读 · 0 评论 -
ListView中实现部分刷新的两种方法
ListView原创 2017-06-18 10:37:52 · 2423 阅读 · 0 评论 -
EditText无法显示数据的问题
在Fragment里面使用EditText的时候,遇到一个很奇怪的问题。EditText的setText()方法一直显示旧的数据,无法显示新设置的数据,调用这个方法看起来无效。后来发现是由于onSaveInstanceState保存了EditText的内容造成的。只要在onCreateView()里面调用EditText的setSaveEnabled(false)就可以了。具体可以参考,分析的很详细原创 2017-05-27 08:37:00 · 654 阅读 · 0 评论 -
Android中通过WiFi执行adb命令
Android adb wifi原创 2017-04-25 16:56:29 · 3307 阅读 · 0 评论 -
AndroidStudio Failed to create JVM:error code -4错误
重新安装了AndroidStudio,在启动的时候,出现Failed to create JVM:error code -4的错误提示,如下图:根据提示框,觉得有可能是JDK环境配置不对,检查一遍,发现没问题。网上查了一下,发现是安装时内存配置不对造成的。打开AndroidStudio安装目录下面的bin文件夹,找到studio.exe.vmoptions文件,打开,把第九行,-Xmx512m修原创 2016-10-27 17:44:17 · 701 阅读 · 0 评论 -
Android应用开发性能优化完全分析
Android应用开发性能优化完全分析转载 2017-03-31 15:52:13 · 914 阅读 · 0 评论 -
Android:判断手机运营商
Android Sim卡运营商 TelephonyManager原创 2017-08-10 18:30:51 · 1916 阅读 · 0 评论 -
通过BroadcastReceiver自动获取短信验证码
广播 监控短信 验证码 BroadcastReceiver原创 2017-08-27 22:33:10 · 829 阅读 · 0 评论 -
通过ContentObserver自动获取短信验证码
ContentObserver 监听 手机短信原创 2017-08-27 23:00:14 · 762 阅读 · 0 评论 -
Android中Java代码与JavaScript交互
Android WebView JavaScript原创 2017-10-24 18:45:56 · 297 阅读 · 0 评论 -
获取正在运行的服务
Android service 系统原创 2017-10-20 18:59:55 · 1217 阅读 · 0 评论 -
从源码的角度分析Volley加载数据的过程
Android Volley原创 2017-10-18 14:51:25 · 233 阅读 · 0 评论 -
Android:字母大小写转换
EditText 大小写自动转换原创 2017-09-21 14:04:41 · 4050 阅读 · 0 评论 -
Android:使用自定义keystore的方法及注意事项
Android keystore 别名(alias)原创 2017-10-17 17:10:22 · 1023 阅读 · 0 评论