- 博客(40)
- 资源 (6)
- 问答 (2)
- 收藏
- 关注
原创 对HTTP的理解
(1)定义:超文本传输协议(HTTP,HyperText Transfer Protocol)是一种基于请求与响应、无状态、应用层的协议。(2)特点:(C单快活无连态)①C/S模式,也是一种请求/响应模式的协议,快递员服务于客户。②简单:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST,每种方法规定了客户与服务器联系的类型不同。③快速:由于...
2018-10-22 02:26:14 858
原创 Android性能优化总结
一、性能优化:分为三个大方向:布局优化、绘制优化、内存优化(1)布局优化(5种):①删除布局中无用的控件和层级②有选择地使用性能较低的ViewGroup。既可以使用RelativeLayout和LinearLayout时,且不影响层级的前提下,选择LinearLayout。RelativeLayout会对子View进行两次的onMeasure,横向和纵向各一次。而Linea...
2018-10-18 01:11:01 225
原创 设计模式中的六大原则
1.单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。 即 不要让一个类承担过多的职责。(比如在Activity里,将文件读写、adapter、bean类都写在里面,如果要改这三者的其中一个,都需要修改这个Activity,此时就违背了该原则)2.开放封闭原则:类、模块、函数等应该是可以扩展的,但是不可以修改。 即 对于扩展是开放的,对于修改是封闭的。(简单工厂模式违背...
2018-10-16 16:19:07 209
转载 沉浸式模式
转载:郭大神的Android沉浸式状态栏完全解析沉浸式模式:package com.example.yzb.myapplication;import android.graphics.Color;import android.os.Build;import android.os.Bundle;import android.support.v7.app.ActionBar;import ...
2018-07-08 23:28:48 218
原创 报错:android.database.CursorIndexOutOfBoundsException
解决方法:使用Cursor之前先调用cursor.moveToFirst()
2018-07-03 21:54:54 2782
原创 报错:java.util.ConcurrentModificationException 或 java.lang.IIegalStateException
报错:java.util.ConcurrentModificationException 或 java.lang.IIegalStateException例子: /** * 如果listAll中包含listDelete的元素,则进行清除 * @param listAll 原有的list * @param listDelete 要去除的元素的list...
2018-07-03 21:53:26 438
原创 工具类:将list转化为String
有时候我们需要将list转化为String,同时元素之间用“,”隔开,这个时候就可以用StringBuffer进行处理,稍微提一下,StringBuffer是线程安全,StringBuilder是线程不安全的 /** * 将List<String>转化为String字符串显示,元素之间用“,”号隔开 * @param list 要处理的list * @...
2018-07-03 21:45:26 3032
原创 报错:“java.tuil.ConcurrentModificationException”
现象:在使用迭代器遍历时,报错“java.tuil.ConcurrentModificationException”解决方法:使用ConcurrentHashMap替换HashMap,ConcurrentHashMap会自己检查修改操作
2018-07-01 18:26:41 146
原创 生成系统本地缩略图和删除系统本地缩略图
项目需求:在本地系统添加图片文件后,本地系统不能立刻就生成其对应的缩略图;而删除本地图片文件后,有些版本的系统或者不同的厂商手机,不会立即将其对应的本地系统缩略图删除,要重启手机才能更新,此时就需要我们手动去强制处理:【1】生成本地缩略图: /** * 让本地系统生成缩略图 * @param context 上下文句柄 * @param path 要生成缩略图的...
2018-07-01 18:20:22 316
原创 自动化测试monkey的简单使用
步骤:①先链接测试手机(需要root)②命令行输入:adb shell //进入shell窗口③命令行输入:cd data/data④命令行输入:ls //显示包名,有时候需要先获取root权限:su⑤命令行输入:monkey -p 包名 -v 测试次数参数:在⑤中增加以下参数意思:--ignore crashes : 忽略App的崩溃--hprof : 生...
2018-07-01 18:05:44 164
原创 报错:在使用开源项目Android-Universal-Image-Loader报错
报错:在使用开源项目Android-Universal-Image-Loader报错“java.lang-RuntimeException:ImageLoader must be init with configuration before using”解决方法:在使用前,初始化一下:imageLoader.init(ImageLoaderConfiguration.createDefault(x...
2018-07-01 17:58:18 218
原创 报错:“android.content.res.Resource$NotFoundException:String resource ID#0x1”
原因:设置TextView的setText时将int型数值直接传递进去:错误的写法: textView.setText(3);正确的写法: textView.setText("3");这种往往是不够细心所致。不知道为什么,我的IDE在写的时候没有报错,编译的时候也没报错,但运行触发时才报这个错误,郁闷。...
2018-07-01 17:54:58 191
原创 报错:File.listFiles遇到名字为中文乱码的文件会崩溃
报错:File.listFiles遇到名字为中文乱码的文件会崩溃解决方法:①测试:在Manifest.xml中的<application中加入 android:的不尴尬不了= “false”即可②正式签名:正式签名打包时,IDE会自动设置这个值,不需要手动设置...
2018-07-01 15:30:00 3949 2
原创 工具类:将文件大小转化为带有B、KB、MB、GB的字符串
有时候我们需要将文件的大小进行显示,对于普通用户来说,最直观的是显示带单位的大小数值,比如3KB,10MB之类的,因为项目内用的比较多,所以就封装一个工具类方便使用:package com.example.yzb.myapplication;import java.text.DecimalFormat;public class FileUtils { /** * 根据...
2018-07-01 15:24:11 1390
原创 如何确保应用布局、文字和界面不随系统设置大小而变化
以往在应用开发当中,经常进行设配各种问题,要么系统版本,要么是厂商定制的系统不同而进行适配,但前几个月有一个用户喜欢自己改变系统的文字大小,最终导致应用布局乱掉,以往还真的没有测试过这个问题,当时没时间记下来,现进行总结记录;解决方法:在自定义的MyApplication(继承Application)中,重写onConfigurationChanged()和getResources()packag...
2018-07-01 15:02:20 2295
原创 android刷新媒体库
因为项目需要,对文件进行操作完后,如果不手动立即刷新本地媒体库,本地查看是无法查看实时的效果,要重启手机,如果需要立即刷新本地媒体库,则调用以下代码:package com.example.yzb.myapplication;import android.content.Context;import android.content.Intent;import android.media.M...
2018-07-01 11:55:38 2658
原创 报错:“java.lang.RuntimeException:Some file crunching failed,see logs for details”
解决方法:在build.gradle文件中加入android{... aaptOptions{//禁止gradle检查png的合法性 cruncherEnable = false userNewCruncher = false }}出现的原因:①构建Gradle的时候,Gradle会去检查一下是否修改过文件的后缀②图片.jpg修改为.png③9path图片也可能出现这...
2018-07-01 11:36:25 593
原创 报错:“java.lang.RuntimeException:Unable to start activity componentInfo...java.lang.NullPointerExcept”
报错:“java.lang.RuntimeException:Unable to start activity componentInfo...java.lang.NullPointerException”解决方法:对应的res资源分(v21)版本处理,即再建一个v21的资源文件即可...
2018-06-30 19:20:24 822
原创 已经注册和注销过广播,但依然会报“Receiver not registered”
解决办法:增加一个标识作为是否注册过广播如:(具体广播的就不写了,只写关键点)package com.example.yzb.myapplication;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;public class BrocastReceiverActivity extends ...
2018-06-30 19:17:00 2122
原创 报错:“Packet address mismatch with connected address”
原因:客户端与服务器以UDP连接时,使用了bind()方法进行绑定服务器(目标)的IP和端口,接着客户端以UDP与另一个客户端进行P2P通信时报错,此时已与第一次的目标绑定。解决方法:第一次进行UDP通信时,直接使用PatagramPacket packet = new DatagramPacket(data,data.length);构造,不要使用bind绑定...
2018-06-30 19:05:49 596
原创 UDP通信小结(发送与接收)
package com.example.yzb.myapplication;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketException;import...
2018-06-30 19:01:10 3605 1
原创 报错:"fatal signal 11 sigsegv at 0xe19bb3ae (code=1) thread20873"
可能导致原因:①数组越界②传入值转换异常(未进行转换 或 转换错误)③未释放资源
2018-06-30 17:47:07 243
原创 报错:“windowManager$BadTokenException:Unable to add window--token null is not for an application”
原因:AlertDialog.Builder新建对象时,不能用Application的Context方法解决方法:使用活动的Context,比如 new AlertDialog.Builder(MainActivity.this);
2018-06-30 01:16:07 1538
原创 使用Arrays.copyof时的记录
Arrays.copyof(text,length)将数组text的前length位截取放回text数组中,如果新数组长度大于原数组,则多出的将填为该数组数据类型的默认值(比如int:0 ;String:null),若小于原数组,则会填充回车符(可能我声明为utf-8?),此时要将末尾的回车符去除比如:String str1 = Arrays.copyof(str2,length);Strin...
2018-06-30 01:12:26 339
原创 NDK开发基本流程
以项目包名为 com.example.demo为例环境:Ubuntu系统下,Android Studio前提:已安装jdk,ndk(安装配置方式,请自行百度)流程:①切换到项目目录下cd /home/.../com/example/demo(注:“/home/...”为具体的项目路径)②调用javac进行编译:javac *.java(注:此处表示编译所有.java文件,然后是编译某个文件...
2018-06-30 00:55:36 221
原创 Android 解决为什么自己的应用在后台进行切换滑动时,经过自己应用会卡顿、不流畅的问题
场景1:打开自己的应用后,将其切换到后台,然后点击后台进行查看各个在后台的应用时,经过自己的应用,会变得卡顿、不流畅场景2:在某些手机,可以在设置里面的更多应用处,有查看正在运行的程序的列表,经过自己的应用时,会变得卡顿,不流畅场景3:自己的应用在Manifest.xml进行了隐式调用,让别的应用可以在点击【使用其他应用打开】时触发弹出可选择列表时,变得卡顿,不流畅,甚至会导致别的应用会退出(亲测...
2018-06-30 00:33:12 2358
原创 报错:ScrollView can host only one direct child
原因:ScrollView内部只能有一个子元素,即不能并列两个以上子元素解决方法:将所有的子元素放到一个LinearLayout、RelativeLayout等ViewGroup布局当中。
2018-06-29 01:12:41 293
原创 Android中,如何从第三方应用调用自己的应用(解决在手机QQ无法调用自己应用的问题),
现在项目有个需求,在第三方应用内点击文件,会根据自定义后缀跳转到我自己的应用来,按照网上常规的方法,大部分是支持的,直到我在手机QQ点击发现并不能实现,后来找了一天终于找到如何在手机QQ点击文件跳转到自己的应用,现在总结一下:场景:自定义后缀文件为.abc文件,需要在其他应用中点击带有自定义后缀的文件时,直接跳转到自己的应用进行处理。代码如下: <!--1-->...
2018-06-29 00:46:16 2488
原创 单例模式总结
单例模式:一个类中,有且仅有一个对象,并提供有且仅有的一个全局访问方法。 场景: ①数据库对象,I/O操作对象 ②工具类对象 ③全局共享的数据(Android中的MyApplication ,全局共享的数据等) 结构图如下: Singleton - instance:Singleton - ...
2018-06-26 02:05:15 325
原创 简单选择排序(JAVA版)
public static void SampleSelectSor(int[] array){ for(int i=0,min=0;i<array.length-1;i++){ min = i;//定义为当前最小关键字 for(int j=i+1;j<array.length;j++){//从初始关键字相邻...
2017-07-06 18:32:18 400
原创 冒泡排序法(JAVA版)
/*** Array 需要排序的数组*/public static void BubbleSort(int[] Array){ Boolean flag = true;//用于标记是否发生位置变化 while(flag){ flag = false;//用于标记是否发生位置变化 int temp;//临时变量 for(int i=0;i<array.length-1...
2017-07-06 12:36:39 319
原创 二分查找法(JAVA版)
①非递归/*** srcArray 传入数组* des 目标数据* return 若该数组有对应的数据,则返回其下标位置;否则返回 -1*/public static int BinarySearch(int[] srcArray,int des){ int low = 0;//最开始的数据下标 int high = srcArray.length-1;//最后一个数据
2017-07-06 12:07:52 233
翻译 解决启动Genymotion,在启动时,选择个人用户后,在EULA Acceptance界面黑屏
最近安装模拟器,在启动Genymotion时,选择个人用户后,在EULA Acceptance界面黑屏。解决方法:1.让EULA Acceptance窗口获取焦点(即用鼠标点击该窗口)2.点击【Tab】两次3.点击【空白键】一次4.点击【Tab】两次5.点击【空白键】一次即可原文链接:https://stackoverflow.com/questions
2017-07-05 15:57:27 974
原创 启动AndroidStudio时报the SDK platform-tools version(xxx) is too old to check APIs cimpiled with API xxx
启动AndroidStudio时,报错“the SDK platform-tools version(xxx) is too old to check APIs cimpiled with API xxx”【解决方法】:【settings】-->【Appearance&Behavior】-->【System Settings】-->【Android SDK】 -->【SDK Too
2017-07-04 18:26:17 529
原创 如何理解Bundle传递数据与直接用intent传递数据
打个比方:传递数据就像是用货车将一些货物运送到目的地:直接用intent传递数据,就是把货物A、货物B、货物C逐件逐件放进货车中,然后让货车运走;使用Bundle传递数据,就是先将货物A、货物B、货物C放进一个纸箱里,然后将这个纸箱放进货车中,让货车运走;个人觉得,如果是少量数据时,建议用intent直接传递比较方便;如果是多种数据,建议用Bundle传递,比较有条理。
2016-12-08 10:47:43 433
原创 两句话总结onNewIntent()
如果该Activity不存在,还未创建的,那创建时不会调用onNewIntent();如果该Activity已经存在,重用该Acitivity时,此时就会调用onNewIntent();
2016-12-08 10:40:11 409
转载 Android 客户端性能优化(魅族资深工程师毫无保留奉献)
原文地址:http://gold.xitu.io/entry/5747fc9471cfe4006bca4c92/promote?utm_source=baidu&utm_medium=keyword&utm_content=android_optimization&utm_campaign=q3_search本文由魅族科技有限公司资深Android开发工程师degao(嵌入式企鹅圈原创团队
2016-11-29 11:07:24 474
原创 Android应用中使用及实现系统“分享”功能(多个文件,多种媒体格式触发)
最近在实现将项目的应用添加到系统的分享功能中,然后查看了张先生http://blog.csdn.net/xyz_lmn/article/details/16856843的博客,发现很不错,亲测可以,然后自己是需要各种多媒体都希望它能触发得到,比如文件,音频,或者一些没有后缀的文件,然后自己根据张前辈的做法,直接在申明intent-filter中设置mimeType="*/*"即可,此时无论是图
2016-11-19 14:01:29 2870
转载 Hibernate实现有两种配置(xml配置与注释配置)
hibernate实现有两种配置,xml配置与注释配置。(1):xml配置:hibernate.cfg.xml (放到src目录下)和实体配置类:xxx.hbm.xml(与实体为同一目录中)①hibernate.cfg.xml配置:xml version='1.0' encoding='utf-8'?>DOCTYPE hibernate-config
2016-11-14 09:19:59 2867
转载 【Hibernate总结系列】hibernate.cfg.xml配置
( 转自:http://www.blogjava.net/amigoxie/archive/2007/12/29/171395.html) Hibernate的描述文件可以是一个properties属性文件,也可以是一个xml文件。下面讲一下Hibernate.cfg.xml的配置。配置格式如下:1. 配置数据源 在Hibernate.cfg.xml中既可以配置J
2016-11-14 09:15:06 301
commons-lang3-3.5-bin下载,commons-lang是java常用方法集合封装了一些常用的java方法
2023-06-10
左手鼠标指针方案,一直留着来备用,如果积分自动变高,请留言
2017-03-20
haxm-extract-workaround.zip
2016-08-24
jboss-as-sprint-int-5.0.0.GA.jar 和 jboss-spring-int-vfs.jar
2016-05-03
用JAVA通过JNA的方式调用DLL出错
2016-10-24
ObjuectInputStream对象使用readObject()方法时抛出异常
2016-06-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人