- 博客(199)
- 资源 (36)
- 问答 (3)
- 收藏
- 关注
原创 使用Git版本控制 .gitignore 忽略不需要提交的文件
团队协作开发的时候,每个人都要提交文件,为了避免不必要的文件提交,我们要进行一个简单的配置来忽略一些文件,只提交必要的文件。https://segmentfault.com/a/1190000002963895应各位朋友的要求,写这篇文章,让我们来简单了解下Android Studio中不同目录(文件)的位置和用途。首先看下一个App的最简单的目录结构【= = 好复杂的样子】OK,我们这么看,第一
2016-07-07 10:15:20 26368
原创 将 Google Analytics(分析)添加到 Android 应用中
将 Google Analytics(分析)添加到 Android 应用中本指南介绍了如何将 Google Analytics(分析)添加到您的 Android 应用以衡量用户在已命名屏幕上的活动。如果您目前没有应用,而是仅仅想了解一下 Google Analytics(分析)的工作原理,请参阅我们的示例应用。必需:最新版 Android Studio 和 Google Play 服务请注意:Go
2016-06-24 18:23:34 10050 2
转载 Android开发过程中的一些基本常识
http://blog.csdn.net/ekeuy/article/details/42292589 本文介绍Android开发过程中的一些基本常识,大多是一些流程、专业术语和解决问题的方法等。一、软件开发流程 一个完整的软件开发流程离不开策划、交互、视觉、软件、测试、维护和运营这七个环节,这七个环节并不是孤立的,它们是开发一款成功产品的前提,但每一项也都可以形成一个学科,是一个
2016-06-22 13:24:33 1099
原创 计算Bitmap占用的内存
在AndroidAPI(12)之前的版本和后来的版本是不一样: /** * 计算Bitmap占用的内存空间 * * @param bitmap * @return */ public static long getBitmapsize(Bitmap bitmap) { if (Build.VERSION.SDK_INT >= Build.VERSI...
2016-06-20 16:27:42 1174
转载 解决Android中No resource found that matches android:TextAppearance.Material.Widget.Button.Inverse问题
如果在刚够构建Android Studio项目的时候,运行发现,出现没找到资源的错误!找不到com.android.support/appcompat-v7/23.0.1/res/values-v23/values-v23.xml[html] view plaincopy/路径/app/build/intermediates/exploded-aar/com.android.support/app
2016-06-16 15:41:06 976
转载 Android Animation模式详解
关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式:1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画;2. Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。动画类型下面先来看看Android提供的动画类型。Android的animatio
2016-06-15 09:58:19 1080
转载 ViewStub动态加载布局提高UI加载性能
ViewStub 定位:ViewStub 是一个不可见,size 大小为0 的一个View ,用于运行时 延迟inflate layout布局的。当ViewStub 变为可见,或者 调用了inflate() 方法,这个Layout资源会被加载。然后ViewStub会将加载的View或者Views 替换他自己在父布局中的位置因此ViewStub 一直存在,直到调用了setVisibility或者in
2016-06-14 16:18:22 4528
转载 U盘怎么分区合并
大家都知道电脑的硬盘分区一般是4个,分的区越多对硬盘损害大,而且损失的空间也越大,而U盘也是如此。一般买来的U盘都是只有一个区,有些朋友会用了软件把U盘分成了4个区,但发现损失了好多的空间,想合并结果发现合并不回来了。在这里小编来为大家分享一个不用软件就能合并U盘分区的办法,只要在cmd命令提示符依次打上一些英文单词就能完成了。一起来看看吧! 1、首先把你的U盘插在电脑上,点击开始→所有程序→附
2016-06-12 11:07:56 8358 2
原创 Android借鉴支付宝的思路解决 GridView网格线粗细的问题
借鉴支付宝,巧妙解决 GridView 添加分割线 关于相邻两个Item 之间的分割线加粗的问题。通用的两种给GridView 添加分割线的方法;http://stackoverflow.com/questions/7132030/android-gridview-draw-dividers给Gridview 添加分割线,也就是实现网格布局,不清楚谷歌为什么没有给Gridview 添加一个类似 ListView 的Divider 属性,因此就需要我们自己去添加分割线,目前两种方法,第一种是 利用Gri
2016-04-21 23:14:11 4121 2
原创 Android几种常见的多渠道(批量)打包方式介绍
几种常用的批量打包方式总结 Umeng 蓝贝壳儿 gradle 美团打包方式 使用介绍,以及效率比较。多渠道打包,主要是为了统计不同的渠道上包的下载数量,渠道越多,我们需要打的包数量越多,这个时候,我们没法去使用单纯的手动打包去一个一个的生成不同的渠道包,我们需要更高效的打包方式。
2016-04-19 22:37:19 19841 7
原创 (源码分析)Android-Universal-Image-Loader (图片异步加载缓存库)对Bitmap的优化处理
通过前两篇,我们了解了 UIL的使用配置,UIL将服务器上的一张图片保存到本地,加载到内存的过程,以及UIL对DiscCache和MemoryCache的策略,但是还有一部分比较重要,因为它是我们的开发日常中经常要处理的一个问题:Bitmap的优化。换句话说:如何将一个大的图片,加载到内存并显示,如果我们不处理,那么很容易发生OOM。那么UIL作为一款经典图片缓存框架接下来,我们就学习一下UIL中如何优化Bitmap,避免发生OOM的。三篇文章带给我的收获:UIL的使用配置 ,缓存策略 和 图片优化,通
2016-04-07 19:51:08 9352
原创 (源码分析)Android-Universal-Image-Loader (图片异步加载缓存库)的源码解读
转载请注明出处:http://blog.csdn.net/u011733020在Android开发中,对于图片的加载可以说是个老生常谈的问题了,图片加载是一个比较坑的地方,处理不好,会有各种奇怪的问题,比如 加载导致界面卡顿,程序crash。因此 如何高效的加载大量图片,以及如何加载大分辨率的图片到内存,是我们想要开发一款优质app时不得不去面对与解决的问题。通常开发中,我们只有两种选择:① 使用开源框架 ②自己去实现处理图片的加载与缓存。通常一开始让我们自己去写,我们会无从下手,因此先去分析一下
2016-04-03 20:44:15 2593 2
原创 (源码分析)Android-Universal-Image-Loader (图片异步加载缓存库)的使用配置
在Android开发中,对于图片的加载可以说是个老生常谈的问题了,图片加载是一个比较坑的地方,处理不好,会有各种奇怪的问题,比如 加载导致界面卡顿,程序crash。因此 如何高效的加载大量图片,以及如何加载大分辨率的图片到内存,是我们想要开发一款优质app时不得不去面对与解决的问题。通常开发中,我们只有两种选择:① 使用开源框架 ②自己去实现处理图片的加载与缓存。通常一开始让我们自己去写,我们会无从下手,因此先去分析一下开源的思路,对我们的成长很有必要。目前使用频率较高的图片缓存框架有 Univ
2016-04-03 16:14:33 2563 2
原创 Android 自定义View 入门——FlowLayout实例(流布局)
了解了自定义View的流程,那么接下来最好就是对着一个自定义View去分析,加深一下对步骤的理解,这里拿FlowLayout去分析。这样一个自定义View 是继承的ViewGroup,因为它里面还有一个个的子View 填充,因此我们分析出这是继承自ViewGroup。然后接着分析,这个布局会自动判断 当宽度达到屏幕的宽度时,自动换到下一行,那接下来我们就去实现这样一个布局。第一步:定义My
2016-03-11 20:19:11 4811 5
原创 View的简介
认识一个新的事物,首先我们从概念上讲,我们需要知道,这个事物 是什么,这个事物有什么用途?对应到View 上,我们要搞明白 View 的定义以及工作原理。 1.View是什么? View是屏幕上的一块矩形区域,它负责用来显示一个区域,并且响应这个区域内的事件。可以说,手机屏幕上的任意一部分看的见得地方都是View,它很常见,比如 TextView 、ImageView 、Button
2016-03-11 19:58:51 17137 9
原创 Git上面的右滑退出当前Activity
使用说明:1 要打开的Activity 继承 SwipeBackActivity,并且在Manifest 文件中注册 android:theme="@style/swipeTheme"。 2 在新Activity 内设置允许滑动退出Activity, setSwipeBackEnable(true);。3 values 目录下的 attrs 与style需要拷贝到工程。4 Demo
2016-03-08 11:02:03 1479
原创 播放RTMP协议的流媒体的两种选择
播放网络视频,通常解析库我们可以有两个选择 FFMPEG 或者 vitamio。什么FFMPEG?FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从
2015-12-31 14:57:33 2728
转载 将Library上传到Jcenter
http://www.jianshu.com/p/0ba8960f80a9前言习惯了compile 'com.android.support:appcompat-v7:22.2.0'这样一句话帅气的引用某个库.这次自己尝试一下如何上传到'JCenter'~这里我以我自己的CrashCatcher为例来讲解一下.PS:工具: AndroidStudio,G
2015-12-04 08:58:25 941
原创 android 广告轮播位Banner轮播位 使用超级方便
GitHub 上面介绍的更详细:https://github.com/CodingForAndroid/CircleViewPager 2016.8.30 更新 : 添加两种切换效果内部封装,外部调用起来比较方便可以去Github 中下载 library(里面只有两个文件) 来导入项目中 https://github.com/CodingForAndroid/CircleViewPager也可以 通过下面方式导入, build.gradle 直接导入 dependencies {
2015-12-03 16:49:45 12310 36
转载 RippleEffect(水波纹效果)的实现
学习 谷歌 material design的交互设计、向新技术靠拢~ 由于谷歌的只有在5.0+才可以有这个效果~ 而我们手头手机大部分还是4.+的、因此自己去实现这个效果、让各种版本的都可以用 无疑是挺好的、这个Demo 实现了以下几点功能:①:要实现水波纹效果,首先这个View 必须是可点击的,也就是说clickable :true 才可以触发 比如默认 Button 的Cl
2015-12-02 11:20:28 3484 1
原创 看完这篇文章,你就了解了Android Handler的一切
今天的主人公是Handler,Handler 也是进行通讯用的,我们Android系统的运行,比如应用的启动,手机来电的提示,Activity的创建启动,都离不开Handler。大家都知道Handler可以跨线程通信,可以更新界面,让线程与线程进行通信,可以让某一条消息进入消息队列,等待被执行。而我在项目里也跟大家一样,拿它来接收通知,更新界面。 但是我一直都在用,但却没有认真地看过它的工作原理,而作为一个有进取心的程序员,我们不能只会用,而不知道它的工作过程,为了自己不一直平庸的做一个初级程序员,
2015-11-04 18:28:25 3353 1
转载 播放视频的框架Vitamio的使用问题
原文:http://blog.csdn.net/sunalongl/article/details/30252127?utm_source=tuicool&utm_medium=referral以前用过这个牛逼的框架,后来又随意搞了下,发现播放不了视频了,搞了老半天才搞好,今天又随便整了下,发现又不行了,我勒个插!现在终于又搞出来了,发现我总是把步骤搞错或少写了些东西
2015-10-30 11:33:30 1489
原创 Android Touch事件的分发响应机制
关于Touch 时间的分发响应文章有很多了,但是自己理一遍的印象 要比看别人的深刻,这里自己记一下,也便与以后回过头来翻! Touch 事件 对于 新手来说,是很困扰的,因为事件之间的传递过程,我们还不理解,去翻看代码,翻着 翻着,反而越发不清晰,这里 我跟大伙一起理一下传递机制。首先 ,一点大家需要知道 所谓的 Touch事件包含的几个动作:MotionEvent.ACT
2015-10-29 21:52:31 4755 6
原创 Android Activity 、 Window 、 View之间的关系
本想分析一下触摸事件的分发响应机制,但是发现分发事件的方法在Activity、View以及ViewGroup中各自存在 ,如图1表所示 图一这样的话又牵扯到了三者之间的关系,那索性先理清楚Activity与另外两者的关系 ,在去分析触摸事件比较好。什么是 Activity 、View 、 Windo
2015-10-28 13:28:39 14094 6
原创 *《java基础算法——冒泡排序》
冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。算法原理冒泡排序算法的运作如下:(从后往前)1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2015-10-20 16:41:46 836
原创 *自定义布局的Toast和Dialog
App中 与人 交互 常用的 方式 有 通知栏、 对话框(Dialog) 以及 吐司。默认的 Toast是下面这样子的而有时候 我们项目需要 带图片的 吐司,比如那 怎么把图片 加进去呢? 如果是 Activity ,我们知道 只要做一个xml 布局, 将图片资源 引用进去 , 然后 通过 SetContentView(R.layout.activit
2015-10-19 12:30:54 1110 1
原创 *SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)
Volley 请求 数据 报错, 在手机数据下可以获取到服务器返回的数据,在WiFi 环境下 报错如下:com.android.volley.NoConnectionError: java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)问题:公司 WiFi 设置了
2015-10-10 18:10:25 10722
原创 *Android 多线程下载 仿下载助手(改进版)
首先声明一点: 这里的多线程下载 并不是指的 多个线程下载一个 文件,而是 每个线程 负责一个文件。真正的多线程 希望后面能给大家带来。 ------------- 欢迎 爱学习的小伙伴 加群 ------------- -------------android交流群:230274309--------------------------一起分享,一起进步!
2015-07-31 22:41:15 3146 10
原创 *Android 多线程下载 仿下载助手
今天带来一个多线程下载的 例子。先看一下效果,点击 下载 开始下载,同时显示下载进度,下载完成,变成程 安装,点击安装 提示 安装应用。界面效果线程池 ThreadPoolExecutor在下面介绍实现下载原理的时候,我想尝试倒着来说,这样是否好理解一点? 我们都知道,下载助手,比如360, 百度的 手机助手,下载APP 的时候 ,都可以同时下载多个,所以,下载肯定
2015-07-23 09:13:15 11326 31
原创 *Android shape属性整理
有时候 ,为了满足一些需求,我们要用到 shape 去定义 一些背景,shape 的用法 跟图片一样 ,可以给View设置 android:background=”@drawable/shape”, 定义的shape 文件,放在 res/shape 目录下通常我们可以用shape 做 button 的背景选择器,也可以做切换tab 时,底部的下划线。先看我们用shape 都可以做什么<?xml v
2015-07-08 16:13:24 2533
原创 android抓包工具——fiddler与charles的基本操作(弱网模拟,map local/remote、breakpoint 等)
本文地址:http://blog.csdn.net/u011733020首先,写这个只是为了学习,不是要做什么违法的事情,如果有问题,有关部门 请联系我,立马删除。 不要查我水表。正题:这里介绍 抓包的关键,Fiddler ,Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯。我们就是用这款软件抓取 ,我们手机app 访...
2015-06-29 13:47:22 14821 4
原创 android app 开发过程中 对于性能优化的总结
一款手机应用 从开发过程中就要做好 性能优化,这样才能 让用户体验度 提升, 假如 我们打开一个应用 出现卡顿, 不流畅,则会很影响 用户对该应用的态度,产品狗 都很注意这些人机交互方面的 体验。 谷歌官方也是一直在优化 android 系统,不论是 碎片化处理 还是 系能 上面,这方面 ios 就做的比较好,配置比 android 低,但是流畅度却比android高,体验效果更好
2015-05-13 00:33:48 3744
原创 *Android JSON解析(Android原生解析与FastJson Gson)性能比较
Android 常用传递数据的格式 分两种 一种XML另一种 JSON。 JSON与XML的相比较 的优点是 作为数据传输格式,跟XML类似,但是比XML更加轻巧 由于JSON是JavaScript的原生格式,所以JSON不需要包含特定内容的首部信息 所以速度 远远快于XML。 现在我们常用解析 JSON的方法一般 有以下几种 1 android 原生 api 解析 2.阿里巴巴 的
2015-04-10 20:35:12 3142
原创 *Fragment与Activity生命周期的协调
拥有Fragment的Activity的生命周期直接影响了其中的Fragment的生命周期,这样,针对Activity的每一个生命周期的回调都会有一个类似的针对Fragment的回调。例如,当Activity收到onPause()回调时,在Activity中每个Fragment都会收到onPause()回调。但是,Fragment有几个额外的生命周期回调方法,用来处理跟Activity的交
2014-11-07 15:24:05 997
原创 *eclipse 中添加工程 Some projects cannot be imported because they already exist in the workspace
遇到问题:第一次从外部文件导入HelloWorld工程到workspace目录中,成功。删除后,再次从外部导入workspace目录提示 Some projects cannot be imported because they already exist in the workspace eclipse中删除HelloWorld工程时没有勾选Delete pr
2014-08-21 16:43:10 23498
原创 android 圆形头像
依赖Xfermode去实现效果如图所示:实现如下:public class CirclePhotoView extends View { private Bitmap bmpCat; private Bitmap bmpCircleMask; private Canvas cvsCircle; private Paint paint; ...
2014-07-09 12:57:25 1405
原创 *项目开发——每日总结
原文地址 :http://stackoverflow.com/questions/6941710/unable-to-open-log-device-dev-log-main-no-such-file-or-directory.
2014-05-13 11:46:26 1813
转载 线程安全的单例模式
面试的时候,常常会被问到这样一个问题:请您写出一个单例模式(Singleton Pattern)吧。好吧,写就写,这还不容易。顺手写一个:public final class EagerSingleton { private static EagerSingleton singObj = new EagerSingleton();
2014-04-04 17:24:02 1046
React-Native进阶_7.TextInput实现搜索功能
2017-08-03
Android一分钟打900个包
2016-04-20
直播客户端(类似yy直播)
2015-07-07
手势识别切换界面(activity)
2015-05-23
仿惠锁屏 侧滑解锁 屏蔽home按键
2014-12-11
android 闹钟实现原理
2014-12-03
网易新闻客户端框架 slidingmenu 侧滑 仿360手机助手
2014-05-13
Graphics API 示例
2018-05-09
ReactNative Navigation路由传递数据到下一个页面
2017-08-01
ys studio 中.gradle如何配置相对路径
2016-08-22
ys studio 中.gradle如何配置相对路径
2016-08-22
导入 Glide工程 报错如下
2016-06-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人