自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

原创 使用IDEA生成jar包,使用exe4j inno setup 生成可执行文件

这天琢磨了一下微信跳一跳的游戏,发现自己也玩不了很高的分,于是想到了做一个辅助工具,这个是成品:https://github.com/milk1990/JumpJumpHelper,以上这个只是个人娱乐,现在进入正题。Idea 中写好了一个 swing 窗体系统,怎么样可以让别人可以正常使用呢,就是生成exe文件。网上同类的文章有很多,主要讲述我在这个里面遇到的一些坑,帮助你快速脱坑。一:

2018-02-02 14:49:14 1085 1

原创 Execution failed for task ':app:mergeDebugResources'

ReactNative android配置中报错Execution failed for task ':app:mergeDebugResources'.> Error: Cannot create directory E:\project\code\app\DriverApp\android\app\build\intermediates\res\merged\debug\values

2017-08-24 10:22:15 2086 2

原创 ReactNative +jenkins +svn 集成打包

第一:构建一个自有风格的项目:

2017-08-18 10:01:08 1003 2

原创 ReactNative 开发工具Webstorm 环境配置

一:设置编码语法环境,在WebStorm中打开File–>Setting–>Languages & Frameworks–>JavaScript二:下载两个JavaScript Libraries:打开File–>Setting–>Languages & Frameworks–>JavaScript–>Libraries,点击右边的Download按钮,选择TypeScript

2017-08-16 09:41:51 581

原创 React Native 打离线包注意事项

react-native bundleOptions(可选参数说明):--entry-file :JS根目录文件(Path to the root JS file, either absolute or relative to JS root [required])--platform :选择平台--(ios or android)--transformer :编译器默

2017-08-16 09:36:08 465

原创 Android 设置全局字体大小

