Android
文章平均质量分 64
YuNansen
我的头条号用户名:univerce
展开
-
参考别人的分析对于Volley的理解(二)
csdn体验太差了,竟然把我辛辛苦苦码的一篇文章给吞了,我只好找到缓存,因为不知道怎么还原,只要把它保存成一张图片后上传,作为替代品,严重声讨这种bug,直接把别人的东西给抹了。。。原创 2016-03-30 20:46:50 · 358 阅读 · 0 评论 -
Android Studio常用插件
转载: http://blog.csdn.net/crazy1235/article/details/48598803不得不承认,Android Studio越用越爽。其代码提示和搜索功能相当强大,非常智能。颜色、图片在布局和代码中可以实时预览。 开发的过程中使用一些插件可以事半功倍,下面介绍一些博主开发过程中常用到的一些as插件供大家参考。Android Stud转载 2016-03-31 20:04:55 · 430 阅读 · 0 评论 -
android使用getItemViewType时出现java.lang.ArrayIndexOutOfBoundsException的错误
我们在添加listview的时候,因为需要我们自定义自己的布局(不止一个),那么就需要我们重写getItemViewType和getViewTypeCount方法,如: @Override public int getItemViewType(int position) { // TODO Auto-generated method stub String t = news.g原创 2015-03-10 18:01:51 · 1970 阅读 · 0 评论 -
android toast设置比Toast.LENGTH_SHORT还短的持续时间
最近接触android开发,很多东西使用的时候都没考虑到通用性,比如我经常使用的toast,系统自带的Toast.LENGTH_LONG是3.5秒,Toast.LENGTH_SHORT是2秒,我们有的时候发现Toast.LENGTH_SHORT比我们想要的效果还是长了一些。这里我们可以用handler来手动cancel这个toast,同时把它当做一个通用方法来使用。在这里我把这个方法列下来供自己参原创 2015-05-14 13:50:32 · 4508 阅读 · 3 评论 -
android里单例对象和某些数据被释放的问题
接触正式的android开发已经有一段时间了,项目的第一个版本终于快完成了。有一次自己在测试的时候,把自己的android项目切到后台,同时打开了几个应用之后重新切回到自己的app,发现报错了。经过排查,发现是自己的单例对象中的数据被释放掉了,也就是int变量的值 变成了0,string变量的值变成了null。 我的单例一开始是这样的(举例); public class Use原创 2015-06-04 17:03:37 · 6032 阅读 · 3 评论 -
如何避免使用Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK之后的黑屏问题
在自己的项目中,我需要使用Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK来开始新的activity同时移除之前所有的activity。我使用这个intent flag的代码如下: Intent intent = new Intent(Gerenxinxi.this, MainPart.class); inte原创 2015-07-08 11:05:13 · 19449 阅读 · 2 评论 -
Genymotion 出现the number of cpus of the virtual device has been forced to be 1的解决方法
我进行android开发已经有一段时间了,经常使用Genymotion模拟器。自己平时大多数使用的4.0+的虚拟设备,诸如4.2.2等,均是正常使用。但是,由于测试的需求,我安装了android L,也就是android 5.0版本的虚拟设备,但是这个时候Genymotion却无法打开5.0+的虚拟设备。 一直显示如下图,也就是卡在开机界面: 同时原创 2015-08-15 01:12:48 · 6346 阅读 · 3 评论 -
android studio导入项目后出现cannot resolve symbol r android studio错误
向android studio中导入eclipse 的android项目,在eclipse中该项目是没有错误的,可以正常编包,但是在android studio中却出现了cannot resolve symbol r android studio 这样的错误。 经过查阅google,发现我的问题的解决方法是: 点击"Tools" -> "Android" -> "Sync Proje原创 2015-08-16 00:58:21 · 12051 阅读 · 2 评论 -
android studio 安装出现两个图标
最近更换了android的开发工具,把自己之前使用了一段时间的eclipse换成了android studio,那就需要把自己的eclipse项目导入到android studio中。在把一些错误排查完之后,我把android项目安装到手机上的时候,发现我的app在手机上出现了两个图标。一个图标点开之后是黑屏,一个图标点开之后正常打开我的应用,如果卸载其中一个的话,则是把两个都删掉。原创 2015-08-22 19:13:24 · 12555 阅读 · 7 评论 -
android设置一张图片透明度导致其在多个activity里均是透明的问题
最近这几个月公司安排自己进行android app的开发,期间阅读很多大大的博客,受到了很多启发。自己在开发的过程中也遇见了一些问题,至少对于我来说。那么我就来谈谈自己所遇到的一个问题,并且把它记录到自己的博客中,原创 2015-08-27 00:17:59 · 1482 阅读 · 0 评论 -
微信sdk应用消息的接入(android)
最近随着android应用的开发,我根据需求需要添加微信sdk,其作用是在一个手机上打开我的应用,然后使用微信sdk发送一个应用消息给另一个微信用户,另一个用户在接收到信息之后,点击接收到的应用消息,如果手机上没有安装我的应用,那么就进行下载,如果已经安装了,那么就打开这个应用,并且接收相应的参数,做一些逻辑上的跳转。 乍一看这个需求是很明确的,在微信sdk的官网也能看到这个功能原创 2015-09-03 19:48:53 · 3035 阅读 · 0 评论 -
Android项目在svn中应当ignore的文件及文件夹
不需要提交到svn的文件及文件夹: (1).idea文件夹(2).gradle文件夹 (3)build文件夹 (4).iml文件 (5)local.properties文件 其中,build.gradle需要提交,但是其中配置的一些路径,如keystore等可能需要在我们svn update之后做一些修改。 还有一点:就是一般情况下svn...原创 2015-09-04 22:45:07 · 2066 阅读 · 0 评论 -
android studio 查看源码时有些类显示 can not resolve 的问题
。原创 2015-09-14 19:57:54 · 6716 阅读 · 2 评论 -
Android layout_weight 理解
经常使用Android LinearLayout的layout_weight属性,平时使用的时候都是想当然,大概达到我们布局的效果就行了,从来没有好好地研究过。原创 2015-11-08 19:30:48 · 998 阅读 · 1 评论 -
Android afterTextChanged中逻辑卡顿的问题
最近在进行Android应用开发的过程中,遇到了一个问题,在这里我把它记录下来,希望可以给遇到相似问题的同学们一点启发,同时也是对自己做过的项目的一个小总结。原创 2015-11-09 19:47:12 · 5019 阅读 · 0 评论 -
Html.fromHtml忽视\n符号问题
今天在做自己的activity的时候,发现了一个问题,因为需要在TextView里嵌入超链接,所以需要使用Html.fromHtml这个方法,代码很简单,如下所示: String message = temp.hostContents.get(i).getContent(); Spanned str = Html.fromHtm原创 2015-12-03 20:06:38 · 7377 阅读 · 0 评论 -
Android Studio导入.so文件
最近由于需要接一个摄像头的sdk(萤石sdk,不知道大家接没接过,过程有点艰辛~),通过Android Studio去集成的过程中发现了一个坑,就是sdk所包含的.so文件无法被我们的sdk所包含,所以在运行我们的sdk的时候,就会报java.lang.UnsatisfiedLinkError这样的错误。那么怎么导入.so文件呢,通过查阅资料和自己的尝试,我在这里总结了两种方法,分别如下:原创 2015-12-16 22:39:39 · 1874 阅读 · 0 评论 -
Android ListView优化技巧
接触Android开发一段时间了,ListView是最为常见的一个组件,它的优化方法也尤为重要,在这里我做一个总结,方便自己随时查阅。1.使用ViewHolder模式提高效率。ViewHolder模式充分利用ListView的视图缓冲机制,避免了每次调用getView的时候通过findViewById去实例化控件。原创 2016-01-03 08:12:38 · 741 阅读 · 0 评论 -
Android任务栈
最近在读一些Android方面的工具书温习一些一些基础知识,发现有些知识讲解的很好,在这里就把书中的和自己从网上查到的一些知识点总结一下,以备自己查阅。 谈到Android任务栈,就必须提到AndroidManifest里的几种启动方式。standard方式就不用赘述了,是我们Activity默认的启动方式。如果我们的启动Activity的方式是singleTop的话,那么在原创 2016-01-06 23:36:47 · 1015 阅读 · 0 评论 -
Android性能优化笔记
最近拜读了《Android群英传》这本书,感觉其中的《Android性能优化》这一章总结得很好,在这里我会结合自己的体会写一篇自己关于这一章的笔记,在其中加入一些自己的注解。1. 布局优化1.1 Android UI渲染机制在Android中我们的渲染事件最好都在16ms以内,如果在16ms内未完成绘制,那么就会造成丢帧现象,造成画面卡顿的现象。Android系统提供了检测UI渲染时间原创 2016-01-10 13:01:56 · 1009 阅读 · 1 评论 -
好的android开发习惯
一、Android编码规范1.java代码中不出现中文,最多注释中可以出现中文;2.局部变量命名、静态成员变量命名:只能包含字母,单词首字母出第一个都为大写,其他字母都为小写;3.常量命名:只能包含字母和_,字母全部大写,单词之间用_隔开;4.layout中的id命名:命名模式为:view缩写_模块名称_view的逻辑名称view的缩写详情如下LayoutView:lv转载 2015-08-27 20:26:51 · 909 阅读 · 0 评论 -
泛型简化findViewById类型转换
我相信在移动开发最重要的一件事,也是相当麻烦的一件事就是写布局,对于Android开发者来说,写布局耗费了大量时间,然后初始化控件,写findViewById去类型转换也是耽误了很多时间,今天就告诉你一个小窍门,通过泛型来简化findViewById类型转换。 其实这个问题,可能只存在于还在用eclipse开发的同学,或者是使用了Android Studio之后,但是不转载 2015-08-20 23:52:14 · 1087 阅读 · 0 评论 -
TextView排版混乱或者自动换行的问题
其实在TextView中遇到排版自动换行而导致混乱不堪的情况是非常常见的,而且导致这种问题产生的原因就是英文和中文混合输入,半角字符和全角字符混合在一起了。一般情况下,我们输入的数字、字母以及英文标点都是半角字符,所以占位无法确定,它们与汉字的占位不同,由于这个原因,导致很多文字的排版都是参差不齐的。原因找到了,自然解决方法就来了,一般有以下两种方法来解决这种问题。转载 2015-10-10 09:10:49 · 1224 阅读 · 0 评论 -
Android内存优化
(一)Android的内存管理机制Google在Android的官网上有这样一篇文章,初步介绍了Android是如何管理应用的进程与内存分配:http://developer.android.com/training/articles/memory.html。 Android系统的Dalvik虚拟机扮演了常规的内存垃圾自动回收的角色,Android系统没有为内存提供交换区,它使用 pa转载 2015-10-18 09:57:24 · 365 阅读 · 0 评论 -
给Android程序员的一些面试建议
转自 http://blog.csdn.net/singwhatiwanna/article/details/49230997前言应大家的邀请,写一篇关于Android面试相关的博客,需要说明的是本文只针对Android应用开发,不针对rom开发以及逆向工程。我想面试对于程序员来说是很重要的一件事件,面试结果的好坏直接决定了能否进入某个公司以及以什么级别和待遇进入某转载 2015-10-19 17:29:10 · 421 阅读 · 0 评论 -
Genymotion模拟器不能上网的解决办法
网上查了一些资料,有很多篇都是说修改VirtualBox,的确是修改这个,但是我解决的办法有点不一样: 我修改的地方是: 网卡2的连接方式修改为:桥接网卡,在界面名称中选择你电脑中正在上网的那个网卡。保存,重启模拟器,即可上网了。 附上我的配置图: 差了很多博客,发现这位写的博客能解决这个问题:http://blog.csdn.net/yellowanwu/arti转载 2015-10-25 22:58:53 · 1373 阅读 · 0 评论 -
Android 性能调优的技术点
要点使用异步保持 APP 的高度响应,不要在 UI 线程做耗时操作,多使用异步任务使用线程时要做好线程控制;使用队列、线程池谨慎使用糟糕的 AysncTask 、 Timer警惕异步任务引起的内存泄露应该异步任务分类,比如 HTTP ,图片下载,文件读写,每一类的异步任务维护一个任务队列,而不是每一个任务都开一个线程( Volley 表示我一个可以搞定这些全部 _(:з」∠)_)这转载 2015-11-10 16:20:12 · 498 阅读 · 0 评论 -
给 Android 开发者的 RxJava 详解
前言今天发现一篇很好的文章,特意转发一下,谢谢作者~我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另转载 2016-01-17 21:36:27 · 524 阅读 · 0 评论 -
强烈推荐android studio用的几个插件
android studio常用插件,可极大简化开发,增强开发效率。不懂安装studio插件,看参考博文:android stuido插件安装:http://blog.csdn.net/liang5630/article/details/463724471、ButterKnife ZeleznyButterKnife 注解生成器,使用起来非常简单方便,使用ButterKni转载 2016-01-24 21:14:01 · 434 阅读 · 0 评论 -
RxAndroid介绍
RxAndroidRxAndroid是RxJava的一个针对Android平台的扩展。它包含了一些能够简化Android开发的工具。首先,AndroidSchedulers提供了针对Android的线程系统的调度器。需要在UI线程中运行某些代码?很简单,只需要使用AndroidSchedulers.mainThread():retrofitService转载 2016-02-13 18:47:55 · 962 阅读 · 0 评论 -
Android 网络编程--socket tcp/ip udp http之间的关系
转自:http://blog.csdn.net/lanhuzi9999/article/details/32713815网络七层由下往上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象。下面是应用层、运输层,网络层、链路层通信协议概图。我们经常接触到的一般是:转载 2016-02-14 09:37:13 · 596 阅读 · 0 评论 -
RecyclerView与ListView的异同
转自:http://www.cnblogs.com/littlepanpc/p/4497290.html?utm_source=tuicool&utm_medium=referralAndroid是一个不断进化的平台,Android 5.0的v7版本支持包中引入了新的RecyclerView控件,正如官方文档所言,RecyclerView是ListView的豪华增强版。它主要包转载 2016-02-14 09:44:52 · 2951 阅读 · 0 评论 -
android线程池
原地址找不到了,谢谢作者线程池的基本思想还是一种对象池的思想,开辟一块内存空间,里面存放了众多(未死亡)的线程,池中线程执行调度由池管理器来处理。当有线程任务时,从池中取一个,执行完成后线程对象归池,这样可以避免反复创建线程对象所带来的性能开销,节省了系统的资源。比如:一个应用要和网络打交道,有很多步骤需要访问网络,为了不阻塞主线程,每个步骤都创建个线程,在线程中和网络转载 2016-02-18 14:32:14 · 323 阅读 · 0 评论 -
创建安卓app的经验教训
在添加任何第三方party之前,请三思:这真的是一个成熟的项目吗?如果一个东西用户看不到,就不要绘制它!除非真的需要,否则别使用数据库;达到65k方法数限制来的非常快,真的,非常快!不过 multidexing 可以拯救你;RxJava 是 AsyncTasks 以及其它杂碎的最佳替代者;Retrofit 可能是现在最佳的网络请求库;转载 2016-02-23 15:32:57 · 409 阅读 · 0 评论 -
IPC机制(二)
上一篇文章,我做了IPC的基础知识的记录,在这里,我准备通过《Android开发艺术探索》,对于Binder再进行一些介绍。 Binder是Android的一个类,它实现了IBinder接口。从IPC角度来说,Binder是Android中的一种跨进程通信方式。在这里,新建三个文件:Book.java ,Book.aidl和IBookManager.aidl:package com.ryg.cha原创 2016-02-26 18:53:22 · 486 阅读 · 0 评论 -
自学Android编程
转自:http://www.stormzhang.com/android/2016/01/21/learn-android-byself/你们期待的终于来了,我可以算作是Android自学界的鼻祖了,之前自学的故事与分享的知识、经验影响了无数人,如今几年过去了,我经常收到不少人的感谢信,很多当初看我的教程的初学者如今已经在Android开发小有成就,而且让我欣慰的是他们也依然延转载 2016-02-29 20:18:26 · 620 阅读 · 1 评论 -
Android内存泄漏总结
前言对于内存泄漏,我想大家在开发中肯定都遇到过,只不过内存泄漏对我们来说并不是可见的,因为它是在堆中活动,而要想检测程序中是否有内存泄漏的产生,通常我们可以借助LeakCanary、MAT等工具来检测应用程序是否存在内存泄漏,MAT是一款强大的内存分析工具,功能繁多而复杂,而LeakCanary则是由Square开源的一款轻量第三方内存泄漏检测工具,当它检测到程序中有内存泄漏的产生时,转载 2016-03-02 13:13:30 · 423 阅读 · 0 评论 -
参考别人的分析对于Volley的理解(一)
最近由于自己对于Android学习的深入,我发现自己对于Java的编码风格,Android的编码格式等需要有比较迫切的提升,所以我决定从别人的优良库入手,去学习别人的代码是怎么写的。这一次,我选择了Volley库,也是我经常使用的网络库,因为经常有人问我它的原理,而我答得并不是很好。我参考的是 Volley解析 这篇文章。基本介绍Volley 是 Google 推出的 Android原创 2016-03-05 20:20:23 · 594 阅读 · 0 评论 -
Android使用Fiddler
转自:http://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.html转自:http://blog.csdn.net/forlong401/article/details/23538951主要介绍Android及IPhone手机上如何进行网络数据抓包,比如我们想抓某个应用(微博、微信、墨迹天气)的网络通信请求就转载 2016-03-19 12:09:30 · 354 阅读 · 0 评论 -
ClassyShark——apk分析利器
背景对于一个感兴趣的android非开源项目,通常使用逆向工程查看apk中的内容,俗称反编译。工具大概包括dex2jar、JD-GUI、apktool、procyon,这些工具使用起来相对比较麻烦,如果我们只想知道该项目的基本框架、使用到哪些开源项目的话,那么就有些浪费时间。对于一些大厂的项目,我们还比较关心的是用到了哪些新的框架和技术,对于新技术的流行程度和使用普遍程度有个比较好转载 2016-02-28 19:55:06 · 1909 阅读 · 0 评论