- 博客(46)
- 资源 (8)
- 收藏
- 关注
原创 Android Studio依赖库无法刷新问题解决方案
找到下载路径:1.如果未修改过则为C:\Users\Administrator\.gradle\caches\modules-2\files-2.1\2.如果修改过路径则为<your path>\.gradle\caches\modules-2\files-2.1\如遇gradle依赖库未更新情形,可到该目录中删除对应依赖,重新下载即可。终极解决方案:遇无法更新依赖情况(针对Snaps...
2018-04-13 14:50:10 6039
原创 Ubuntu15.10安装docker和docker-compose
1.查看Linux内核版本(3.8以上)和操作系统位数64位uname -a结果: Linux jiaxiaoniu-jnq 4.2.0-16-generic #19-Ubuntu SMP Thu Oct 8 15:35:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux查看Ubuntu版本号命令:cat /etc/issue2.安装Dockersudo ap
2017-03-21 10:39:15 541
原创 Android基础知识总结(二)
1、Android内存的优化策略2、移动互联数据交互格式有哪些及区别3、Android自定义组件的实现思路4、Android中touch事件的传递机制是怎样的?5、Handler 机制
2017-02-15 15:25:57 447
原创 Android基础知识总结(一)
1、内存溢出和内存泄露有什么区别内存溢出:应用的内存已经已经达到系统设置的最大值,进而导致崩溃 内存泄露:应用使用资源之后没有及时释放,导致应用内存中持有了不需要的资源,通常都是由于内存泄露导致内存溢出。
2017-02-15 14:45:22 587
转载 Gradle for Android 依赖管理
依赖管理是Gradle最闪耀的地方,最好的情景是,你仅仅只需添加一行代码在你的build文件,Gradle会自动从远程仓库为你下载相关的jar包,并且保证你能够正确使用它们。Gradle甚至可以为你做的更多,包括当你在你的工程里添加了多个相同的依赖,gradle会为你排除掉相同的jar包
2017-02-09 11:57:37 444
原创 Linux下后台运行jar文件
1、当使用Putty等远程工具连接Linux,运行jar文件,命令如下java -Xms256m -Xmx1024m -jar demo.jar当退出终端时demo.jar就停止运行了2、为了使demo.jar一直运行需要使用如下命令nohup java -Xms256m -Xmx1024m -jar demo.jar&该命令将服务切换到后台运行,当shell中提示了nohup成功后还需要按Ctrl
2017-01-19 14:24:36 2039
原创 Android性能优化——代码优化
1、优化思想:了解编程语言的编译原理,使用高效编码方式从语法上提高程序性能采用合理的数据结构和算法提高程序性能,决定程序性能的关键采用多线程、缓存数据、延迟加载、提前加载等手段,解决严重的性能瓶颈合理配置虚拟机堆内存使用上限和使用率,减少垃圾回收频率合理使用native代码合理配置数据库缓存类型和优化SQL语句加快读取速度,使用事务加快写入速度使用工具分析性能问题,找出性能瓶颈
2017-01-13 17:21:09 425
原创 Android性能优化——UI优化
1、使用<layout>标签来共享布局可以把头文件、其他xml公用多的部分抽取到一个xml中,用layout标签实现共享2、使用<merge>标签来优化布局层数在使用了include后可能导致布局嵌套过多,多余不必要的layout节点,从而导致解析变慢,不必要的节点和嵌套可通过hierarchy viewer(下面布局调优工具中有具体介绍)或设置->开发者选项->显示布局边界查看。merge标签可用
2017-01-13 17:15:55 614
原创 Android点击图标重新启动问题
项目中的小问题:发现应用打包安装后按home键切换到后台后,点击应用图标又重新打开了一个,并没有回到原来的界面解决方法: 步骤1: 删除第一个Activity的启动模式,或者改为“standard”。 步骤2: 在AndroidManifest.xml文件的application标签下面设置android:persistent="true"持久化为 true,防止app挂后台被回收步骤三:
2017-01-05 11:24:12 9020
原创 linux下Servlet中各种Path的值
在linux中tomcat下打印项目HttpServletRequest的值,如下:System.out.println("request.getServletContext().getRealPath :" + request.getServletContext().getRealPath(""));System.out.println("request.getServletContext().g
2016-12-27 11:20:45 1622
原创 mysql数据库索引操作
1.查看表中索引show index from tablename2.对表创建索引create index index_name on table_name (column1, column2)3.删除索引 drop index index_name on talbe_name
2016-12-25 10:23:38 367
原创 Ubuntu下tomcat常用命令
1.查看服务是否启动 ps -ef |grep tomcat结果 test 22028 1 0 Dec16 ? 00:15:36 /home/test/opt/jdk/jre/bin/java -Djava.util.logging.config.file=/home/test/opt/tomcat/conf/logging.properties -Djava.
2016-12-24 20:19:26 2045
原创 Ubuntu下mysql常用操作
1.查看linux系统版本 cat /proc/version2.查看mysql版本 mysql –version3.启动mysql sudo /etc/init.d/mysql start4.查看mysql状态 service mysql status5.查找my.cnf路径 sudo find / -name my.cnf 结果:/etc/mysql/my.cnf6.登录mysql
2016-12-24 18:45:24 442
原创 Android中res/raw和assets的相同点和区别
1、相同点不编译:打包后原封不动保存在apk中,不会被编译为二进制文件2、不同点资源映射res/raw中的文件会被映射到R.Java文件中,assets中的文件不会被映射。目录结构res/raw不可以有目录结构,而assets则可以有目录结构(可以再建其他文件夹)目录用途res/raw一般存放一些音视频文件,assets一般存放html,js,css和数据文件访问方式res/raw访问使用R
2016-12-16 10:45:52 723
原创 linux下安装mysql-5.7.16(tar.gz)
1、解压mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz,并拷贝到/usr/local/mysql目录下 解压:tar -zxvf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz拷贝:sudo cp -r mysql-5.7.16-linux-glibc2.5-x86_64 /usr/local/mysql2、添加系统mysql
2016-12-07 14:23:23 19672 7
转载 Linux下卸载MySQL二进制包(tar.gz)
如果是采用二进制包安装的MySQL,那么你用下面命令是找不到任何MySQL组件的。所以如果你不知道MySQL的安装方式,千万不要用下面命令来判别是否安装了MySQLrpm -qa | grep -i mysql1、检查MySQL服务并关闭服务进程[root@DB-Server init.d]# ps -ef | grep mysqlroot 4752 4302 0 22:55 pts/
2016-12-07 10:53:45 6108
原创 Android实现开机自启
有一些服务比如推送服务,想实现开机自启,怎么实现呢。其实很简单,系统开机后会发送一个广播,我们只需要在自己的APP中注册一个BroadcastReceiver来接收就可以了。1、自定义一个BroadcastReceiver,这里命名为BootReceiverpackage com.example.androidtest;import android.content.BroadcastReceiver
2016-12-04 11:11:13 4520
原创 java中synchronized理解与使用
同步锁的基本理解当synchronized锁住一个对象后,别的线程如果也想拿到这个对象的锁,就必须等待这个线程执行完成释放锁,才能再次给对象加锁,这样才达到线程同步的目的。即使两个不同的代码段,都要锁同一个对象,那么这两个代码段也不能在多线程环境下同时运行。
2016-12-03 23:19:18 562
原创 wait和notify的理解与使用
1.对于wait()和notify()的理解对于wait()和notify()的理解,还是要从jdk官方文档中开始,在Object类方法中有: void notify() Wakes up a single thread that is waiting on this object’s monitor. 译:唤醒在此对象监视器上等待的单个线程 void noti
2016-12-03 23:09:56 52150 9
原创 移动端搭建Http Server(七)—— 实现wifi传图
上篇中实现了访问APP中内置的静态网页 移动端搭建Http Server(六)—— 实现APP中内置静态网页,本篇会继续实现另一个功能——wifi传图1.实现思路ImageUploadHandler中读取图片二进制数据并保存到文件将图片路径回调给Activity验证结果使用Post man模拟HTTP Post请求(到google store中安装postman需用到代理工具)2.重新实现一
2016-11-27 22:00:21 1220
原创 移动端搭建Http Server(六)—— 实现APP中内置静态网页
在上文中简单的写了static路径简单的返回(参见移动端搭建Http Server(五)—— 实现URL路由模块),本文将完善返回的内容,改为返回网页。1.实现思路在项目assets中内置网页内容http://192.168.1.104:8088/static/a/b.html —> assets/a/b.html在ResourceInAssertsHandler中实现内置网页访问功能
2016-11-27 19:03:32 2484
原创 移动端搭建Http Server(五)—— 实现URL路由模块
在前面几篇文章中已经实现了移动端Server的关键前两步:监听远程连接和解析HTTP Headers中的数据,本文将要设计一下路由规则1.URL路由规则简单来讲就是客户端请求一个URL,服务器分发给哪个服务来处理移动端Server要实现两个功能:让其他设备打开APP中内置好的页面接收其他设备传输给APP的图片我们对这两种行为定义路由规则: /static/ :定义为下载文件的访问路径 /
2016-11-27 16:11:34 2411
原创 移动端搭建Http Server(四)—— 解析HTTP请求Headers
在移动端搭建Http Server(二)—— 实现监听并验证中用代码实现了监听远端请求,根据移动端搭建Http Server(三)—— HTTP协议讲解的基础知识,本节实现一下提取HTTP请求Header中的数据。1.数据流中每个字节都是连起来的,所以要根据流中的\r\n来取每一行数据思路:用两个变量来记录,变量1记录上一个字节,变量2记录当前访问字节,当变量1为\r且变量2为\n时,表示一行数据结
2016-11-27 14:54:24 2411
原创 Android Studio2.2.2 NDK开发环境配置
1.安装Android Studio2.2.2,请参考前文Android Studio安装和第一个HelloAS项目2.打开Tools->Android->SDK Manager->SDK Tools选中如下三项后点击Apply:NDK: 用C和C++编程的工具包 CMake: 一个能让你利用Gradle编译为本地so库的扩展插件,如果你用ndk-build编译,就不需要此插件 LLDB: 调试
2016-11-27 13:43:00 1429
原创 移动端搭建Http Server(三)—— HTTP协议讲解
上文中Coding中实现了监听app server的端口( 移动端搭建Http Server(二)—— 实现监听并验证),这篇将讲解Http协议1.HTTP协议相关知识做Android开发都用过Http网络库,如URLConnection,HttpClient,OKHTTP等,它们都封装了HTTP Request请求,我们在使用的时候只需要传url和请求方式以及相应的参数和数据,那么它们底层是给服务
2016-11-26 22:23:59 1001
原创 移动端搭建Http Server(二)—— 实现监听并验证
上文移动端搭建Http Server(一)—— 总述中主要对本系列内容作了综述,本文会对Http Server有一个简单的架构,包括: ①设计一个SimpleHttpServer组件 ②监听端口并简单向请求者返回信息 ③使用telnet来检验结果1.Android Studio新建一个项目,这里命名为AndroidServer2.增加SimpleHttpServer,在其中增加启动服务器和停止
2016-11-26 18:07:28 2049
原创 移动端搭建Http Server(一)—— 总述
把移动端作为Server的例子有wifi传书,爱分享文件互传,下面会介绍原理和简单的实现。实践功能: 1.设计并实现一个http server微架构 2.实现app内置网页访问功能 3.wifi传图涉及到的基本知识有: 1.传输协议与应用协议概念 2.java socket基础 3.get和post协议格式 4.开发机与模拟器网络调试工具与配置1.传输层协议与应用层协议注意:一种应用层
2016-11-26 12:42:32 1115 1
原创 Java数据爬取——爬取携程酒店数据(二)
在上篇文章Java数据爬取——爬取携程酒店数据(一)爬取所有地区后,继续根据地区数据爬取酒店数据1.首先思考怎样根据地域获取地域酒店信息,那么我们看一下携程上是怎样获得的。 还是打开http://hotels.ctrip.com/domestic-city-hotel.html 这个地址,随便点击一个地区进去(这里我选取澳门作为示例),点击第二页数据,很高兴发现http://hotels.ctri
2016-11-25 12:47:01 9073 11
原创 Java数据爬取——爬取携程酒店数据(一)
最近工作要收集点酒店数据,就到携程上看了看,记录爬取过程去下1.根据城市名称来分类酒店数据,所以先找了所有城市的名称 在这个网页上有http://hotels.ctrip.com/domestic-city-hotel.html从网站地图上可以很容易发现这个页面2.然后查看源码发现所有需要的数据都在<dl class = "pinyin_filter_detail layoutfix"></dl>
2016-11-23 15:29:38 13088 2
原创 Android Studio配置github提交项目
1.首先在https://github.com/申请一个账户,记下用户名和密码2.然后到Android Studio打开Setting,找到Github3.输入用户名和密码后点击Test,测试是否能连接上,这里我已经连接成功了4.在电脑上安装git,去官网上下载即可5.安装git后,进入Android Studio,打开Git配置配置完git.exe路径6.配置完git.exe路径后点击Test,如
2016-11-18 12:22:55 360
原创 Android语音——speex编码解码(二)
上文Android语音——speex编码解码(一) 已经生成了so库,本文将介绍如何使用Speex进行语音压缩和解压。1.新建项目,将生成的speex_1.2rc2.jar导入到libs目录下,在main下新建jniLibs目录,将armeabi文件夹拷贝到jniLibs目录下,完成后如下图2.项目中一共有6个类(源码不在一一贴出)3.下面提供Android Studio和Eclipse使用Spee
2016-11-15 17:49:47 3283 1
原创 Android语音——speex编码解码(一)
Android中录音使用AudioRecord录音后的格式为pcm,要想播放需要转换格式,可以加入44字节的头转换为wav格式然后播放,但是我们要在网络上传输还是要把音频压缩一下,压缩为speex文件方便传输,节省流量,下面讲解怎样打speex的so库,和怎样使用speex在wav和spx文件之间相互转换。1.在speex官网上下载speex源码 https://www.speex.org/down
2016-11-12 17:50:26 11654 9
原创 Android Studio中查看MD5和SHA1值
在申请一些服务时会让输入SHA1值,这时候在Android Studio中怎样查看呢?1.使用Eclipse时查看很简单,如图选择Window-Prefenrences2.Android Studio中查看这两个值介绍两种方法第一种直观的方式(Android Studio 2.2版本以后的查看方式)命令行方式 打开cmd终端进入到C:\Users\你的用户名.android>目录下,然后在终端中
2016-11-11 17:42:09 508
原创 Android Studio工程目录结构介绍
1.先看一下建立的HelloAS文件夹中的内容.gradle Gradle编译系统,版本由wrapper指定.idea Android Studio IDE所需要的文件build 代码编译后生成的文件存放的位置gradle wrapper的jar和配置文件所在的位置.gitignore git使用的ignore文件build.gradle gradle编译的相关配
2016-11-11 16:57:03 659
原创 Android Studio中简单的设置-字体风格等
1.Android Studio中设置字体样式选择File->Settings点击Settings进到如下界面看到Darcula主题的字体和字号是不能设置的,怎么办呢,按照如下步骤点击Scheme右边的Save As命名为Darcula_Custom后点击OK然后可以修改字体了把字体改为Consolas(个人比较喜欢这个字体),将字号调大到14,然后点击右下角的Apply2.显示代码行数在Ed
2016-11-11 16:25:15 9436
原创 Android Studio安装和第一个HelloAS项目
本篇将介绍Android Studio的安装和运行的一个应用程序 本机系统环境:win7 64位 1.下载android-studio-bundle-145.3360264-windows,下载地址http://www.android-studio.org/bundle版本中集成了android sdk,不用自己再下载android sdk(没有安装jdk的同学请自行下载安装配置,这里不再讲解j
2016-11-11 13:54:25 8204
原创 Android百度语音识别中的若干问题
应用场景是离在线语音识别V2.1.20 1.集成百度语音识别demo后一直处于麦克风启动中原因1:无法加载百度语音识别的so库应用中会使用其他依赖库,例如用AS用了 compile 'pl.droidsonroids.gif:android-gif-drawable:1.2.2' 这个依赖库中包含了好几个平台的so,所以加载非armeabi平台时会找不到so,所以用gradle依赖时要注意
2016-11-10 16:49:21 3926
原创 Eclipse中配置JNI代码提示、javah命令
1.配置生成javah选项,不用在命令行中生成.h文件在命令行生成.h文件方法请查看编写第一个NDK项目——HelloNDK配置javah命令 在Eclipse中选择Run->External Tools->External Tools Configuratios其中带有${}的都可通过Variables选择,配置完成后 Location为:${system_path:javah} Wo
2016-11-05 17:40:19 621
原创 编写第一个NDK项目——HelloNDK
1.新建一个Android项目为HelloNDK2.在MainActivity增加一个native方法3.新建jni文件夹4.生成jni头文件打开cmd,运行javah先看一下javah的帮助-jni 对哪个.class产生头文件-classpath 对哪个路径下的.class产生头文件-d 头文件输出路径进入当前项目目录cd F:\ibm
2016-11-05 16:02:14 1102
原创 ndk-build编译选项及ndk-build clean命令
本文在上文HelloJni导入到Eclipse及命令行编译的基础上1.ndk-build生成哪个平台的so选项是根据项目中jni/Application.mk文件,默认为: APP_ABI := all2.若要只生成armeabi平台so文件,需将此句话注释: #APP_ABI := all3.上文中已生成全部平台的so文件,所以要先执行 ndk-build clean4.先删除上文项目中生
2016-11-05 12:15:47 7132
speex资源和so及jar包
2016-11-15
speex源码和生成的so库
2016-11-12
Android Studio第一个程序
2016-11-11
Android百度语音识别v2.1.20Demo
2016-11-10
第一个NDK项目HelloNDK
2016-11-05
一个文件夹下格式相同excel文件汇总源码
2015-02-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人