自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JavaKotlin技术专栏

android的生涯,路还很长,走过坎坷,就是坦途。

  • 博客(71)
  • 资源 (13)
  • 收藏
  • 关注

原创 【JVM之内存与垃圾回收篇】方法区

【JVM之内存与垃圾回收篇】方法区

2024-01-20 18:18:56 376

原创 Android-EditText手机号添加空格逻辑

最近需要在登陆界面给EditText输入的手机号增加3-4-4空格的效果,于是就整了一段逻辑。直接上代码吧public class MainActivity extends AppCompatActivity { private EditText et; private static final String TAG = "jp--Tag"; private boolean delete = false; private static int sLastLength.

2021-12-08 02:05:25 2004

原创 Java闭包问题探究

浪费时间是一桩大罪过。——卢梭闭包的概念闭包(Closure)是一种能被调用的对象,它保存了创建它的作用域的信息。 JAVA并不能显式地支持闭包,但是在JAVA中,闭包可以通过“接口+内部类”来实现。java8中出现了lamada表达式的方式来实现闭包。Java闭包的作用传递函数行为;简化访问流程,方便属性访问;形成封闭的执行作用域;可以实现java的伪多继承;Java闭包的使用问题java闭包在初始化时一般都是使用匿名的方式创建。类似如下代码:setOnClickListe..

2021-12-03 20:43:16 1992

原创 CSS矩阵探秘

1. 矩阵数学概念大家上次听到矩阵这个词是什么时候?应该是大学时候的线性代数。线性代数是大多数人的噩梦,概念可能已经忘得差不多,先来回顾一下在数学中,矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合, 最早来自于方程组的系数及常数所构成 的方阵由 m × n 个数排成的m行n列的数表称为m行n列的矩阵,简称m × n矩阵。2. 矩阵和向量向量可以用矩阵表示,且有时特殊矩阵就是向量矩阵包含向量向量的运算离不开矩阵3. 矩阵乘法矩阵第m行与第n列交叉位置的那个值,等于第一个

2021-12-03 20:36:21 660

原创 Android页面劫持问题整理

什么是Activity劫持APP正常的Activity界面被恶意攻击者替换上仿冒的恶意Activity界面进行攻击和非法用途。界面劫持攻击通常难被识别出来,其造成的后果不仅会给用户带来严重损失,更是移动应用开发者们的恶梦。举个例子来说,当用户打开安卓手机上的某一应用,进入到登陆页面,这时,恶意软件侦测到用户的这一动作,立即弹出一个与该应用界面相同的Activity,覆盖掉了合法的Activity,用户几乎无法察觉,该用户接下来输入用户名和密码的操作其实是在恶意软件的Activity上进行的,最终会发生什.

2020-05-26 11:20:38 1621

原创 通过Java反射机制获取对象实例属性值

在java的世界中,java有类这一个概念,java对象是java类的一个实例,这里就不画uml图了,这都是很简单的概念。那么问题来了,类的是谁的对象实例呢?从其他的语言上,我们或多或少回听说,一切皆是组件啊,一切皆是对象之类的话,java也是以面向对象为核心理论的语言,那么类作为对象的实例化,我们可以大胆的想象下,类又是谁的实例化呢?大家先不要反驳我,我们就类比推理下。其实,在java的世界...

2020-03-17 17:02:56 2927 4

原创 Gson获取type类型完成json to javabean的转化

Gson的API fromJson()的使用方法的第二个参数是一个type类型ApiResponseModel<CashierModel> result = GsonUtils.fromJson(str, Type);例如上面的代码,那么,如何才能正确的从范型中获取Type呢?比方说如何获取Test中Test的类型呢?Test是不确定的类。首先,我们定一个Callback的子类...

2020-03-09 15:46:47 685

原创 Java警惕自增操作的陷阱

浪费时间是一桩大罪过。——卢梭java自增自减方法的使用导致的问题。public class Test{Private static int count;Public static void main(String[]args){ for(int i=0;i<10;i++){ count = count++;//或者count = count—; } System....

2019-12-19 17:51:16 175

原创 volatile解决Java指令重排的问题

决定一个人的一生,以及整个命运的,只是一瞬之间。——歌德什么是指令重排呢?指令重排是指在程序执行过程中, 为了性能考虑, 编译器和CPU可能会对指令重新排序.int a = 1;//第一步int b = a;//第二步int c = 4;//第三步这段代码第一步和第二步是不会被重排的。但是,第三步是可能会被重排的。重排后的代码如下:int c = 4;int a = 1;...

2019-12-12 16:52:14 491

原创 volatile解决Java内存可见性问题

在java的世界中存在的各种各样的关键字,就像其他的语言一样,这些关键字组成了这个丰富的java的世界。有很多关键字大家是比较的熟悉的,但是还有一些关键字,连作者自己都没有遇到过或者是遇到过也没有使用过。今天我们就来聊聊”volatile”.java开发中有内存这个概念,我想大家没有不知道的吧,代码在虚拟机中执行是需要将code读到内存中的。一个人的世界如果这块儿内存空间是单个“人”用...

2019-12-12 16:37:56 309

翻译 关于Dart2那些事儿-异常处理

生活的道路一旦选定,就要勇敢地走到底,决不回头。——左拉Exceptions你的Dart代码可以抛出和捕获异常。异常是指程序执行中发生的意料之外的错误。如果没有捕获异常,引发异常的隔离程序将被挂起,通常隔离程序及其程序将被终止。与Java相反,Dart的所有异常都是未检查的异常。方法不声明它们可能抛出哪些异常,也不要求您捕获任何异常。Dart提供Exception和Error类型,以...

2019-12-12 10:02:58 298

原创 AndroidX引发的“血案”

苦难磨炼一些人,也毁灭另一些人。——富勒[image:3213DC24-E484-48DC-94A4-CEABB9E83B52-33451-0001D88F3AB91CF5/20190824064347748.jpeg]AndroidX的诞生Google为什么要定制AndroidX方案呢?这个方案的定制的主要目的和作用是对遗留版本的Android library support的版本进...

2019-12-11 20:35:16 1166

原创 Dart学习笔记4 - Mixins理解

今天应做的事没有做,明天再早也是耽误了。——裴斯泰洛齐当我第一次接触Mixin的概念的时候,我是很茫然的,因为我之前一直都是使用kotlin或者是java的语言开发项目的,这个知识点在这两种语言中根本是不存在的。不过,直到我开始使用它的时候,我才意识到它的强大。为什么我们需要Mixin的特性呢?[image:3CBB30C9-12D6-4937-9103-371658B92731-1...

2019-12-09 20:57:51 302

翻译 关于Dart2那些事儿-运算符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kyPwOXIp-1575885089571)(https://upload-images.jianshu.io/upload_images/4653851-9eefbc754660a520.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]人的一生是短的...

2019-12-09 17:54:07 274

翻译 关于Dart2那些事儿-函数

不要等待,时机永远不会恰到好处。——拿破仑·希尔Dart是一种真正的面向对象语言,所以即使函数也是对象,具有类型和功能。这意味着函数可以分配给变量或作为参数传递给其他函数。您还可以像调用函数一样调用Dart类的实例。有关详细信息,请参见[可调用类]。这里有一个实现函数的例子:bool isNoble(int atomicNumber) { return _nobleGases[at...

2019-12-09 11:25:24 129

翻译 关于Dart2那些事儿-内建类型

生活的道路一旦选定,就要勇敢地走到底,决不回头。——左拉Dart语言对以下类型有特殊的支持:numbersstringsbooleanslists (also known as arrays)mapsrunes (for expressing Unicode characters in a string)symbols您可以使用字面量初始化任何这些特殊类型的对象。例如,...

2019-12-09 11:18:53 145

翻译 关于Dart2那些事儿-关键字

这里列出了Dart中的所有关键词abstract (1)doimport (1)superas (1)dynamic (1)inswitchassertelseinterface (1)sync* (2)async (2)enumisthisasync* (2)export (1)library (1)throwawait (2)external (1...

2019-12-09 11:17:45 129

翻译 关于Dart2那些事儿-变量

变量这里有一个创建变量并初始化它的例子:var name = ‘Bob’;变量存储引用。名为name的变量包含对字符串对象的引用,值为“Bob”。Name变量的类型被推断为String,但是您可以通过指定它来更改该类型。如果对象不限于单一类型,请按照[设计指导]原则指定对象 (Object)或动态(dynamic)类型。dynamic name = ‘Bob’;另一种方法是显式声明要...

2019-12-09 11:07:29 109

翻译 关于Dart2那些事儿-重点

在学习Dart语言时,请记住以下事实和概念:在变量中可以放置的所有东西都是对象,而每个对象都是类的实例。无论数字、函数和null都是对象。所有对象都继承自[Object]类。尽管Dart是强类型的,但类型声明是可选的,因为Dart可以推断类型。 在上面的代码中,数字被推断为int类型。 如果要明确说明不需要任何类型,请使用[特殊类型dynamic]。Dart支持通用类型,如Li...

2019-12-09 11:06:17 154

翻译 关于Dart2那些事儿-牛刀小试

[译注:对于代码注释只做部分翻译,同时本文档的英文原版地址是 大家可以相互参考] https://www.dartlang.org/guides/language/language-tour本文档目标本文档从变量、操作符、到类和库来展示如何使用Dart的每一个主要特性。在你看这个文档之前假设你已经知>道如何使用其他编程语言来编程。如果要学习更多关于Dart的和核心库,请查看另外一篇...

2019-12-09 11:03:05 116

原创 Dart2学习笔记三章

不经巨大的困难,不会有伟大的事业。——伏尔泰在dart世界里一切都是对象,不论基本类型还是对象都是object的子类。比如:int类型的初始默认值是null而不是类似java的那种是0;在dart的世界有一个关键字类似于iOS的oc中的id一样可以指代一切的类型,它就是dynamic.Dynamic这个关键字可以指代一切类型,所以,在使用的时候一定要谨慎小心。dart虽然是...

2019-12-09 11:00:11 155

原创 Dart2学习笔记二章

你可能不认为程序员也是艺术家,但其实编程是一个非常有创造性的职业。这是基于逻辑的创造力。——约翰罗梅罗继承与实现在dart中继承也是单继承的,类似于java;但是,在dart中并没有interface的概念在,所有,接口对于dart来说是没有的,但是dart默认所有的类都会隐式的存在一个接口,并且,这个接口也是支持多实现的。另外,dart还支持mixin的概念,这个概念是介于继承和实现之...

2019-12-09 10:58:26 128

原创 Dart2学习笔记初篇

Dart作为一门Google的开发语言很受开发者的喜爱,作为一名新手以及java开发爱好者,我将用简书记录自己学习过程中的问题和记录点,类比Java语言以更好的理解这门新的语言,笔记用以个人记录,如语言有不够准确得当之处希望大家不喜勿喷,毕竟这是我用来记录和回忆的“草稿”。类和变量的权限dart开发语言,没有public和protected之类的权限关键字。在dart的世界里一切都是pu...

2019-12-09 10:56:56 148

原创 Maven Installation OSX Error Unsupported major.minor version 51.0

The problem is because you haven't set JAVA_HOME in Mac properly. In order to do that, you should do set it like this:export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/

2015-08-31 16:01:14 541

原创 Android实现长时间不用屏幕变暗

直接上代码,代码如下:import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.view.MotionEvent; import android.view.WindowManager;

2015-06-04 18:16:54 5103

原创 Android中TextView自动换行问题

今天忽然发现android项目中的文字排版参差不齐的情况非常严重,不得不想办法解决一下。经过研究之后,终于找到了textview自动换行导致混乱的原因了----半角字符与全角字符混乱所致!一般情况下,我们输入的数字、字母以及英文标点都是半角,所以占位无法确定。它们与汉字的占位大大的不同,由于这个原因,导致很多文字的排版都是参差不齐的。对此我找到了两种办法可以解决这个问题: 1. 将text

2015-03-13 17:13:26 3273

原创 java通过反射机制加载类方法和实例方法

假设某一个类的类名是A.现在我想要通过反射机制找到其中的某一个方法functionB()并调用这个方法。Method  functionB = A.class.getMethod("functionB",Class...paramType);functionB.invoke(A.class,Object...args);这里的面的参数介绍:paramType是方法functionB的参

2014-12-12 11:19:26 656 1

原创 JAVA里使用双括号来初始化静态常量

这貌似是个不为人知的语言技巧。我看到一般人写Java里初始化静态常量都是public static final Map DATA = new TreeMap();static{DATA.put("a", "A");//blah blah blah}使用所在类的static块来初始化DATA,其实还有另外一种写法:public static final Map DAT

2014-12-10 11:26:06 615

原创 Android添加桌面快捷方式和删除桌面快捷方式

/** * 添加快捷方式 * */ public void creatShortCut(String shortcutName, int resourceId) { Intent intent = new Intent(); intent.setClass(this, LaunchActivity.class); // intent.setClass(this, Launch

2014-12-05 11:51:05 564

原创 ListView动态的设定高度

Android的listview需要动态的设定ListView的高度满足不同应用的需求。下面就是封装好的动态设定listview的高度的方法代码块。/** * * TODO set listviews height * * @param listView * @param listAdapter */ public void setListViewHeightBa

2014-12-04 14:45:04 2485

原创 Android开发中的sqlite_master

回家再写。。。。。。

2014-12-04 12:00:49 1794 1

原创 linux平台下进行thrift和protobuf的IDL文件的编译缺少类库的解决办法

在linux下进行protobuf和thrit编译idl文件时,终端会提示缺少依赖包,解决办法是通过build-essential终端命令安装linux的必要的包。

2013-09-11 13:40:02 1270

原创 解决Android SDK Manager,ADT无法在线更新的问题

http://www.zhaoweihua.name/sdkmanager-fetching-refused-39.htmlAndroid SDK Manager无法更新的解决2012.04.7 4 Comments最近玩ubuntu系统,以前windows下下载的SDK文件不能用了,只能重新下载,安装完Eclipse和ADT插件,却发现无法更新SDK,显示

2013-09-10 13:15:35 3439

原创 Android结合PHP开发前后端

呵呵,好久没写过博文了,我不知道Android和php相结合开发前后端有多少人感兴趣,也不知道这篇文章写了是不是白写了,以后不能这么随意的出文章了,要出就出精品。如果这个博文大家觉得有意义,就请评论里支持下,如果评论数够了,我再考虑是否写这篇文章。以后我出文章不会随意出,一出必然是精品。大家谅解我这种做法,因为很多人就是会抄袭,拿了别人的也不说好,所以,这次我要看支持率,评价的数量,如果数量够了,我会继续坚持写下去。。

2013-07-22 18:03:38 2331 4

转载 在android中使用proguard混淆代码出现“Conversion to Dalvik format failed with error 1”错误的解决方法

在Android2.3版本以后的开发环境中,google提供了proguard代码混淆的功能(之前可以自己添加),用来保护我们辛辛苦苦写的一点代码。对于新建的工程,根目录上会自动添加proguard.cfg文件,用于代码混淆,无论你建的target是android的那个版本,都会自动的添加上。在想使用代码混淆的时候,在default.properties文件中添加proguard.co

2013-01-09 20:18:13 553

原创 android开发之——混淆编译

众所周知,android的apk文件是非常容易被反编译的,这样对于开发者来说,辛辛苦苦开发应用被破解是一件很令人懊恼的事情,谷歌也认识到了这一点,所以从2.3之后就为开发者提供了一个代码混淆工具proguard,新版的adt创建的工程默认都会有多两个代码混淆文件。proguard.cfg就是传说中的混淆脚本了,具体内容如下:-optimizationpasses 5

2013-01-09 18:28:18 600

原创 Handler的理解

使用Handler的大致流程:1、首先创建一个Handler对象,可以直接使用Handler无参构造函数创建Handler对象,也可以继承Handler类,重写handleMessage方法来创建Handler对象。2、在监听器中,调用Handler的post方法,将要执行的线程对象添加到线程队列当中。此时将会把该线程对象添加到handler对象的线程队列中。3、将要执行的

2012-11-01 10:57:34 564

原创 Android创建逐帧动画的方式

<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="true" > <item android:drawable="@drawable/c1" android:duration="200"/>

2012-10-15 15:12:01 664

原创 Intent 各种跳转

现在开发中的功能需要直接跳转到拨号、联系人、短信界面等等,查找了很多资料,自己整理了一下。首先,我们先看拨号界面,代码如下:[java] view plaincopyprint?Intent intent =new Intent();              intent.setAction("android.intent.action.CALL_BUTT

2012-09-04 17:59:31 17482 3

原创 关于Android软件盘的显示与隐藏的问题

做了一个关于Android软件盘的显示和掩藏的例子,发现有些时候Android的软件盘并不是会乖乖的听从我的命令,我让它出它就不出,我让它隐藏它还不隐藏,我试过InputMethodManager的方法,showInputMethos();也试过了toggerInputMethodFromWindow()方法,可是都是失败了,隐藏也是一样,用过后者,也用过了hideinputmethodFromW

2012-08-28 17:34:29 1798

抓包获取.md抓包获取.md抓包获取.md抓包获取.md抓包获取.md

抓包青花瓷

2021-08-04

android ocr解决方案

不错的代码事例,对开发OCR识别很有帮助的

2013-12-01

SIM卡通讯管理器

一款利用sim卡打电话发短信的工具,并且可以用sim卡进行归属地查询。

2013-01-11

android手机做监视器

很不错的代码,值得看的代码,android手机做监视器

2012-09-12

android反编译工具

这是一个很好用的反编译工具哦,不信你就用用试试看哦呵呵

2012-09-12

Android疯狂讲义

一本不错的介绍Android开发的书籍,针对实践应用,而不是说空理论。

2012-07-26

android开发工具ADT14.0

android ADT14.0开发工具,用于eclipse开发环境的搭建。

2012-01-10

3d标签云源代码

3d标签云代码,希望对大家学习标签云有所帮助!

2011-12-01

java base64.jar包

java base64.jar包用于des的加密与解密操作。

2011-11-24

Android解析如何获取SDCard 内存项目源代码

这是一个关于前面一片博客的源码包这里提供给大家供大家分享,希望对大家有所帮助。

2011-11-17

ehcache开发框架源码包

用于java缓存技术的框架源码包,希望对大家有用。

2011-11-11

ubuntu下android开发之让真机作为模拟器使用的方法

用于android手机应用开发时候,调试程序用真机代替模拟器,而ubuntu系统有点纠结了,不能实现直接在手机运行程序。

2011-11-11

ANDROID ADT

用于android的环境的搭建的ADT工具包

2011-11-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除