- 博客(60)
- 资源 (2)
- 收藏
- 关注
原创 Android Studio SVN版本控制
一、设置svn控制 按钮在 Android Studio中创建了一个项目之后,默认是没有版本控制按钮的。如果你想对项目进行版本控制,可以这么设置。VCS –> Enable Version Control Integration 。操作完后这样就出现下图中的两个按钮二、从版本服务器迁出项目从版本服务器中迁出项目,设置如下:1、设置 VCS –> Checkout from Version Contr
2017-04-24 22:20:57
530
翻译 SQLite指令
sqlite3指令 sql的指令格式:所有sql指令都是以分号(;)结尾,两个减号(–)则表示注释。 如: sqlite>create studen_table(Stu_no interger PRIMARY KEY, Name text NOT NULL, Id interger UNIQUE, Age interger CHECK(Age>6), School text DEFAULT ‘
2017-02-23 21:46:39
440
原创 IOS的一些著名的开源库
主要对当前 GitHub 排名前 100 的项目做一个简单的简介, 方便初学者快速了解到当前 Objective-C 在 GitHub 的情况。项目名称 项目信息 1. AFNetworking 作者是 NSHipster 的博主, iOS 开发界的大神级人物, 毕业于卡内基·梅隆大学, 开源了许多牛逼的项目, 这个便是其中之一, AFNetworking 采用 NSURLConnectio
2017-02-23 21:43:01
1195
原创 Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version
异常提示:应用在Android Studio Build的时候,抛出了如下异常:Error:Execution failed for task ‘:app:processDebugManifest’. Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version 9 declared in li
2017-02-23 21:34:31
993
原创 Android右箭头的显示文字的View
package com.example.demo;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Path;import android.text.
2017-02-23 21:31:38
4577
原创 Android 按两下退出APK的实现
app开发中,经常需要按下两次退出apk,以下是实现方式: private static Boolean isExit = false; private static Boolean hasTask = false; Timer tExit = new Timer(); TimerTask task = new TimerTask() {
2017-02-23 21:17:25
1068
原创 Android 7.0 新特性
Android 7.0 新特性https://developer.android.google.cn/about/versions/nougat/android-7.0.html
2016-12-08 13:11:45
424
原创 Android ORM框架之GreenDAO
GreenDao在Android 开发过程中,android 使用sqlite 来存储数据的,但是我们在实际开发过程中,要编写大量的工作来开发数据管理。因此,适用于 Android 的 ORM 框架也就孕育而生了,现在市面上主流的框架有 OrmLite、SugarORM、Active Android、Realm 与 GreenDAO。但是本文当中要讲的是greenDao,因为它是这么框架中当中性能最
2016-07-27 20:30:04
861
原创 视频格式与视频编码压缩标准 之间的关系
我觉得知乎上有一个提问,有着很详细回答,大家可以看看:https://www.zhihu.com/question/20997688
2016-07-19 20:46:35
690
原创 Android WebView 网页实现选择文件
通常网页上都会有选择文件上传按钮 代码为 < input type=”file” />要顺利的打开本地文件夹,就要重新写openFileChooser,然后再研究中发现openFileChooser是隐藏的一个方法,不能继承重写。如下是解决方案:1、2、new 一个WebChromeClient,重新实现 openFileChooser方法webView.setWebChromeClient(ne
2016-07-17 17:39:10
1208
原创 OPenfire源码环境配置和编译
下载源码官网下载:http://www.igniterealtime.org/downloads/source.jsp下载源码后,将其解压到自己的工作目录下,文件夹名为openfire_src。打开Eclispe,点击File->>New->>Project..,命名为 openfire_src, 由于我已经创建了,所以这里会提示项目已经存在了,一路 NEXT…..FINISH。创建完成后,你会
2016-07-17 15:14:23
1262
原创 XMPP聊天之Openfire后台的安装和配置
XMPP聊天之Openfire 的安装和配置—Mac OS 一、下载并安装openfire1、下载最新的openfire安装文件官方下载站点:http://www.igniterealtime.org/downloads/index.jsp#openfire openfire是服务器,下面还有一个spark,这个是一
2016-07-16 23:39:12
4439
原创 XMPP协议
XMPP 全称Extensible Messaging and Presence Protocol,前称Jabber从本质上讲, 一个XML流作为会话期间发送的XML节的信封, 而另一个XML流作为会话期间接收的XML节的信封. 我们可以用如下的简化模型做一个展示.+--------------------+--------------------+| INITIAL STREAM |
2016-07-16 17:23:36
2387
原创 MySQL配置
下载MySQL 下载地址:http://dev.mysql.com/downloads/mysql/ 我下载的是,免安装版本,下载完之后,加压到自己指定的文件夹中,我这里就直接解压到C盘 配置环境: 我的电脑->属性->高级->环境变量 选择Path,在其后面添加: 你的mysql\bin文件夹的路径 (如:C:\mysql-5.7.13\bin) Path=…….; C:\mysql\b
2016-07-16 12:20:10
421
原创 打开Openfire 关于出现 java.io.FileNotFoundException: 等错误信息
出现这种问题的解决方案是,需要使用管理员的身份打开opnefire
2016-07-16 10:59:10
920
原创 关于Android开发过程用到的工具类
本人从事Android 开发,在开发的过程中用到的工具,与大家分享,前期较少,后面会不断更新:一、Http 接口验证工具1、PostMan,Chrome上的一个插件 2、DHC ,也是Chrome上的一个插件
2016-07-15 22:51:28
455
原创 android:windowSoftInputMode键盘相关属性
这个属性能影响两件事情: 【一】当有焦点产生时,软键盘是隐藏还是显示 【二】是否减少活动主窗口大小以便腾出空间放软键盘各值的含义: 【1】stateUnspecified:软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置 【2】stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示 【3】state
2016-07-14 18:31:10
365
原创 Android 获取视频(本地和网络)缩略图的解决方案
在Android 开发视频的时候,通常都需要显示视频列表,而视频列表通常都有一张视频缩略图,那么它是怎么获取的呢,关于网络视频的缩略图的实现方案主要有两种:1、后台返回视频时顺便连缩略图的路径都返回给你了,这样前端压力轻松。 2、后台是返回视频路径,关于缩略图,前端从视频中获取。那么如何从视频中获取缩略图呢?1、关于本地视频的缩略图,官方有提供解决方案: ThumbnailUtils.creat
2016-06-30 20:49:59
6401
原创 关于Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.编译错误
开发环境: Android studiogradle编译失败,问题如下:Error:Execution failed for task ‘:funboxlauncher:transformClassesWithDexForDebug’. com.android.build.api.transform.TransformException: java.lang.RuntimeException:
2016-06-20 18:00:10
6724
原创 关于android.os.SystemProperties的使用
android.os.SystemProperties在SDK的库中是没有的,需要把Android SDK 目录下data下的layoutlib.jar文件加到当前工程的附加库路径中,然后在源程序中就可以Import了。但是这样做会出现一个问题,编译的时候会报错:Unable to execute dex: Java heap space 。在网上找了一下,这个链接比较有帮助:http://prog
2016-06-02 14:26:23
1878
原创 java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionVie
我们在使用RecyclerView这个控件时,发生了一个错误,而且还是RV内部的错误,如下代码:不会在我们自己的代码出现的bug,那么如何解决这个问题呢java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionViewHolder{34f7155b position
2016-05-19 11:10:43
5761
1
原创 AndridStudio编译错误之——libpng error: CgBI: unhandled critical chunk
错误代码AAPT: /Users/zhi/AndroidStudioProjects/Gongyu/handmarkPulltorefreshLibrary-master/src/main/res/drawable-mdpi/default_ptr_flip.png: libpng warning: iCCP: Not recognizing known sRGB profile that has
2016-03-08 14:15:37
2261
原创 Java 编写注释规范模板
在实际的项目开发中,特别是团队的项目开发中,有必要对代码注释进行规范,是团队开发更好的协调。注释模板的入口: 打开Eclipse,然后打开Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元素啦。 现就每一个元素逐一介绍:文件(Files)注释标签:/** * @Title: ${file_
2015-09-03 19:42:00
681
原创 Android之 特殊字符显示
按在android和Java开发中,经常用到特殊的字符显示,以下为常见的ASCII十进制交换编码: –> <– 这边是空格 !–>!<– "–>”<– xml中需要在前面加入\ #–>#<– –>–><– %–>%<– &–>&<– '–>’<– (–>(<– )–>)<– *–>*<– +–>+<– ,–>,<– -–>-<– .–>.<–
2015-09-03 19:25:29
2063
原创 EMAIL之SMTP应答序列
* 211系统状态或系统帮助响应* 214帮助信息* 220<domain>服务就绪* 221<domain>服务关闭* 250要求的邮件操作完成* 251用户非本地,将转发向<forward-path>* 354开始邮件输入,以“.”结束* 421<domain>服务未就绪,关闭传输信道* 450要求的邮件操作未完成,邮箱不可用* 451放弃要求的操作;处理过程中出错* 45
2015-09-03 19:22:14
954
原创 Android M的特性
一如既往,谷歌发布了Android M的预览版本,同样在新版本中增加了新的功能,了解这些功能,可以使开发者更好的实现新的功能。以下几个新的特性:应用权限管理: 第三方 ROM 中常见的应用权限管理功能终于得到了官方的支持,实际上,这一点在 Android 4.3/4.4 中就可以通过打开隐藏设置来实现。网页浏览体验: Chrome 自定义标签页,在应用中的链接可以使用 Chrome 浏览器的定制
2015-09-03 13:43:45
735
原创 Android窗口之PopupWindow
PopupWindow通常用于对话框的实现,能够悬浮在Activity之上。PopupWindow的位置按照有无偏移分,可以分为偏移和无偏移两种;按照参照物的不同,可以分为相对于某个控件(Anchor锚)和相对于父控件。具体如下PopupWindow显示的重要方法showAsDropDown(View anchor):相对某个控件的位置(正左下方),无偏移showAsDropDown(View a
2015-08-26 22:24:16
623
原创 Android控件之ListView的开发技巧
在实际项目中,ListView是频繁用到的控件之一,在开发过程中总结一些有助于开发的知识:ListItem之间的分隔线android:divider="#ff0000" 可以是颜色和图片android:dividerHeight="1px" 要显示分隔线,分隔线的高度必须大于0android:headerDividersEnabled="true" headview下是否加分隔线andr
2015-08-26 22:07:11
1079
原创 Andrtoid控件之ListView开发技巧
ListView的一些属性 (2013-06-05 15:40:02)转载▼ 1、ListItem之间的分隔线 android:divider=”#ff0000” 可以是颜色和图片 android:dividerHeight=”1px” 要显示分隔线,分隔线的高度必须大于0 android:headerDividersEnabled=”true” headview下是否加分隔线 a
2015-08-26 22:00:28
242
转载 软件架构设计
什么是软件架构前言:软体设计师中有一些技术水平较高、经验较为丰富的人,他们需要承担软件系统的架构设计,也就是需要设计系统的元件如何划分、元件之间如何发生相互作用,以及系统中逻辑的、物理的、系统的重要决定的作出。在很多公司中,架构师不是一个专门的和正式的职务。通常在一个开发小组中,最有经验的程序员会负责一些架构方面的工作。在一个部门中,最有经验的项目经理会负责一些架构方面的工作。但是,越来越多的公司体
2015-08-16 21:20:46
9936
1
原创 Android 之数值单位转换
以前都是这么用://转换dip为px public static int convertDipOrPx(Context context, int dip) { float scale = context.getResources().getDisplayMetrics().density; return (int)(dip*scale + 0.5f*(dip>=0?1:-1))
2015-08-15 14:17:41
1620
原创 Android 开发规范
对于android的命名规范,需要遵循好的开发习惯,不仅方便团队开发,而且对于自己的编程也会慢慢养成一个良好的习惯。制定开发规范的目的: 1. 减少维护 2. 提高可读性 3. 加快工作交接**在开发过程勿使用拼音,全程都需要使用英文 **对于命名,需要尽可能的表达出用处,让团队的成员,能够更容易的看出此命名的用意和目的。 **程序中使用单词缩写原则:不要用缩写,除非该缩写是约定俗成
2015-08-15 13:03:08
511
原创 Android客户端添加正式签名文件的操作说明
开始菜单→运行→cmd→回车(打开CMD操作界面)进入Java jdk的安装路径(默认路径为:C:\Program Files\Java\jdk1.6.0_12\bin)操作如下: 在CMD界面输入 cd C:\Program Files\Java\jdk1.6.0_12\bin 回车,进入jdk的bin文件夹提示: a. 请把路径修改为你的Java jdk安装路径; b.
2015-08-08 14:31:06
1778
原创 Android 四大组件之Content Provider
ContentProvider的定义为存储和获取数据提供统一的接口。可以在不同的应用程序之间共享数据。ContentProvider提供的方法query:查询insert:插入update:更新delete:删除getType:得到数据类型onCreate:创建数据时调用的回调函数ContentProvider的特点1)、ContentProvider为存储和获取
2015-08-05 20:44:15
501
原创 Android Activity和Service之间的通信
在Android的四大组件中,Activity主要负责界面的展示,Service服务是在后台承担耗时的任务,那么在项目应用中常常会用到Activity和Service,在Activity中可以用Intent来启动Service并传递数据,当Service有数据需要更新到Activity界面时,我们又如何去实现呢!实现方式:设置全局变量,在需要用全局变量的时候,即时检测全局变量,并更新,这
2015-08-03 23:44:53
524
原创 Android控件之SwipeRefreshLayout(下拉刷新组件)
SwipeRefreshLayout(下拉刷新的布局)继承自ViewGroup,在support v4兼容包下,但必须把你的support library的版本升级到19.1。SwipeRefleshLayout常用的方法:setOnRefreshListener(OnRefreshListener): 为布局添加一个刷新数据的ListenersetRefreshing(boolean): 显示或隐
2015-07-26 13:26:20
641
原创 JAVA之四种线程池
Executors提供四种线程池newCachedThreadPool 创建一个可缓存线程池,先查看池中有没有以前建立的线程,如果有,就reuse.如果没有,就建一个新的线程加入池中 -缓存型池子通常用于执行一些生存期很短的异步型任务 因此在一些面向连接的daemon型SERVER中用得不多。 -能reuse的线程,必须是timeout IDLE内的池中线程,缺省timeout是60s,
2015-07-26 12:21:35
682
原创 XMPP的基础知识
前言目前IM即时通信有四种协议:1.即时信息和空间协议(IMPP)2.空间和即时信息协议(PRIM)3.针对即时通讯和空间平衡扩充的进程开始协议SIP4.XMPP协议:该协议的前身是Jabber,我们采取XMPP协议主来实现IM主要是考虑XMPP协议是以XML为基础的,它继承了在XML环境中灵活的发展性。这表明XMPP是可扩展的,所以XMPP信息不仅可以是简单的文本,而且可以携带复杂的数据和各种格式
2015-07-22 21:27:40
706
原创 Android中的回调函数使用
一. 回调函数Android平台的事件处理机制有两种,一种是基于监听接口的,一种是基于回调机制的。对于基于监听器的事件处理而言,主要就是为Android界面组件绑定特定的事件监听器;对于基于回调的事件处理而言,主要做法是重写Android组件特定的回调函数。本文主要讨论下回调机制在Android框架中的使用。准确的来说,回调在所有的语言中都有实现,只是方式不同而已,在c,c++,js中,回调是通过指
2015-07-22 20:51:25
1121
转载 深入理解java垃圾回收机制
一、垃圾回收机制的意义 Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用空闲的内存。 ps:内存泄露是指该内存空间使用完毕之后未回收,在不涉及复杂数据结构的
2015-07-19 17:15:37
481
用SharedPreferences方式储存数据
2012-11-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人