- 博客(41)
- 资源 (12)
- 收藏
- 关注
原创 Android单元测试(Robolectric)自动化测试第一步
提高写代码的抽象和封装能力,比如刚入行的时候,我们可能在一个按钮的OnClickListener方法中写一大坨代码,如果了解单元测试就会知道这样写对测试非常不友好,把这一坨提取封装会更利于测试,也就能更快的验证代码的正确性。 因为单元测试是独立的单个方法的测试,那么当测试结果与预期不一致的时候,可以迅速定位bug。 提高代码...
2022-05-25 16:35:30
1255
2
原创 android 打开闪光灯
在android中打开闪光灯的方法有两种,一种是获取硬件服务,通过反射的方式来操作闪光灯。另外一种是获得Camera对象,通过设置Camera的参数来操作闪光灯。一下是一个操作闪光灯的工具类:实现了两种方式操作闪光灯。通过switchFlashlight方法是通过反射的方式操作,通过turnLightOn,turnLightOff方法操作是通过设置Camera来操作闪关灯的。通过反射的方法貌似在4...
2019-12-12 15:14:54
2341
原创 android xml中 颜色透明度(不透明度)参照表
我们在开发过程中经常看到美工给你的标注颜色类似于#0000FF(蓝色)这样的颜色码,然后还可能有一个不透明度(美工可能给你说的是透明度,但是这个准确来说是不透明度,下面有图为证)那这个不透明度,在Andriod中怎么表示呢,我来普及一下这个基础知识Android中颜色简介Android中的颜色值通常遵循RGB/ARGB标准,使用时通常以#字符开头,以16进制表示。其中RGB依次代表...
2019-10-18 20:03:26
1870
原创 Android 应用权限 注释
1.android.permission.WRITE_USER_DICTIONARY 允许应用程序向用户词典中写入新词2.android.permission.WRITE_SYNC_SETTINGS 写入Google在线同步设置3.android.per...
2019-07-08 14:23:31
623
原创 Android XML shape 标签使用详解(apk瘦身,减少内存)
一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景。但是,也肯定也有人在能使用 Drawable 的地方选择使用一张 png 图(或者是一张 .9 图)作为 View 的背景,因为后者把问题交给 UI 设计人员去了,省事。当然,使用图片这种在项目中也很常见,如果不考虑 apk 大小,内存占用问题的话,是...
2019-02-23 16:36:57
358
原创 图片API 通用接口
一、通用apihttp://image.baidu.com/i?tn=resultjsonavstar&ie=utf-8&word=刘德华&pn=0&rn=60说明:格式为jsonword为查询的内容pn为第几页rn为一页返回的图片数量用法:大家在浏览器地址栏输入上述地址,回车即可看到返回的图片地址二、分类api 1、明星ht...
2018-11-15 15:46:07
20881
1
转载 Markdown编辑器 使用语言-写博客
# 欢迎使用Markdown编辑器 写博客---------------------------撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + Shift + H无序列表:Ctrl/Command + Shift + U有序列表...
2018-11-15 10:14:00
461
原创 markdown编辑器-效果图
欢迎使用Markdown编辑器写博客撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + Shift + H无序列表:Ctrl/Command + Shift + U有序列表:Ctrl/Command + Shift + O检查列表:Ctrl/Co...
2018-11-15 10:12:10
242
原创 Sketch 快捷键(UE图、思维图、UI设计、矢量设计图)
1. 插入 Insert:新建画板 New Artboard -【 A 】 切片 Slice -【 S 】 矩形 Rectangle -【 R 】 圆角矩形 Rounded Rectangle -【 U 】 椭圆 Oval -【 O 】 直线 Line -【 L 】 矢量锚点 Vector Point -【 V 】 铅笔 Pencil -【 P 】 文字 Text -【 T 】...
2018-11-15 09:46:56
2948
2
转载 开发者API资源(接口整理)
API是获取网络服务最便捷的方式,合理地使用API开发项目可以大大提高开发效率,把精力都集中在程序的业务逻辑之上,避免重复造轮子。推荐给大家个人觉得很赞的第三方API(资源整合自网络)。文章分为天气查询、生活常用、文体娱乐、企业金融、通讯服务、交通出行、技术开发七大类,如果你觉得分类不直观,想直接获取免费可试用的api,也可以直接搜索用友APILink,或访问官网api.yonyoucloud.c...
2018-11-14 10:17:56
22938
6
原创 Android studio 混淆、打包、验证是否成功
大家好,跟大家分享一个MAC上混淆打包的经验;前言:单挑Android项目,最近即时通讯用到环信,集成sdk的时候 官方有一句在 ProGuard 文件中加入以下 keep。?12-keep class com.hyphenate.** {*;}-dontwarn com.hyphenate.**即:混淆规则。 自己没写过关于混淆打包的文章,在此补上。下面了解Android studio环境下 项...
2018-04-24 16:11:37
2797
原创 Android网络框架
1. 缓存DiskLruCache Java实现基于LRU的磁盘缓存2.图片加载Android Universal Image Loader 一个强大的加载,缓存,展示图片的库Picasso 一个强大的图片下载与缓存的库Fresco 一个用于管理图像和他们使用的内存的库Glide 一个图片加载和缓存的库3. 图片处理Picasso-transformations 一个为Picasso...
2018-03-29 23:56:43
247
原创 和程序员谈恋爱
最近被Wephone创始人被妻子逼死的事情刷屏,甚至还引起了不少的恐慌,具体细节大家可能都已经知道了,两个人在相亲网站上认识,两个月闪电结婚,还在海南给女方买了房子、买了特斯拉,不了解女方的婚史等情况下,把自己公司的事情都告诉了她,结果反倒被这个女的逼到自杀。 为这个天才程序员感到惋惜,也希望程序员可以都被温柔相待。我今天发了条状态问有谁的男朋友是程序员?没想到,一下子涌现了一大批程序员的女朋友...
2018-03-29 23:55:18
1675
1
原创 手机APP测试点
一.功能性测试:(1)根据产品需求文档编写测试用例(2)软件设计文档编写用例二.兼容性适配性测试:(1)Android、iOS版本的兼容性(2)手机分辨率兼容性(3)网络的兼容性:2G/3G/4G/Wifi,弱网下、断网时(4)APP跨版本的兼容性1.适配性测试:(1)手机不同分标率支持:客户端支持的分辨率等(2)手机不同版本的支持:2.3 4.0 4.4等;在测试计划中:需要安排单独的时间用...
2018-03-29 17:16:32
4296
原创 Android2017-2018最新面试题
Android知识图谱: 基础知识 – 四大组件(生命周期,使用场景,如何启动) java基础 – 数据结构,线程,mvc框架 通信 – 网络连接(HttpClient,HttpUrlConnetion),Socket 数据持久化 – SQLite,SharedPreferences,ContentProvider ...
2018-03-29 13:39:12
1704
原创 Android-BAT面试题整理(java篇,含答案)
2017 年初、阿里、腾讯、百度、华为、京东、搜狗和滴滴面试题汇集(更新篇) 2017下半年,一二线互联网公司Android面试题汇总我的第一篇有关面试的文章:Android2017-2018最新面试题(3-5年经验个人面试经历) 1-4年工作经验的,想找工作的,建议先通以上这关,再看BAT面试题系列文章。Java面试题大纲为以下内容(绝大部分): - Java各方面基础 - Java特性 - 多...
2018-03-29 09:50:45
5398
原创 Ubuntu下vim的简单配置
首先安装使用apt安装vim编辑器sudo apt-get install vim打开vim 编译器输入vi ~/.vimrc使用vim编辑配置文件,~/.vimrc文件中添加如下内容:set nocompatibleset numberfiletype onset history=1000set background=darksyntax onset autoindent...
2018-01-26 15:59:29
411
原创 打包成exe软件安装 Qt Install Framework使用方法
Qt程序的打包发布现在已经可以通过其发布的Installer Framework框架来完成,通过修改一些配置文件即可实现。首先,现在该框架官网提供1.3.0、1.4.0和1.5.0版本的下载(本文书写时),根据有新的谁他吗还用旧的准则,下载1.5.0版本(http://download.qt.io/official_releases/qt-installer-framework/3.0.2
2018-01-04 17:54:03
710
原创 qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method
做语音合成 播放的时候获取不到token,由于出现qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method,而不能获取链接网络上网搜了半天,都说要在电脑那里安装openssl,然后把C:\OpenSSL-Win64\bin下的libeay32.dll和ssleay32.d
2018-01-03 14:37:15
694
原创 解决/usr/bin/ld: 找不到 -lpulse-mainloop-glib,/usr/bin/ld: 找不到 -lpulse问题
linux下QT编写Qcamer摄像头程序,出现/usr/bin/ld: 找不到 -lpulse-mainloop-glib,/usr/bin/ld: 找不到 -lpulse 解决办法: 出现权限不够时,使用sudo su 权限 首先find / -name libpulse.so*然后 此处第一个文件 需要查找所有的后 根据so后面的内容进行copycp /usr/lib/x86_64-l
2017-11-23 15:40:14
2735
原创 归并排序的C++实现
归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。归并过程为:比较a[i]和a[j]的大小,若a[i]≤a[j],则将第一个有序表中的元素a[i]复制到r[k]中,并令i和k分别加上1;否则将第
2017-11-10 16:52:47
732
原创 泛型编程:源起、实现与意义
泛型编程:源起、实现与意义为什么泛型 泛型编程(Generic Programming)最初提出时的动机很简单直接:发明一种语言机制,能够帮助实现一个通用的标准容器库。所谓通用的标准容器库,就是要能够做到,比如用一个List类存放所有可能类型的对象,这样的事情;熟悉一些其它面向对象的语言的人应该知道,如Java里面这是通过在List里面存放Object引用来实现的。Java的单根继承在这里起到了关
2017-11-10 13:36:06
488
原创 Android Looper 架构 理解
在Android下面也有多线程的概念,在C/C++中,子线程可以是一个函数, 一般都是一个带有循环的函数,来处理某些数据,优先线程只是一个复杂的运算过程,所以可能不需要while循环,运算完成,函数结束,线程就销毁。对于那 些需要控制的线程,一般我们都是和互斥锁相互关联,从而来控制线程的进度,一般我们创建子线程,一种线程是很常见的,那就是带有消息循环的线程。 消息循环是一个很有用的线程方式,曾经自
2017-10-24 21:47:57
2323
原创 Qt学习之-简易音乐播放器
前言 实现一个简易的音乐播放器,其音乐播放的核心功能是采用Qt支持的Phonon框架。这里用这个框架同样是用来播放,暂停等多媒体的各种控制功能,另外该框架可以自动获取音频文件的一些信息,这样我们在设计播放列表时可以获取这些信息,比如歌手名,专辑名,时长,文件名等等。程序中桌面歌词的实现是继承了QLabel类,然后使用3层文本显示,最上面一层采用渐进显示的方式来达到歌词播放的动态效果。 开发环
2017-10-14 22:33:25
3924
3
原创 Qt核心机制与原理之信号与槽
信号与槽 信号和槽机制是Qt的核心机制之一,要掌握Qt编程就需要对信号和槽有所了解。信号和槽是一种高级接口,它们被应用于对象之间的通信,它们是Qt的核心特性,也是Qt不同于其它同类工具包的重要地方之一。在我们所了解的其它GUI工具包中,窗口小部件(widget)都有一个回调函数用于响应它们触发的动作,这个回调函数通常是一个指向某个函数的指针。在Qt中用信号和槽取代了上述机制。1.信号(sig
2017-10-10 20:59:42
599
原创 使用QT实现2048游戏
2048前言 总体的执行流程是 初始化背景->随机生成数字->绘制->滑动-》归零,计算,归零->随机生成数字->绘制。 绘制是根据一个二位数组来存储的数值来进行绘制的,为了方便逻辑计算,我用的是4*4的数组,从1,1,开始计数。 二维数组存储的是每个格子应该显示的数值,初始化的时候都为0. 首先,我们先通俗易懂说一下这个小游戏这个游戏的核心实现思路: 1,归零:我们
2017-09-27 10:58:58
5967
1
原创 Ubuntu 17.04(Zesty Zapus)安装QT
电脑macbook 安装VMware Fusion软件中 Ubuntu 17系统,安装最新QT5.9;过程~ 安装好VMware Fusion,点击新建虚拟机; 选择Ubuntu64位,点击下一步,一直到启动; 其中过程都略过,直到出现启动系统 出现英文; 此时选择顶部的设置;如图 按钮1 出现下图界面 点击进入 此处点击选择 一个光盘或光盘映像; 到此设置已经完毕;重要
2017-09-24 20:31:13
590
原创 C++ 自定义实现MyString类
学习了C++ 的特性: 封装、继承、多态,老师让根据String库,实现String的功能,通过用重载实现符号的功能。此文实现了 具体来看代码:mystring.h#ifndef _MYSTRING_H_
2017-09-22 22:05:02
2398
原创 LSD基于TCP的聊天系统
lsd远程终端管理系统完整功能,包括聊天功能,还有项目思路,以及配置文件。私聊输入账号的id,然后进行单独聊天,群聊需要输入222,进行群聊;项目流程图:https://www.processon.com/view/link/598d59ade4b0a6812c0cf239设计思路如下效果图有点大,就不上传了,亲,只需要运行 ser,在运行cli
2017-09-13 16:16:04
464
原创 UbuntuC语言dos 攻击
C语言 dos 攻击还记得DOS是什么意思吗?参考了一个大牛的程序,写了个实现DOS的小程序. 下面是程序的源代码.别做坏事哦,不过现在一般服务器都添加规则防dos攻击了的.程序我尽量注释的详细点,免得以后再看的时候,自己都看不懂了.有人说脚本就是当时写的时候懂,过一会就很难看懂了,我觉得程序也是这么会事.当然如果你的脚本不到100行,程序不到1k除外.正则到10行,我就头晕了^_^详情见代码:
2017-09-08 14:33:26
542
原创 Ubuntu C语言 curses 贪吃蛇 小游戏
Curses需要使用这个库,通过这个库来进行屏幕的刷新 详情请参考: http://blog.youkuaiyun.com/hengqiaqia/article/details/77882270 通过学习了解了 curses ,在来进行贪吃蛇的游戏分析 蛇的移动问题,这个是核心部分以及最困难的设计部分了,我采用的是蛇用双向链表的结构来构造出来,分别有一个head 和tail指针,
2017-09-07 16:57:37
912
原创 curses库 安装 和使用
curses库是一组函数,程序员可以用它们来设置光标的位置和终端屏幕上显示的字符样式。curses库最初是由UCB的开发小组开发的。大部分控制终端屏幕的程序使用curses。曾经由一组简单的函数组成的库现在包括了许多复杂的特性。Ubuntu下安装方法:sudo apt-get install libncurses5-dev (如果发现找不到这个包,使用命令 su
2017-09-07 15:33:18
3236
原创 C语言2048小游戏
C语言2048小游戏根据游戏原图 下面我们来一步步来分析: 玩过2048的都知道大概的流程和界面布局,但不一定清楚其逻辑细节,这就需要我们来一步步分析。 界面:即使是在丑丑的命令行中我们也是需要给2048一个像样的界面,当然了,我们能想到的无非也就是给它平凑出一个个完整的边框(* 与 | — 来组成)。 数字:我们可以通过一个4X4数组来实现2048的布局。用\t(标识符
2017-09-05 15:39:45
4730
5
原创 Wilco的Windows7环境下MyEclipse+Nutch2.2.1+Mysql搭建
下面的教程主要来源于Wilco的Windows7环境下MyEclipse+Nutch2.2.1+Mysql搭建但是教程中有些地方不对,下面是更正后的,另外加了如何配置爬取数据到Solr的部分。 一、环境准备 首先肯定是配置开发环境,这里暂时不作详细描述。需要的环境有jdk1.7,MyEclipse,SVN,ant,以及MyEclipse下的三个插件subclipse、I
2017-08-16 22:59:12
339
转载 咨询公司项目管理初步研究
一、组织管理基本概念(一)组织定义:组织是由两个以上的人为达成共同的目标而组合起来的群体,它在职务范围、责任、权力、相互关系等方面形成的结构体系即是组织结构。解释:一般组织都有一个从小到大、从简单产品/服务到复杂产品/服务的发展过程。企业所处的发展阶段直接影响到其管理管理模式,从而影响到具体的组织形式。(二)组织设计定义:国际通用叫法是企业组织机构的设计,国
2017-08-11 09:55:43
897
原创 Mac OS 下使用Eclipse + CDT 搭建C/C+ 开发环境
使用eclipse加某些插件的模式可以搭建多种开发环境,避免多个应用之间来回切换。在eclipse上安装CDT插件可以搭建C/C+的集成开发环境, 非常方便。不过因为语言编译的原因,有时也会碰到 “launch failed. binary not found” 或者“program not specified”等让人想砸电脑的问题。安装CDTeclipse安装好后(下载eclip
2017-07-06 12:49:05
1105
原创 安装vmare-tools—实现ubuntu与windows的互相复制与粘贴(无需共享文件夹)
安装vmare-tools——实现ubuntu与windows的互相复制与粘贴(无需共享文件夹) 这里主要解决的问题是如实现linux系统与windows系统之间能够方便快捷的实现复制粘贴,就像ctrl+c 与ctrl+v一样方便。 一 安装前准备: 1、一定要先安装 build-essential软件,否则不能够顺利安装 $ sudo apt
2017-07-04 21:35:17
1082
原创 在mac上用VMWare虚拟机装Linux-Ubuntu--及Ubuntu安装Vmware Tool
在mac上用VMWare虚拟机装Linux-Ubuntu--及Ubuntu安装Vmware Tool 现在网上的虚拟机有很多,本人测试VMware在Mac上表现良好,推荐给大家需要的工具软件 vmware fusion for Mac (直接百度搜就好)软件 Ubuntu 系统光盘 或 镜像文件(.iso)
2017-06-30 12:40:18
554
转载 Android 开发者的 RxJava 详解
这篇文章的目的有两个: 1. 给对 RxJava 感兴趣的人一些入门的指引 2. 给正在使用 RxJava 但仍然心存疑惑的人一些更深入的解析RxJava 到底是什么RxJava 好在哪API 介绍和原理简析1. 概念:扩展的观察者模式观察者模式RxJava 的观察者模式2. 基本实现1) 创建 Observer2) 创建 Observable3) Subs
2017-06-13 22:49:14
186
原创 Android Studio 出现 Gradle's dependency cache may be corrupt 错误分析
情况说明:之前下载了 Android Studio 1.0rc2候选版,那时候把 SDK路径放到了 Android Studio 的包路径下,之后看官网是不建议这样做的,今天打算升级到正式版,所以就把 SDK 给拿出来放到了另一路径下。此时我打开项目,将 sdk引到了新路径下,这时就出现如下错误了:由于也是刚使用 Android Sutdio 不久,对其还不是特别熟悉,
2017-04-10 11:21:27
221
ijkplayer格式支持https支持so包
2019-11-06
Qt核心机制与原理之信号与槽
2017-10-10
Lsd基于TCP实现聊天系统
2017-09-13
LSD基于TCP的聊天系统
2017-09-13
android 横向滑动仿网易客户端
2016-04-20
serial android 串口测试
2016-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人