- 博客(132)
- 资源 (2)
- 收藏
- 关注
原创 Android 5.1.1 源码编译
一年前刚学Android没多久的时候就开始尝试编译Android源码,前后换过好几个版本均以失败告终。失败的原因主要有以下几个:网络不稳定:导致源码下载不全编译环境不对:依赖软件没装全,软件版本不对源码动辄一二十G,下载编译时间成本都非常高,差一点没处理好可能就得从头再来,所以编译源码最好能有较长的完整时间.环境配置安装 Ubuntu 14.04 L
2016-09-07 17:02:46 2041
原创 【探索】“m3u8” 视频下载
缘由今天搜FAGNHUA电影种子,只找到了一个在线播放的,并没有提供下载入口。这两天刚好又学了点前端知识,心血来潮想找出视频源地址给下下来。分析过程在线播放地址:http://www.a2dy.com/?m=vod-play-id-47671-src-2-num-1.html首先查看源代码 view-source:http://www.a2dy.com/?m=vod-play-id-47671-
2017-12-24 21:19:21 31071 2
翻译 全新 Android 注入器:Dagger 2(一)
全新 Android 注入器:Dagger 2(一)原文地址:New Android Injector with Dagger 2 — part 1原文作者:Mert Şimşek译文出自:掘金翻译计划译者:MummyDing
2017-12-20 14:38:09 1118
原创 【技术调研】WebP格式在Android平台上的应用
早在2010年,Google便推出了WebP这种图片格式,相较JPEG格式,它拥有更高的压缩率,并在次年增加了对动画和和透明度的支持。在Android平台上,Google自Android 4.0(API level 14) 开始提供支持,其中 API level 18 之前是提供基本支持,之后增加了对透明度的支持。今年三月份,Google发布的Android Studio 2.3 版本中则在工
2017-12-06 16:49:17 1905
原创 Android事件分发机制源码阅读
之前看过部分关于Android系统对用户触控事件处理的源码,但是看的都是分散的点不够系统。今天跟着源码一步步探究事件的分发处理过程。这其中主要涉及到Activity、Window、ViewGroup和View几个类。一个Activity有一个对应的Window,Window中又包含一个DecorView(它是一个ViewGroup),ViewGroup下又包含View。对于用户的触发的事件首先是Ac
2017-10-31 20:21:22 1058
原创 Android消息机制源码阅读
网络上关于Android机制的文章已经有很多了,自己之前也看了不少,但是没有正真非常系统地去阅读源码。这几天抽空翻了翻源码,做了整理。
2017-10-28 16:43:23 757
原创 [Android] Gson高级用法:Json串转换成接口字段
工作后就很少更新博客,这两天在Json解析的时候遇到问题,空了正好记录下。问题 将后端获取数据转换成客户端创建的模型,然后转换成Json串存入数据库。当在无网络的情况下,则会从数据库从取出数据转换成客户端创建的模型。这些模型中有所有非基本数据类型字段都是用接口表示,在这将对象转成json的时候没有问题,但是反过来将json转成对象的时候却发现失败了,示例代码如下: Gson
2017-07-26 20:24:44 4044 1
原创 网易实习第一阶段简单回顾
前几天顺哥面试的时候碰到HR明确说我转正答辩通过,趁此机会对这段时间的工作做个梳理。面试经历之前在已经在 Android实习生面试记录-蘑菇街、网易等 写了,结果就是网易发了offer,蘑菇街拿到终面机会但是我没去面:5月4号入职网易,同时蘑菇街通知5月5号现场终面(第五面...)。那天上午办完入职手续后顺哥来接,正在电梯间接到蘑菇街HR电话确认是否能够去终面,根本不确定是否可以请假&感觉刚入职又
2016-08-20 11:56:58 3210
原创 [读书笔记]Clean Code (8-完结)
忘了发出来,现在补上时间: 2016/5/6 星期五今天阅读了本书的后半部分,有两点不同:1. 层次,前半部分是琐碎的细节,后半部分则基于前半部分但却站在更高的角度来讲怎样写代码。2. 后半部分还对前半部分进行了归纳总结,以实例的方式一点点地告诉你之前讲的那些规则是如何使用的。九、单元测试 1. TDD定律 在编写不能通过的单元测试前,不可
2016-05-10 19:27:55 2352
原创 [读书笔记]Clean Code (1-8章)
时间: 2016/5/5 星期四 自写代码以来,逐渐意识代码代码规范的重要性,不过代码该怎么写更多的是自己的一些体会以及在阅读其他人的代码时的感受。 后来开始接触项目开发之后,仅仅是代码块的规范还是不够,于是看了一些设计模式的书籍,了解并尝试使用MVC、MVP等架构。 这次看Clean Code这本书还是第一次系统地学习“如何写代码”,作者很详尽地将一
2016-05-05 21:05:49 4400 2
原创 Android实习生面试记录-蘑菇街、网易等
本来准备面一次记录一次的,但是发现还没面完根本每心思整理这些,刚刚结束了蘑菇街HR面,正好闲下来做个总结。实习生招聘的准备,可以说我在打算开始工程开发的时候就开始了,开始学习Android的时候就思考着简历上应该写一些什么。去年五月份开始学习Android,我在那个时候就计算着距离实习生招聘的时间不到一年,要从一个完全没有接触过Android的小白达到符合各大公司实习生招聘的要求时间紧任务重。自那
2016-04-01 19:37:30 7425 9
原创 【Android】ColorPickerDialog 自定义颜色选择器的实现
最近在写的项目Awosome-Campus 中需要用到颜色选择器,用于更改主题,于是自己写了个。另外我想将它用于之前的项目闲暇(Leisure)中,干脆就将它单独分离出来了。代码规范,添加了详细注释。
2016-02-10 00:31:00 5498
原创 [爱编程]迟到的2015年终总结--初入工程开发
本没打算写这个总结,只因前几天看到秋百万在Github发起的Bye2015Hi2016 这个项目,看了好多,其中也有位与我情况相仿的学生@LangleyChang 写的总结,因此有了写总结的想法,稍微梳理下这一年.昨天完成App的版本更新,今天将工作室的东西全都带回了寝室(因为不知道下个学期还会不会去),准备期末复习.现在正好,手头上没什么要紧的事,也有了闲情回顾这一年.流水账
2016-01-05 20:10:00 1216 1
原创 [LeetCode]#6 ZigZag Conversion
GitHub : https://github.com/MummyDing/LeetCodeSource : https://leetcode.com/problems/zigzag-conversion/Description :The string "PAYPALISHIRING" is written in a zigzag pattern on a g
2015-12-30 22:21:03 863
原创 [LeetCode]#8 String to Integer (atoi)
GitHub : https://github.com/MummyDing/LeetCodeSource : https://leetcode.com/problems/string-to-integer-atoi/Description :Implement atoi to convert a string to an integer.Hint: Care
2015-12-29 20:41:04 870
原创 [LeetCode] #9 Palindrome Number
好久没有刷题了,现在开始刷LeetCode GitHub : https://github.com/MummyDing/LeetCodeSource : https://leetcode.com/problems/palindrome-number/Description :Determine whether an integer is a palindrome. Do this
2015-12-28 17:38:09 1177
原创 [Android]资源分享
Android资源分享By @MummyDing这是我在GitHub上的一个资源分享项目,将我日常收集到的资源进行汇集,不定期更新 点击这里查看Java篇推荐阅读(基础) 理解java的三大特性之封装 Java 继承 Java类的继承和多态 面向对象三个特征 继承、封装、多态及编程细节提示 推荐阅读(进阶) 系列博文:Java多线程编程总结
2015-12-22 20:14:36 1215
原创 【Android】开源 闲暇(Leisure) 阅读类应用的开发
今年暑假,Android大概学了两个月左右,很想做一款"能投入使用的App"。但是一没好的点子,二技术也不咋地,后来看到一个图灵机器人的接口,于是就花了一两天的时间写了一个"聊天机器人"发市场上了。显然,算不上什么"像样"的应用。开学后,随着对Android 的了解越来越深,想做出个“像样的App"的想法就愈发强烈。 9月底,小kd说想合作做我们学校的App。他负责后台,我负责客户端。一个人负
2015-12-11 19:22:55 6579 9
原创 [Java] 简单文件数据库实现
昨晚上在设计项目数据库遇到点困难,刚好看到Java选修课群里说有个“大作业”。大概的意思就是一张固定的表,使用文件的方式管理这张表的数据,使其可以对数据进行"更删改查"。这不就是一个"数据库"么,当然和实际使用的数据库差很远,不过大体思想差不多是吧→_→(原谅我这个标题党)题目描述:利用字符流操作文本文件,实现 学生记录的增加、删除和更新;记录的格式(学号,姓名,出生年月,专业) 数据
2015-11-26 12:30:31 4767 2
转载 Ubuntu 配置 opencv , CodeBlocks 开发环境
ubuntu 上配置OpenCV 找了各种方法均告失败,直接下源码重新编译也出问题,直到看到这篇文章。(感谢原作者)~_~ 我是Ubuntu 15.04,主要注意下search opencv 之后查出来的版本,我的是2.4 根据具体情况改下就好---------------------------------------------------------------
2015-11-12 21:31:50 300
原创 【Android】多图选择器(支持图片预览 高效加载不怕OOM)
现在凡是设计到图片上传的 Android App 一般都免不了"图片选择器"的模块。偷懒的直接调用系统的图库让用户一张一张的添加(比如知乎),但大多数还是自己造轮子实现一次添加多张图片的功能。在这块,腾讯系的一些App都做的不错,图片加载速度非常块丝毫没有卡顿之感,还支持图片预览和编辑。现在自己手头上在做的一个项目也设计到了这个,本来是调用系统图库,但是我觉得每次都只能添加一张体验并不好,于是准备
2015-11-05 21:04:38 6578 4
原创 【Android】Android Studio 使用第三方类库
距离写第一行Android代码已五月有余,现在也才稍稍敢自称"Android开发者"。在这几个月的Android学习&开发过程中,我接触了不少优秀的开源库,社区的开发者们贡献的这些功能强大的库使我的开发工作变得更加简单高效。但是对于一部分Android初学者来说,各种形式的库却让他们觉得不知所措。如何正确地使用第三方库,成为他们迫切想了解的知识。现在自己在GitHub上寻找&使用第三方库也算得心应
2015-10-20 16:21:04 1844 2
原创 【Algorithm】棋盘覆盖问题
这是我CSDN博客上第100篇原创博文,之前是计划写一篇关于Android源码分析的博文,但是Android源码还在阅读中,目前还没有较好的体会要分享。今天在做一道算法题,许久没写,有点生疏了。 题目描述如下:在一个2^k×2^k (k≥0)个方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为特殊方格。显然,特殊方格在棋盘中可能出现的位置有4^k种,因而有4^k种不同的棋盘,图(a)
2015-10-18 22:14:12 1255 2
原创 【Android】课程表布局实现(支持动态添加课程)
平时使用的"超级课程表"可以从根据学号直接从教务系统中导入对应的课程表,确实方便。作为开发人员,自然会想自己去实现。当然,抓数据这个我不在行,做Android的就实现它的布局了。很明显,这课表就是原生的(不是什么hXXX5)。先上效果图大体思路分析:1.一天有12节课,对于手机屏幕不大的手机如果全部显示则显得太挤。因此下面的课程是支持滑动的,但是表头不能 让它滑动,
2015-09-18 18:21:00 10908 1
原创 【Android】基于融云SDK的即时聊天工具
一直想做一个类似QQ的聊天APP,先是仿了QQ的UI(详见【Android】高仿QQ 5.0+ UI),现在借助第三方服务实现了聊天功能。在知乎上看到有人也在问如何实现一个IM,如果完全自己做,还得去了解一些通信协议,于是偷懒使用了第三方的服务。虽说底层的通信不需要自己管,但其他的编码量也并不小,前后花了一个多礼拜。(当然也是自己学艺不精)关于融云,我引用我在知乎上的一段回答:偷懒使用
2015-09-10 18:29:50 6444 13
原创 【Android】高仿QQ 5.0+ UI
每天接触的QQ客户端简介美观,特别是那个侧滑菜单更是吸引人,然后就想着自己做一个.前前后后折腾下来,总算有个样子了.先上效果图:具体实现登陆界面 主要是那个下拉列表,我是采用 PopUpWindow +ListView 实现锁屏界面 【Android】使用 SwipeRefreshLayout 实现下拉刷新侧滑菜单使用 HorizontalScro
2015-08-16 23:27:23 5177 3
原创 【Android】自定义圆形ImageView(圆形头像 可指定大小)
最近在仿手Q的UI,这里面经常要用到的就是圆形头像,看到 在android中画圆形图片的几种办法 这篇文章,了解了制作这种头像的原理.不过里面提供的方法还有一个不足的地方就是不能根据实际需求改变图片的大小,也就是说提供的原图是大尺寸的,转换之后的图片也是大尺寸的,这显然不符合我们实际项目中的需求.于是我对里面介绍的第一种方法做了一番改进,使其能直接在XML中指定图片的大小.大体步骤
2015-08-16 21:45:23 7588 4
转载 在android中画圆形图片的几种办法
在android中画圆形图片的几种办法android在开发中经常会有一些需求,比如显示头像,显示一些特殊的需求,将图片显示成圆角或者圆形或者其他的一些形状。但是往往我们手上的图片或者从服务器获取到的图片都是方形的。这时候就需要我们自己进行处理,将图片处理成所需要的形状。正如茴香豆的的“茴”写法大于一种,经过我的研究,画出特殊图片的方法也不是一种,我发
2015-08-07 23:25:42 2136
原创 【Android】PhoneMonitor 手机监控器
PhoneMonitor 手机监控器An app used for monitor another cell phone 手机监控器需要两个手机实现操控,一个手机作为主控端,一个手机作为被控端,主控端可以通过该应用控制被控端。主要功能主控端通过发送短信指令控制被控端,让被控端拨打电话,手机响铃,手机震动,手机定位。应用界面
2015-07-31 23:29:33 1726
原创 【Android】Android聊天机器人实现
昨天看到一个Android视频教程讲图灵机器人,那个API接口用起来还是挺方便的,就准备自己动手做一个了。另外自己还使用了高德地图的API接口用于定位(以前用过高德的接口,比X度方便)大体流程:1.构建UI2.请求数据[机器人&地图]3.解析数据[接口返回的是JSON数据]4.解析出来的数据组装成HTML代码[这样直接扔在TextView上显示图片链接什么的都很方便]5.更
2015-07-23 11:08:12 4380 6
原创 【Android】使用 SwipeRefreshLayout 实现下拉刷新
今天在codepath 上看到一个开源项目 [点击查看]使用到了 SwipeRefreshLayout 实现了下拉刷新,但示例并不完整,于是自己就动手写了下.之前看到郭霖的博客上也有介绍下拉刷新,不过他是纯手动实现的,代码量大,较为繁琐.[点击查看]而使用Android 提供的SwipeRefreshLayout 则大大减少了我们的工作量,当然,学会了使用SwipeRefreshLayout之
2015-07-20 15:04:05 1878
原创 【Linux】Ubuntu下录屏&&制作GIF
在做Android的时候,想制作GIF用来演示效果。一番摸索,找到了一个简单可行的办法: App在模拟器中运行,用录屏软件录制,再将视频转成GIF。系统: Ubuntu 15.04录屏软件: RecordMyDesktop视频转GIF: mplay上面两个软件均可在商店找到直接安装,控制台用命令安装也行,这个就不详述了。1.打开RecordMyDesktop,可以对局部录屏
2015-07-18 11:29:39 4592 1
原创 【Android】九宫格手势锁简单实现
现在好多应用都可以设置手势锁,Android本身也有提供手势图案锁屏。作为Android菜鸟的我,也忍不住想自己动手实现一下。下面是应用效果图:思路:1.自定义一个View,重写onDraw方法,利用canvas绘制图形。2.实现onTouch事件* Down Move Down 每次判断是否有在手指的位置相应处理。3.直接在布局文件里面 引用View
2015-07-18 10:55:38 3442
原创 【Android】桌面歌词悬浮效果简单实现
在使用"网易云音乐"的时候,发现有一个显示"桌面歌词"的功能,于是就想着自己实现下。查了下资料,是用WindowManage实现的。实现过程中也出现了些问题,看了官方文档,也算解决了。这里贴上简单代码。public class MainActivity extends Activity implements View.OnTouchListener{ MyView myView;
2015-07-16 09:58:49 6803 7
原创 【Linux】Ubuntu 开机默认亮度修改方法
换了ubuntu 之后,发现开机屏幕都是”最大亮度”,每次都要到设置中手动调节,很麻烦。于是想到去修改这个设置,Google一通,别人可行的办法到我这就没用了,郁闷。最后是在stackoverflow一个回答中的一条命令让我恍然大悟~~~~(>_又是”权限”惹的祸!现在问题解决了,在这里记录一下。注: 以下终端命令输入先root 屏幕亮度配置文件是在 /sys/class/backligh
2015-06-22 22:18:32 6275 1
原创 【Java】Java Socket 通信示例
用socket(套接字)实现客户端与服务端的通信。这里举两个例子:第一种是每次客户端发送一个数据,服务端就做一个应答。(也就是要轮流发)第二种是客户端可以连续的向服务端发数据,服务端也可以连续向客户端发数据。(多线程)为了方便起见,客户端服务端都放在一个主机上,分别开两个进程[哈哈,进程间通信lol~]PS: 一个聊天程序雏形代码也放在GitHub上了:ht
2015-06-10 19:53:26 1455
原创 【蓝桥杯】PREV-32 分糖果
题目链接:http://lx.lanqiao.org/problem.page?gpid=T124 历届试题 分糖果 时间限制:1.0s 内存限制:256.0MB 问题描述 有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边的孩子。 一
2015-03-18 21:51:53 1348
原创 【蓝桥杯】PREV-5 错误票据
题目链接:http://lx.lanqiao.org/problem.page?gpid=T28 历届试题 错误票据 时间限制:1.0s 内存限制:256.0MB 问题描述某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。
2015-03-18 21:41:47 1279
原创 【蓝桥杯】 PREV-4 剪格子
题目链接:http://lx.lanqiao.org/problem.page?gpid=T27 历届试题 剪格子 时间限制:1.0s 内存限制:256.0MB 问题描述如下图所示,3 x 3 的格子中填写了一些整数。+--*--+--+|10* 1|52|+--****--+|20|30* 1|
2015-03-18 21:39:23 1044
原创 【蓝桥杯】 PREV-1 核桃的数量
题目链接:http://lx.lanqiao.org/problem.page?gpid=T24 历届试题 核桃的数量 时间限制:1.0s 内存限制:256.0MB 问题描述小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是:1. 各组的核
2015-03-18 21:34:27 1177
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人