Android
文章平均质量分 77
星旅zl
记录自己的学习与成长
展开
-
Android 模拟器 . /dev/kvm is not found
1、首先确保你电脑设置了Intel Virtualization Technology为Enable错误提示:”Intel virtualization technology (vt,vt-x) is not enabled”,只需要进入BIOS界面在“configurations”中找到“Intel Virtualization Technology”将其设置成Enable即可;一般电脑再开...原创 2019-06-12 13:02:40 · 2099 阅读 · 3 评论 -
Android 混淆提示 java.io.FileNotFoundException: ...\proguard-rules\release\aapt_rules.txt (系统找不到指定的路径)
这个问题花了一些时间,在这里记录下来,首先先来说说Android的混淆。混淆配置文件由三部分组成:(此段转载自:http://blog.csdn.net/thm521888/article/details/53905928)1.默认配置 getDefaultProguardFile('proguard-android.txt') 或者 getDefaultProgua原创 2017-05-27 17:34:51 · 5896 阅读 · 2 评论 -
JDK不配置环境变量也可以使用的方法(偏门)
现在项目使用1.8的jdk环境,但是最近别的项目有需求,要用1.6的jdk,但是环境变量怎么配置都不生效,用了网上很多方法,现在来记录一个偏门用法,配置CLASSPATH和PATH就能使用,当然这是偏门,切换的时候会比较麻烦,此为下下策,慎用咯、1.下载然后安装JDK:这个不多说了,网上下载安装2.当安装完成1.6和1.8后,去环境变量path中找到 C:\ProgramData\原创 2017-05-23 17:29:51 · 6169 阅读 · 0 评论 -
LineChartView(折线图)的简单使用
上个月忙项目,好久不写博客,今天来说说折线图的使用。去GitHub可以下载这个jar包,在项目引用了jar包后可以在gradle里看到有引用的:compile files('libs/hellocharts-library-1.5.8.jar')引用好包后,我们开始看看怎么进行简单的使用。1.在xml中使用该控件chart_test.xml<android.sup原创 2017-05-12 11:09:53 · 3851 阅读 · 1 评论 -
Android-TextView中关键字文字颜色区别于普通文字的实现
总结了一下,一般有两种方法,下面来介绍一下。一、使用html的方法Html.fromHtml(str):这个方法很简单,我不详细写了,请参考文章:http://blog.csdn.net/youngmy5/article/details/50012229二、使用SpannableStringBuilder:这种方法比较复杂,但是学会了使用比第一种好用非常多,因为这个类的功能原创 2017-03-13 17:43:03 · 693 阅读 · 2 评论 -
Set剔除重复数据和List的排序问题
一、最近用到Set来做功能,要求是不允许添加重复的对象进入,要判断两个对象是否重复,我们可以在对象里面重写其中两个方法,equals()和hashCode() public static class CourseInfoBean implements Serializable{ private String CourseName; //课程名称原创 2017-03-23 11:16:46 · 456 阅读 · 0 评论 -
安卓屏幕宽高分辨率和多次快速点击导致启动多个Activity问题
要获取手机的dp,xp,先了解一下基本的基础:本段转载自分辨率:整个屏幕的像素数目,为了表示方便一般用屏幕的像素宽度(水平像素数目)乘以像素高度表示,形如1280x720,反之分辨率为1280x720的屏幕,像素宽度不一定为1280屏幕密度:表示单位面积内的像素个数,通常用dpi为单位,即每英寸多少个像素点px:长度单位,以具体像素为单位,1px即表示一个像素d原创 2016-09-08 15:56:36 · 614 阅读 · 0 评论 -
Android5.0以上的服务要显式调用/关于时间差问题/判断程序是否在前台
这几天遇到了两个小问题,我在这里记录下:一、服务报如下异常:java.lang.IllegalArgumentException: Service Intent must be explicit: Intent...这是因为Android5.0以上的服务要进行显式调用,隐式调用只能在安卓5.0以下,我们需要修改成:原创 2017-02-15 16:54:41 · 474 阅读 · 0 评论 -
AndroidPn客户端的使用和问题记录
最近在尝试用AndroidPn(Android Push Notification),配置就不说了,网上很多如下,截取自http://www.cnblogs.com/kobe8/p/3976923.htmlXMPP协议: XMPP : The Extensible Messaging andPresence Protocol. 中文全称:可扩展通讯和表示协议.简原创 2017-02-15 18:01:20 · 1099 阅读 · 0 评论 -
加密算法AES256的ECB-PKCS7Padding加密
转载自:http://blog.csdn.net/firas/article/details/47043335主要代码如下:[java] view plain copyimport java.security.Security; import javax.crypto.Cipher; import javax.crypto原创 2017-01-07 22:39:52 · 10945 阅读 · 2 评论 -
Fragment中StartActivityForResult以及EventBus的使用问题
当Fragment中点击按钮跳转到一个Activity中,如果此时需要监听一些Activity中的选择值,当返回Fragment时要拿到这些选择值,我们就可以使用StartActivityForResult,这里需要注意的有两点:1.使用时不要用到Fragment依附的Activity的StartActivityForResult方法,而是Fragment的该方法2.精确返回是那个跳转的F原创 2017-03-02 09:44:47 · 674 阅读 · 0 评论 -
使用Jpush(极光推送)实现推送功能
农历猴年最后一篇文章,在写前先写一段话,我觉得挺好的,2017年要努力做到:学会忍耐,因为事已成现实自己无法改变;学会说不,因为做不到的事不要强求;学会适应,因为任何条件下都要生存;学会知而不言,因为言多必失;学会拿得起放得下,以为只要这样才会能重新开始新的起点;做不了决定的时候,让时间帮你决定,如果还是无法决定,做了再说,宁愿犯错,不留遗憾。以下是极光推送的实原创 2017-01-23 17:57:35 · 1011 阅读 · 0 评论 -
Android用Zxing扫二维码/生成二维码功能
新年已过,一切恢复真正常,新的一年给自己几句指引:光努力还不行,方向很重要。总是想着最坏的结果,就会让人失去改变的勇气。你当然有权利选择自己的人生--但只有在你真正强大后,逆行的阻力才会降到最小。never say never.下面开始记录二维码使用过程吧。一、简介:ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系原创 2017-02-21 14:00:25 · 4110 阅读 · 0 评论 -
键盘的弹出和隐藏
第一种:弹出时判断是哪个控件下,收起时判断焦点protected void hideSoftKeyboard() { if (getActivity().getCurrentFocus() != null) { InputMethodManager inputMethodManager = (InputMethodMana原创 2016-09-26 12:32:55 · 563 阅读 · 0 评论 -
在代码中生成View
快一个月没有写文章了,学习之路不能懈怠,风雨中前行。最近学习了关于用代码来实现布局的设计,记录一下主要的实现。一、写成一个类,去继承自一种View,然后这个新的View类就可以直接使用了public class CommonTitleView extends FrameLayout { public CommonTitleView(Context context, Attribu原创 2017-01-13 15:53:03 · 413 阅读 · 0 评论 -
自定义Toast(图片+文字+全屏)
灵感来自这篇博客,只是需要的样式和他的有点出入:上代码:public class CustomToast { public static void ToastWithImageShort(Context context, int imageRes, CharSequence text){ //创建一个Toast提示消息 Toast toa原创 2017-07-11 20:45:11 · 2085 阅读 · 4 评论 -
Android MultiDex使用
一、MultiDex出现原因:下段摘自http://www.cnblogs.com/CharlesGrant/p/5112597.html当Android系统安装一个应用的时候,有一步是对Dex进行优化,这个过程有一个专门的工具来处理,叫DexOpt。DexOpt的执行过程是在第一次加载Dex文件的时候执行的。这个过程会生成一个ODEX文件,即Optimised Dex。执行ODe原创 2017-06-14 14:55:14 · 606 阅读 · 0 评论 -
Android性能优化和内存优化
当项目功能实现了,我们就要开始考虑优化的问题了,这里主要讲性能优化和内存优化性能优化(摘自http://www.jianshu.com/p/afc54b7e90cb)可以去看这个人写的文章https://juejin.im/user/5852a52d8d6d81006593c533界面优化太多重叠的背景(overdraw)这个问题其实最容易解决,建议就是检查原创 2017-06-15 15:47:49 · 402 阅读 · 0 评论 -
Android面试问题集合
好久不做安卓,感觉快忘光了,赶紧恢复一波面试问题记忆1、简单说下activity的启动模式、安卓四大组件四大组件:https://www.cnblogs.com/hrhguanli/p/3961599.html(必须要熟记:Activity\Service\broadcastreceiver\Content provider)四种启动模式:https://www.cnblogs...原创 2019-05-17 09:32:06 · 246 阅读 · 2 评论 -
AndroidStudio安装后首次加载慢处理
之所以加载慢,是因为要下载SDK组件,其实现在我们都可以直接用现成的网上下载SDK包,解压直接用(解压后记得在系统配置好环境变量和验证,如果验证出问题可以参考文章https://mp.csdn.net/postedit/80768726)接下来就说安装完成后的步骤,安装完成后我们点击完成,然后就会启动Android Studio(忘记存图,直接用百度经验图哈哈)到了这里,如果你此时...原创 2018-12-14 11:24:26 · 2334 阅读 · 0 评论 -
'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件
看了很多文章,说的很多,其实无非就是一种方案。adb.exe要么在sdk文件的tool是下要么是在platform-tools文件夹下。如果不想管放在哪个文件夹下,我们只要在环境变量 --> 系统环境变量 --> path加上(我的sdk放在E:\sdk\android_sdk下):;E:\sdk\android_sdk\tools;E:\sdk\android_sdk\p...原创 2018-06-22 08:47:33 · 17033 阅读 · 4 评论 -
ViewPage+RadioGroup实现Tab切换
以前写过一篇也是Tab切换的文章,当时做安卓一年左右,单纯觉得这样能实现功能,但是没有注意到性能和代码简洁性的问题,文章为 http://blog.csdn.net/nzzl54/article/details/52537320今天的文章些许借鉴了这篇文章,这里面也介绍了几种Tab切换的设计,有兴趣的可以去看看:http://blog.csdn.net/u010583599/article/de...原创 2018-03-05 17:43:44 · 442 阅读 · 0 评论 -
项目build.gradle的那些事(小记)
忙碌的2017.12已过,接着迎接忙碌的2018....很久没写东西了,今天想跟着经验写最近对build.gradle的一些认为值得记录的东西。一、关于签名以前很多人都喜欢直接把签名的信息直接写在gradle,但是这样的做法不是太好,我们可以这样做,用一个文件专门存下签名的配置信息,此处姑且叫signing.properties,大致信息如下:放在和build.gradle同一级别目录原创 2018-01-09 11:49:35 · 1303 阅读 · 0 评论 -
TortoiseSVN使用-进行版本控制(适用于私人控制非集体开发)
第一次自己弄版控制,我们先来弄个个人的搭建的私有SVN控制,意味着只能个人操作,不支持多人操作的TortoiseSVN,如果想要多人一起开发的那种的话,那就必须使用VisualSVN Server,使用详细可以参考以下链接。http://blog.csdn.net/lu1024188315/article/details/74082227这里重点讲解TortoiseSVN私人使用的版本控制原创 2017-09-30 11:49:59 · 695 阅读 · 0 评论 -
Android应用接收NFC读卡
最近在看NFC功能,重点就是我在页面上设置了一个按钮,要点击此按钮才会开启NFC读卡功能(并非跳转下个Activity),为了方便使用,为此可以专门设置一个基类Activity作为NFC功能的管理,此处我命名为TestNfcBaseActivitypublic abstract class TestNfcBaseActivity extends BaseActivity {// pr原创 2018-01-19 16:14:09 · 9477 阅读 · 4 评论 -
android自定义相机(带边框和按钮)
前两个月项目要求不能调用系统的相机,那就只能用自定义的了,查了一些资料,自己再研究了一下,自定义的相机还是有点复杂的,布局和代码中都要用到一个重要的SurfaceView。一、建立布局,布局的背景框可以让美工给出,这里姑且就是一个蓝色的边框,然后下面有三个按钮,我里布局文件activity_custom_camera.xml<LinearLayout xmlns:android="htt原创 2018-01-22 12:07:38 · 7565 阅读 · 6 评论 -
Toast弹框Util
首先是吐司在中间现显示的:public final class CenterToast { private CenterToast() { } public static void ShortCenter(Context context, String message){ toastCenter(context, android.widg原创 2018-01-11 17:37:24 · 246 阅读 · 0 评论 -
时间日期工具类Util
今天在公众号中看到一篇关于Android时间日期的整理,然后觉得有一些是可取的,经过自己的一些调整、修改、增加和完善,决定放出来供大家参考,说好听点是为了节省不必要的开发时间和提高编码效率,难听点就是“可以偷懒”啦,无论如何,方便的东西才是好的,毕竟的确没有必要花费太多时间在这上面,下面粘贴代码,有不足之处请在评论说出,共同成长:public class DateUtil {final原创 2018-01-11 17:20:09 · 754 阅读 · 0 评论 -
App安全登录之密码、通讯加密方法(MD5,Base64,RSA,AES)
今天研究了一下关于登录密码加密的问题,下面来说说实现。一、RSA非对称加密:截取自http://blog.csdn.net/m372897500/article/details/50905017具体流程如下:客户端向服务器第一次发起登录请求(不传输用户名和密码)。服务器利用RSA算法产生一对公钥和私钥。并保留私钥, 将公钥发送给客户端。客户端收到公钥后, 加密用户密码, 向服务原创 2016-12-19 16:10:21 · 3714 阅读 · 0 评论 -
Socket编程(Android客户端+PC服务器端)
一个多月没有写东西了,感觉像过了一个暑假。。。废话不多说了,今天来记录一下这两天学习Socket的内容。按照我研究思路来进行一步步的深入Socket。一、什么是Socket网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TC原创 2017-09-16 14:26:18 · 5149 阅读 · 0 评论 -
自定义Dialog弹框和其背景阴影显示
昨天研究了一下自定义Dialog的弹框,其实要点都是把自定义好的view用setContentView(view)的方法设置进dialog里,首先我们先看一个简单的自定义Dialog。一、写布局文件:custom_dialog_layout.xml(这个布局就是一个简单的提示内容,下面有一个确定的按钮,请参看评论中的效果图)<LinearLayout xmlns:android="htt原创 2017-07-26 12:37:38 · 10270 阅读 · 3 评论 -
OKhttp、RXjava与retrofit的网络访问使用
关于Rxjava的学习和介绍,有兴趣的可以去云盘中提取pdf资料,这里不做详解,地址和提取码如下:链接: http://pan.baidu.com/s/1skDOjN3 密码: ajv7。 要想Rxjava和Retrofit结合使用,我们先简单了解一下什么是Retrofit:Square提供的开源产品,为Android平台的应用提供一个类型安全的REST客户端。原创 2016-07-24 23:59:50 · 2449 阅读 · 0 评论 -
简单的自定义标题栏(不使用Toolbar)
比较简单的自定义标题栏,这里直接封装成一个类似控件的样子,先上效果图:我们可以先写一个BaseView来,用来做标题栏的基础布局:public class BaseView extends FrameLayout implements OnClickListener { protected Activity mActivity; protected Context mConte原创 2016-09-20 10:22:05 · 804 阅读 · 0 评论 -
右滑菜单SlidingMenu
这里重点描述两种简单的方法,一种是直接使用SlidingMenu,另一种是继承SlidingActivity,下面写出使用方法。一、使用SkidingMenu1.准备布局文件<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_p原创 2016-12-06 17:46:16 · 429 阅读 · 1 评论 -
自定义滑动ViewPage
前端时间自己做了个滑动页面,现在分享一下,做得比较粗陋,一步一步来。一.准备布局文件:(1)activity_my_view.xml:Activity的布局,其中重点是一个包含menu_list.xml的layout<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:原创 2016-12-05 12:24:27 · 314 阅读 · 1 评论 -
初学Android快速上手经验(自我小结)
自我小结:学习Android最好是是从实践入手(推荐图书:第一行代码--Android,视频网站:黑马程序员)。步骤一:先粗略了解SKD(Android重要的工具),然后把环境配置好(如何配置:http://blog.csdn.net/nzzl54/article/details/46400123)步骤二:建立第一个Android项目,成功输出“Hello worl原创 2015-09-09 10:44:22 · 2349 阅读 · 0 评论 -
Android 建立项目遇到的问题(真实经历)和一个简单App项目
1.Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序2.在用eclipse IDE开发android应用程序之前,你首先要创建一个Android工程,并且建立一个启动配置,在此之后你才可以开始编写,运行,以及调试你的应用程序。打开Eclipse,单击菜单栏的“File”->把鼠标光标移动到“New”->“Project...”在弹出的列原创 2015-06-15 12:05:16 · 973 阅读 · 0 评论 -
调用系统照相机和相册
介绍的文章很多,这里通过一个实例来展示:原创 2016-08-03 18:32:26 · 1148 阅读 · 0 评论 -
带列表的自定义PopupWindow
一、View结构原理Android系统的视图结构的设计也采用了组合模式,即View作为所有图形的基类,Viewgroup对View继承扩展为视图容器类。View定义了绘图的基本操作基本操作由三个函数完成:measure()、layout()、draw(),其内部又分别包含了onMeasure()、onLayout()、onDraw()三个子方法。具体操作如下:1、measure操作原创 2016-09-12 11:23:38 · 3039 阅读 · 0 评论 -
Activity回收重建后的Fragment生成多次
当内存满后,Activity有可能被回收,当Activity中有Fragment时,有可能会导致fragment生成多次,按多次回退键才能退出,经过多查阅,一般有一下几种解决方法:1.重写Activity中的onSaveIntanceState方法,把super方法注释掉 @Override protected void onSaveInstanceState(Bundle out原创 2016-09-12 10:18:48 · 523 阅读 · 0 评论