网上很多另类做法也可以实现字体大小动态变化,不过都是代码侵入式写法,特别的恶心,这都是不会正确的做法,一、我现在讲的是另外一种实现方式,代码无侵入,实现方式如下:1.在你的BaseActivity 中添加 @Override public Resources getResources() { Resources resources = super.getRes

2017-06-06 17:36:47 3157

原创 移动端 AOP 解决方案

在讲解AOP时,我们先来看一下,为什么要引入AOP,有什么作用,可以干什么。问题:在没有AOP之前,各个模块要打印日志,就是自己处理。反正日志模块的那几个API都已经写好了,你在其他模块的任何地方,任何时候都可以调用。功能是得到了满足,但是好像没有Oriented的感觉了。是的,随意加日志输出功能,使得其他模块的代码和日志模块耦合非常紧密。而且,将来要是日志模块修改了API,则使用它们

2017-03-28 16:53:18 446

原创 android EditText setInputType,setRawInputType 的使用详解

今天 我来分享一下这两个方法的使用:setInputType 简单来说 就是设置EditText的输入法和输入内容限制: /** * Set the type of the content with a constant as defined for {@link EditorInfo#inputType}. This * will take care of chan

2016-10-09 11:38:12 5013 1

转载 java volatile 关键字的含义和作用

转载 http://www.cnblogs.com/dolphin0520/p/3920373.html 写的不错这里我们主要来区别几个关键字:Volatile,const, synchronized1.const 声明常量定义的时候使用,是保证这个值不被修改的修饰符。2.synchronized 这个关键适用于多进程中,保证线程安全的,确保操作的原子性。3.Volatile 这个

2016-09-27 11:00:36 466

原创 Service Intent must be explicit 原因和解决方法

在android 5.0系统以上,我们知道启动service时需要显示声明 Intent intent = new Intent(this, CoreService.class); startService(intent); Intent intent = new Intent(this, CoreService.class); st

2016-09-23 14:57:40 721

原创 android 进程通信--aidl

最近学习了一下 AIDL 进程通信,下面是遇到的一些问题简单罗列一下,好记性不如烂笔头:

2016-09-23 14:27:15 278

转载 android service中弹出dialog对话框

我们都知道在Activity中弹出Dialog很正常,因为Dialog是基于Window弹出。但是我们经常会遇到这样的需求,需要在service 中弹出一个Dialog对话框,做法有两种第一种,使用Activity,theme设置成 Dialog 并添加:intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 即可实现效果。第二种,仍然使用

2016-09-09 16:27:26 3101

原创 java HashMap 实现原理

HashMap 我们不陌生,他是允许存放NULL 对象的,他的结构其实就是一个数组,不过稍微复杂一点:把这个图画出来,起始就很好理解了,首先我们来看一下他的构造方法: /** * Constructs a new empty {@code HashMap} instance. */ @SuppressWarnings("unchecked")

2016-09-05 18:52:03 318

原创 java List 线程安全

我们常用的ArrayList,LinkedList都不是线程安全的的List,为什么这么说: /** * A counter for changes to the list. */ protected transient int modCount;这是他们的父类 AbstractList 中的属性,含义就是用来标记当前修改次数,用于在遍历数据时保证数据的一致性

2016-09-02 10:18:45 7759

原创 Java LinkedList 实现原理

LinkedList 大家都不陌生,来看看他的实现原理,首先声明,他是一个双链条,即previous,next  /** * Constructs a new empty instance of {@code LinkedList}. */ public LinkedList() { voidLink = new Link(null, null,

2016-08-31 16:19:09 1303

原创 java ArrayList 的实现原理

1.ArrayList这是我们经常使用到的类,但是对于他是怎么实现的?我们来看一下: /** * Constructs a new instance of {@code ArrayList} with the specified * initial capacity. * * @param capacity * th

2016-08-31 15:55:15 256

原创 java transient关键字作用,使用场景。

transient的作用及使用方法,官方解释为:Variables may be marked transient to indicate that they are not part of the persistent state of an object.我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者

2016-08-31 15:31:10 8087

翻译 android Handler机制的学习

我们经常这样创建handler,和使用Handler,Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); }};handler.sendEmptyMessage(0);但是有的时候

2016-08-25 14:52:33 247

原创 android 热补丁功能实现初探-资源引用<二>

在研究dexposed时候,怎么使用另外一个apk的资源。我们知道,activity的工作主要是由ContextImpl来完成的, 它在activity中是一个叫做mBase的成员变量。注意到Context中有如下两个抽象方法,看起来是和资源有关的,实际上context就是通过它们来获取资源的,这两个抽象方法的真正实现在ContextImpl中。也即是说,只要我们自己实现这两个方法,就可以解决

2016-08-24 17:19:28 339

原创 android 热补丁功能实现初探<一>

最近一直在搞android 热补丁,有一些心得体会,抱着好记性不如烂笔头,把自己的体会写下来。首先来看一下技术选型,现有可以达到热补丁效果的技术方案有一些,dynamic-load-apk,hotfix,dexposed,H5,dex 包动态加载。1.对于dynamic-load-apk 这是一个非常强大的开源框架:https://github.com/singwhatiwanna/dyn

2016-08-24 17:03:31 404

原创 android LayoutInflater加载的布局大小不受控制

在使用LayoutInflater 加载布局时,经常会碰到这样的情况,明明在布局里设置了布局的大小,为什么就是不起作用,但是同样的布局 在setContentView() 中就可以起作用呢!在查看底层LayoutInflater 中的inflate 方法中终于找到了答案!首先 我们来看 inflate(intresource, ViewGroup root, booleanattach

2016-08-16 17:09:41 3083 1

原创 android EditText 如何使ellipse 起作用

如何实现EditText 的 ellipse 起作用,看过很多的文章,也看过别人的实现。但是都不如意,以下是我的几种实现方式的探索:实现之前请先设置相关参数,例如:setEllipsize(TextUtils.TruncateAt.END);setSingleLine();setLines(1);首先最简单的设置,在xml 中设置editorable = false,enable = fa

2016-06-16 15:14:15 948

原创 android listview,GridView 和 ScrollView

前段时间 遇到 listview 和scrollview 布局的问题 ,现在提供一个解决方案 if (listAdapter == null || listAdapter.getCount() == 0) { return; } int totalHeight = 0;

2015-04-16 11:16:14 718

原创 android ;检查网络是否可以连接

private boolean isConnected(){ ConnectivityManager mConnectivity = (ConnectivityManager) this.getSystemService(CONNECTIVITY_SERVICE); TelephonyManager mTelephony = (TelephonyMana

2013-09-22 10:42:24 553

原创 android 添加网络权限后还是不能访问网络

在4.2以上的系统再添加访问权限之后,发现仍然不能访问网络。需要添加以下代码:StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() .penaltyLog() .build());

2013-09-18 14:27:58 2347 3

转载 android 调用webservice 接口

package com.example.test;import java.io.IOException;import org.ksoap2.SoapEnvelope;import org.ksoap2.SoapFault;import org.ksoap2.serialization.SoapObject;import org.ksoap2.serialization.SoapSer

2013-09-17 22:55:46 608

原创 android 中文转成拼音

import net.sourceforge.pinyin4j.PinyinHelper;import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;p

2013-09-09 17:12:14 497

原创 android 给相片添加相应的时间

ExifInterface exif = new ExifInterface(filepath);//filepath  照片路径exif.setAttribute(ExifInterface.TAG_DATETIME, date);

2013-09-09 14:40:08 1052

原创 android 获取当前时间

/** 获取当前时间public static String getCurrentTime(){Time time = new Time("GMT+8");time.setToNow(); //获取系统时间return time.year + "年" + (time.month + 1 ) + "月" + time.monthDay +"日";}/** 获取当前星期*/publ

2013-09-09 14:37:36 1464

原创 android 文件搜索

第一:新建一个classimport java.io.File; import java.io.FilenameFilter;public class MusicFilter implements FilenameFilter{ @Override public boolean accept(File dir, String filename) { // TODO Auto-

2013-09-09 14:34:56 754

原创 android 获取手机的唯一标识符

/* 获取设备唯一标识码 mac */ public static String getDeviceId(Context context) { StringBuilder deviceId = new StringBuilder(); // 渠道标志 deviceId.append("a"); try { //wifi mac地址 WifiMa

2013-09-09 14:34:12 1711

原创 android 下载好了自动安装apk文件

private void install_soft() { private static String str_soft_path = "/sdcard/msoft"; File file = new File(str_soft_path + "/fuck.apk");

2013-09-09 14:32:27 1052

转载 android socket 即时通信

public class TestClient { static DataInputStream dis =null; static DataOutputStream dos= null; /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method st

2013-09-09 14:26:27 620

原创 android 解决ViewPager与Gallery事件冲突

public class UserGallery extends Gallery implements OnGestureListener {        ViewPager mPager;                 public ViewPager getmPager() {                return mPager;        }         pu

2013-09-09 14:23:04 1317

原创 android 代码混淆

第一步: 在 proguard-project.txt 文件或者 proguard.cfg 输入相应的规则-optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontpreverify -verbose -optimizations !code/si

2013-09-09 14:19:31 678

原创 android pull 解析

public class PullParseService {      public static List getBooks(InputStream inputStream) throws Exception{          List books = null;          Book book = null;          XmlPullParser parser

2013-09-09 14:14:53 498

原创 android 调用其他应用的归类

Android Intent调用Java代码://调用浏览器Uriuri=Uri.parse("");Intentit=newIntent(Intent.ACTION_VIEW,uri);startActivity(it);//显示某个坐标在地图上Uriuri=Uri.parse("geo:38.899533,-77.03

2013-09-09 14:10:25 624

原创 android 杀死进程的方法总结

第一种:  只能杀死当天进程 int mid=android.os.Process.myPid();android.os.Process.killProcess(mid);第二种:可以杀死任意ActivityManager om=(ActivityManager)getSystemService(ACTIVITY_SERVICE);

2013-09-09 14:06:44 959

自定义SlipButton和高仿iphone 滑动按钮

以两种方式实现 slipbutton 高仿Iphone 的滑动方式

2013-11-15

android 二维码扫描开发

实用zxing jar包 并且自定义了相关类,可以实现修改相关属性

2013-09-18

Fragment+ViewPager解决viewPager与Gallery的事件冲突

使用Fragment +ViewPager 框架 并且解决ViewPager与Gallery 的事件冲突

2013-09-10

android 字母索引ListView

自定义控件实现ipone的字母索引的查询的ListView 的效果。

2013-09-09

ViewPager与Fragment混用

使用ViewPager控件并且使用Fragment

2013-08-21

android Emotion

实现了 表情的发送和解读 以及@功能的解读 链接的解读

2013-07-19

android使用自定义layout实现从下往上的slide效果

自定义layout 并拦截内部触发事件 实现sliding的效果

2013-06-06

android连接java web服务器的小程序

手机客户端 通过网络链接 Java web 的服务器 服务器采用的是 struts 2

2013-06-04

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

TA关注的人

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