- 博客(50)
- 收藏
- 关注
原创 Unsupported class file major version xx
Java SE 和 Major Version 对应关系如下:Java SE Major Version Hex 18 62 0x3E 17 61 0x3D 16 60 0x3C 15 59 0x3B 14 58 0x3A 13 57 0x39 12 56 0x38 11 55 0x37 10 54 0x36 9 53 0x35
2023-12-05 16:38:57
419
原创 android 签名文件生成
validity:指定秘钥过期时间,从当前时间后推xxx天。-importkeystore:导入keystore 文件。-destkeystore:指定生成的文件名称。-destkeystore:指定生成的文件类型。-srckeystore:指定导入的文件。-keystore:指定生成的文件名字。-genkey: 生成一个新的秘钥对。-keysize:指定秘钥长度。-keyalg:指定算法名字。-alias:签名文件别名。
2023-12-05 13:58:46
172
原创 新的判断网络是否有效的方法
Network activeNetwork = connectivityManager.getActiveNetwork();if(activeNetwork == null){ System.out.println("activeNetwork == null"); return false;}NetworkCapabilities networkCapabilities...
2020-03-10 16:54:39
719
转载 优化gradle编译配置
避免编译不必要的资源避免编译和打包不测试的资源(例如,其他语言本地化和屏幕密度资源)。为此,您可以仅为“dev”性质的版本指定一个语言资源和屏幕密度,如下面的示例中所示: android { ... productFlavors { dev { ... // The following configur...
2020-01-20 17:11:56
507
转载 gradle编译性能剖析
对于较大的项目或者实现大量自定义编译逻辑的项目,您可能需要深入了解编译流程才能找到瓶颈。为此,您可以分析 Gradle 执行编译生命周期的每个阶段和每个编译任务所需的时间。例如,如果编译分析报告显示 Gradle 在配置项目时花费了过多的时间,则表明您需要将自定义编译逻辑移出配置阶段。此外,如果mergeDevDebugResources任务占用了大量编译时间,则表明您还需要将图片转换为 We...
2020-01-20 17:05:19
360
转载 python 路线
python语言基础(1)Python3入门,数据类型,字符串(2)判断/循环语句,函数,命名空间,作用域(3)类与对象,继承,多态(4)tkinter界面编程(5)文件与异常,数据处理简介(6)Pygame实战飞机大战,2048python语言高级(1)Python常见第三方库与网络编程(2)Python正则表达式(3)邮箱爬虫,文件遍历,金融数据爬虫,多线程爬虫(4)P...
2019-11-06 19:58:45
132
原创 获取android手机语言和国家对应简码
/** * 打印所有语言和国家的对应 **/public static void showAvailableLocales() { StringBuffer sb = new StringBuffer(); Locale[] locales = Locale.getAvailableLocales(); int i = 0; for (Locale loca...
2019-07-10 19:08:23
775
原创 android NDK 开发(3)
1.native层调用java层static方法//java层定义方法public native static void request();//native层执行完request后回调此方法public static void nativeCallBack() { System.out.println("nativeCallBack");//native层实现JNI...
2018-10-08 07:35:36
172
原创 android NDK 开发(2)
java向native层传递参数1.传递基本类型参数,可以直接使用//Java层定义接口public native static int sum(int a, int b);//.c文件native层实现JNIEXPORT jint JNICALL Java_com_hd_jni_JNITest_sum (JNIEnv *env, jclass jclass1, j...
2018-10-07 08:48:02
227
原创 android NDK 开发(1)
申明:本人实测通过。顺便鄙视下网上很多人都没测试过乱发。文件目录结构为:app/src/main/java/com/hd/jni1.定义java文件接口package com.hd.jni;public class JNITest { public native static String getStringFromJNI();}2.进入com/hd/jni文件夹...
2018-10-05 23:26:26
199
原创 Android本地代码直接访问远程数据库(Rxjava方式)
1.引入jar驱动文件,驱动文件:mysql-connector-java-5.0.8-bin.jar,可以自己到网上下载2.把代码中数据库地址和登录用户名密码替换就可以直接访问java文件:package com.hd.jdbc;import android.content.DialogInterface;import android.support.v7.app.AppCo...
2018-10-05 21:04:52
883
原创 window7 tomcat8 配置python27的cgi
1、在ROOT下的WEB-INF文件夹下新建文件夹cgi-bin2、在cgi-bin文件夹下新建脚本文件cgitest.cgi如:print "Content-type:text/html"print # 空行,告诉服务器结束头部print ''print ''print ''print ''print ''print ''print 'Hello Word!'print ''print
2017-08-31 15:40:31
366
转载 mysql插入用户账号问题
如下文章转自:http://blog.csdn.net/mydriverc2/article/details/43022129创建snort数据库,创建snort用户,将snort库所有表的所有权限赋予用户snort。MySQL> create database snort;Query OK, 1 row affected (0.06 sec)创建数据库
2017-01-12 14:42:08
367
原创 android ListView adapter notifyDataSetChanged刷新先决条件
先决条件就是listview在刷新时不能被缓冲圈遮盖。最近做项目遇到一个问题,ListView有时候能刷新,有时候不行baidu的答案千篇一律,都是adapter中设置的data引用在外部变掉了(具体可以百度一下),这么简单的问题,对于一个java开发人员来说怎么可能看不出来。我遇到的情况是偶尔能刷新偶尔不能刷新:各种折腾调试,最后发现,原来是在listview刷新的时候,有一个网络
2017-01-06 10:31:14
388
原创 CyclicBarrier计数器的使用
CyclicBarrier计数器当给定的所有线程都处于等待状态时开始运行。比如有这样一个例子:5个人参加赛跑,在开跑前要确定所有人都处于准备状态,5个人用5个线程代表,在赛跑前有个准备 3 2 1的口号代码如下:import java.util.Random;import java.util.concurrent.BrokenBarrierException;impor
2016-12-27 15:27:19
387
原创 域名可用查询地址
http://panda.www.net.cn/cgi-bin/check.cgi?area_domain=huyusong.com
2016-12-24 16:55:59
435
原创 java中证明++操作是非原子的
class SerialNumberGenerator{private static volatile int i=0;//不是同步的,多个线程操作可能会冲突public static int nextSerialNumber(){return i++;}}class CircularSet{private int[] array;private int len;private int index
2016-12-23 09:49:07
293
原创 一个有趣的java问题
abstract public class A { public A(){ draw(); } abstract void draw();}public class B extends A{ public int radius=1; public B(int r){ this.radius=r; } @Override void draw() { System.
2016-12-07 11:01:22
385
转载 adb shell命令大全
1. 显示系统中全部Android平台: android list targets2. 显示系统中全部AVD(模拟器): android list avd3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号4. 启动模拟器: emulator -avd 名称
2016-09-26 15:45:01
743
转载 如何提高android代码质量
转载地址http://www.open-open.com/lib/view/open1468976453450.html
2016-07-20 14:58:15
514
转载 retrofit2.0 翻译
转载地址:http://blog.csdn.net/u014165119/article/details/49280779
2016-07-07 15:24:47
229
原创 git 本地存在的工程上传到指定仓库
1.新的代码cd existing-projectgit initgit add --allgit commit -m "Initial Commit"git remote add origin ssh://git@stash1.wtvdev.com:7999/tvclien/wasup2p.gitgit push origin master2.被git跟踪过的代码,重置远程仓库ur
2016-07-04 12:29:20
361
原创 retrofit请求直接返回string
1.添加gradle依赖:compile 'com.squareup.retrofit2:converter-scalars:2.0.0'2.更换转换器mRetrofit = new Retrofit.Builder() .baseUrl(HttpAddress.SITE) .addConverterFactory(Sca
2016-07-04 10:57:59
8117
原创 单个应用流量统计实现和核对
1.通过包名获得应用的Uid:try { PackageManager pm = getPackageManager(); ApplicationInfo ai = pm.getApplicationInfo("cn.com.wasu.main", PackageManager.GET_ACTIVITIES); WL
2015-10-10 15:56:15
606
转载 android logcat 关于内存回收的字段解释
内存调试 D/dalvikvm( 809 ): GC_CONCURRENT freed如果在Linux下运行adb logcat命令,可以看到如下的输出: GC_EXTERNAL_ALLOC freed 297K, 49% free 3411K/6663K, external 24870K/26260K, paused 83ms其中D/dalvikvm表示由dalv
2014-06-25 10:23:21
769
原创 android APK反编译
1.获得src中的java源代码:(说明:做了代码混淆的除外。) 需要用到的工具:dex2jar和JD-GUI,工具的下载,自己去搜网上有很多 (1)把需要反编译的APK用winRAR解压缩到一个文件夹, 或者修改APK后缀改成zip后缀后直接解压,解压完成后获得classes.dex文件。 用我们dex2jar下面的dex2jar.bat 转换成jar
2014-03-10 15:56:55
531
转载 android 权限大全
位置相关:android.permission.WRITE_GSERVICES允许程序修改Google服务地图(Allows an application to modify the Google service map. ) android.permission.ACCESS_COARSE_LOCATION允许一个程序访问CellID或WiFi热点来获取粗
2014-02-17 09:30:00
559
原创 如何解决4.0以后android UI线程执行网络耗时操作会报错
耗时在操作最好能放在一个新的线程中执行,如果非要在UI线程中执行,可以在oncreate方法中执行如下代码:StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build());S
2014-02-17 09:21:44
980
原创 android 动态加载控件
android提供动态加载控件,而不需要么次都到XML中声明控件,具体方法如下:LayoutInflater viInflater=(LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE); ViewGroup view=(ViewGroup)viInflater.inflate(R.layout.testreceiver, nul
2014-02-17 09:07:35
584
原创 XML数据解析之DOM解析
private void domParserXml(InputStream xmlInputStream) { Log.i(TAG, "begin domParserXml"); try { DocumentBuilderFactory xmlBuilderFactory=DocumentBuilderFactory.newInstance(); Docume
2014-02-15 21:13:30
463
原创 android实现数据库和UI同步更新
实现类似电话本显示的功能,情景如下:一部新手机电话本为空,打开电话本,空显示,此时用91助手从PC导入电话号码,此时电话本的UI同步显示出来。实现如上方法,要用到2个方面的知识,cursorAdapter和Observerpackage listview;import android.content.Context;import android.database.ContentO
2014-02-15 21:07:21
4479
原创 android contentProvider
如果自己的数据对外提供接口,可以让别人修改自己的数据库,就用到contentProvider怎么样定义自己需要的数据库,具体可以参考如下代码:package com.stmars.sqlite;import org.apache.http.client.utils.URIUtils;import android.content.ContentProvider;import and
2014-02-15 20:42:34
449
原创 android 对数据库的操作
android使用的数据库为SQLite,在android中如何建立数据库来保存程序中的数据,具体代码如下:package com.stmars.sqlite;import android.content.Context;import android.database.DatabaseErrorHandler;import android.database.sqlite.SQLit
2014-02-15 20:21:50
498
原创 android handler
android提供了handler来处理UI更新的问题handler有2种处理方式1.跟主线程在同以线程,可以实现UI更新,但是操作不当也会有ANR问题2.跟主线程不在同一个线程,新起一个线程。在新的线程中耗时的操作不会有ANR问题具体代码如下:package com.stmars.handler;import com.studymar.radiocheckbox.R;i
2014-02-11 15:19:31
444
原创 android list
list展现数据有多种方式,但是共同点是都需要有adapter填充,基本模式如下:(1)在布局文件中加入:ListView控件(2)获得ListView控件 (3)准备数据(4)数据填充到adapter(5)将adapter捆绑到ListView上根据数据的获得方式和复杂度选择不同的list adapter填充方式。1.简单的adapter填充,只需要根据adatper
2014-02-11 09:49:48
775
原创 android radiobutton和checkbox的使用
package com.studymar.radiocheckbox;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.widget.CheckBox;import android.widget.CompoundButton;import androi
2014-02-10 16:14:20
644
原创 android launcher
AndroidManifest.xml配置 以上配置,保证android开机时候启动我们的应用。要想获得已经安装的应用:Intent mainIntent=new Int
2014-01-23 17:37:25
455
转载 static_cast、dynamic_cast reinterpret_cast和const_cast的区别和使用
关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。下面对它们一一进行介绍。stat
2013-02-27 11:27:21
211
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人