自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (3)
  • 收藏
  • 关注

原创 安卓性能优化相关的知识点(持续更新)

1.安卓系统会为每个app分配一定的内存让用户的app去运行,一开始的时候是8M,随着手机性能越来越好,现在有16M,32M,64M2.与C++ 和C不同,java有自己的垃圾回收机制,所以我们要保证自己的代码要符合垃圾回收的规则,这样才能减少内存泄漏3.内存不在掌控之内,也就是当一个对象已经不再使用,本该回收时,有另外一个正在使用的对象持有他的引用,从而导致第一个对象不能被回收停留在堆内...

2019-01-19 14:30:38 234

原创 跳转安卓日历app

    fun gotoCalendarApp(cnt: Context){        try {            if (cnt is AutoRecordActivity) {                cnt.closeSmartLifeDialog()            }            val intent = Intent(Intent.ACTION...

2019-01-09 20:10:38 1533

原创 常见的命令行

 常用的aapt命令aapt dump dadging test.apk                 查看apk的packageName、versionCode、applicationLabel、launcherActivity、permission等信息aapt dump dadging permissions                 仅仅查看apk的权限信息aapt du...

2018-12-25 13:53:48 271

原创 DatePickerDialog更改样式

1、在values/style.xml新增:<style name="MyDatePickerDialogTheme" parent="@android:style/Theme.Holo.Light.Dialog"> <item name="android:windowIsTranslucent">true</item> <item name=&

2018-08-24 14:55:54 2528

原创 设置recyclerview最大高度(kotlin)

/**     * 设置recyclerview最大高度     */    fun setMaxHeight(recyclerView: RecyclerView) {        recyclerView.viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListen...

2018-08-16 10:21:28 2221

原创 安卓中的多次点击

1.2次点击2。多次点击google的实现方法(使用一个list,每次点击后将点击事件加入到list中,如果想要N次点击事件,可以取出list中最后一项和倒数第N项的时间最差(如果都存在而且都不为0),如果小于规定的连续点击的时间,则进行相关操作)...

2018-05-28 19:29:30 317

原创 Jenkins持续集成

下载并安装jenkins全局工程配置->配置SDK(默认路径C:\Program Files\Java\jdk1.8.0_101)->配置git(默认路径C:\Program Files\Git\bin\git.exe)->配置gradle系统管理->系统设置->全局属性版块勾选上Environment variables选项添加SDK路径创建项目->构建一个自...

2018-05-04 18:15:02 166 1

原创 安卓studio创建新项目找不到v7:27.+包

新建项目后找不到v7:27.+包,解决方法一:每次都手动改成v7:26.+。笔者最近发现了原来是项目的build.gradle文件的问题,添加maven { url "https://maven.google.com" }到项目的allprojects节点下,如下,然后同步一下即可解决此问题。allprojects {    repositories {        jcenter()     ...

2018-04-02 10:47:18 2268

原创 安卓调试技巧

我们调试的点在应用一打开的时候,很靠前,例如Application的onCreate方法中,以至于我们不能足够快的设置进程为debug模式虽然上面的情况可以通过Android Studio的debug运行来解决,但是如果项目很大的话,运行起来也会比较耽误时间解决办法:adb shell am set-debug-app -w --persistent com.example.jishuxiaoh...

2018-03-22 16:47:06 158

原创 将view作为图片保存到本地

/**     * 将view作为图片保存到本地     * @param imageView     */    private void saveImage(View imageView){        imageView.setDrawingCacheEnabled(true);//开启catch,开启之后才能获取ImageView中的bitmap        Bitmap bitmap...

2018-03-06 18:25:39 371

原创 Serializable和Parcelable的联系

Serializable和Parcelable的联系共同点是都是实现序列化的东西区别:Serializable是Java的东西,他的实现方式是通过反射的方式,将实体类拆成基本数据类型,写到硬盘上,需要的时候再从硬盘上读取,这种方法一定会产生大量临时变量,导致GC频繁调用,效率比较低,但是优点是实现起来比较简单,实现Serializable接口即可;Parcelable是安卓自己的东西,通过IBan...

2018-02-25 13:55:29 150

原创 Android中如何设置两个应用程序为同一个进程?

Android中如何设置两个应用程序为同一个进程?1.在<manifest>里面添加:android:sharedUserId,注意这个属性的取值必须包含点(dot),也就是诸如java packae的形式。比如com.aaa.bbb。没有dot的话,将来adb install xxx.apk就会出错:Failure [INSTALL_PARSE_FAILED_BAD_SHARED_U...

2018-02-25 13:17:06 5216

原创 防止app内截屏

防止截屏mActivity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);

2018-02-24 21:44:27 3376 1

原创 PopWindow弹出时整个页面变灰色

背景变灰色 WindowManager.LayoutParams lp = getWindow().getAttributes();        lp.alpha = 0.7f;        getWindow().setAttributes(lp);

2018-02-24 09:33:17 514

原创 安卓调用系统截图方法

/*** 开始裁剪** @param uri*/public static Uri startCrop5InFragment(Uri uri, Fragment fragment, int width, int height) {Intent intent = new Intent("com.android.camera.action.CROP");//调用Android系

2018-02-05 13:38:38 3290

原创 oppo手机安装应用失败,提示版本不兼容

本人使用的是oppo r9s的测试机, 发现通过usb build应用到手机上后,应用无法卸载干净。每次都提示卸载成功,但在设置-应用管理 里面还能看到。导致无法安装相同签名的apk,即使是应用市场安装同一个应用时,也会导致失败。后来发现实oppo手机的卸载存在bug,好像是有一个应用软件的表没有做更新,导致卸载后的apk还会出现在所有应用中,这一问题困扰了我许久,终于最后找到了解决办法:

2018-02-05 13:29:59 23776 1

原创 获取手机屏幕截图

核心代码:        View dView = getWindow().getDecorView();        dView.setDrawingCacheEnabled(true);        dView.buildDrawingCache();        Bitmap bmp = dView.getDrawingCache();

2018-02-02 17:43:33 871

原创 webview加载https的url显示空白页的问题

WebView webView = (WebView) findViewById(R.id.webview);final WebSettings settings = webView.getSettings();settings.setJavaScriptEnabled(true);settings.setDomStorageEnabled(true);settings.setUs

2018-02-01 14:04:04 830

原创 安装包安装失败,返回代码res=-113

安装包安装失败,返回代码res=-113报错如下: Installation failed with message Failed to finalize session : INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113. It is possible that this issue is

2018-01-19 12:25:28 23224 7

原创 java.lang.NoSuchFieldError: No static field xxx of type I in class Lcom/XX/R$id; or its superclasses

解决办法将报错的layout改一个名字,项目中有不止一个这个名称的layout。

2017-12-23 13:55:52 1717

原创 安卓悬挂式notification

安卓,notification,悬挂

2017-10-10 16:13:47 1974 2

转载 adb安装报错情形以及解决办法

1.  手机系统内存剩余空间不足,导致安装失败: 提示情形: a. 提示为“ADB_INSTALL_FAILED_INSUFFICIENT_STORAGE”,意为手机存储空间不足; b. 提示为“ADB_INSTALL_FAILED_DEXOPT”,意为因手机存储空间不足导致APK解码失败; c. 提示为“ADB_INSTALL_FAILED_DEVICE_NOSPACE”,意为因手机存储空间

2017-07-18 16:59:23 6242 2

转载 安卓studio环境错误,无法打开

在你的配置环境准确无误的前提下,仍然报上述这种错误时为此我提供三种方法法一:修改安装目录下的studio.exe.vmoptions-Xms128m-Xmx512m为-Xms128m-Xmx256m如果法一不行,那么再继续法二:把C:\Users\my_username\.AndroidStudio 这个目录 删除掉就OK如果还是不行那么你可以尝试法三:降低Android Studio版本(比如

2017-06-29 10:59:57 238

转载 Android 高效调试神器 JRebel

本博客问转载,原文链接:http://blog.csdn.net/googdev/article/details/53288564相信大家应该都在使用 Android Studio 来开发 Android 了,如果你还没有的话,那么建议尽快迁移到 Android Studio 上来,而且 Google 前段时间刚刚宣布,已经彻底放弃对 Eclipse ADT 的支持。使用 Androi

2017-05-22 17:16:36 259

原创 java代码编写shape文件和状态选择器

java代码编写shape文件和状态选择器//获取一个shape对象 public static GradientDrawable getGradientDrawable(int color, int radius) { // xml中定义的shape标签 对应此类 GradientDrawable shape = new GradientDrawable(); shape.

2017-05-08 09:52:53 1105

原创 小米手机无法通过安卓studio安装开发的软件

一句话:关闭MIUI开发者选项中的MIUI优化并重启!

2017-05-05 14:30:02 2959

原创 C代码回调java方法

C代码回调java方法① 找到字节码对象//jclass (FindClass)(JNIEnv, const char*);//第二个参数 要回调的java方法所在的类的路径 "com/itheima/callbackjava/JNI"② 通过字节码对象找到方法对象//jmethodID (GetMethodID)(JNIEnv, jclas

2017-05-04 21:28:06 645

原创 C代码中向logcat输出内容

C代码中向logcat输出内容Android.mk文件增加以下内容LOCAL_LDLIBS += -llogC代码中增加以下内容#include #define LOG_TAG "System.out"#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)#define LOGI(

2017-05-04 21:26:36 654

原创 error: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getIm

error: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportantForAccessibility()' on a null object reference错误原因 ,getView()方法返回为空,仔细查看getview方法,注意添加非空判断即

2017-05-02 13:48:40 957

原创 安卓studio默认使用ConstraintLayout

发现一个小问题,关于studio的: 现在用的是最新的版本,因为studio的特性,在创建新的activity的时候会帮我们创建默认的layout布局文件(如果我们不点击取消的话),而默认的额2.3.1的版本会使用ConstraintLayout。而studio会自动下载ConstraintLayout依赖。-------------------------------------

2017-04-25 14:25:29 2006

原创 安卓应用换肤

安卓应用换肤package com.example.changeskin;import android.app.Activity;import android.os.Bundle;import android.view.View;public class MainActivity extends Activity {    priva

2017-04-19 17:58:32 497

原创 频率较高的Java面试题

频率较高的Java面试题面向对象的三大特性:封装:把数据和操作数据的方法绑定起来,暴露出想要暴露的方法,供其他类调用。继承:是从已有类中获得信息创建新类的过程,提供信息的类叫做父类(超类,基类),继承的类为子类(派生类), 继承具有传递性。多态(最精髓的东西):不同类型的对象对同一消息做出的不同的响应,条件:方法重写,父类引用指向子类对象java中多态的机制:运行时绑定,只

2017-04-19 14:56:40 760

原创 安卓零碎知识点

零碎知识点创建项目前,window-》performance-》workSpace 将编码改成UTF_8安卓系统提供了一个SparseArray,它本质是一个map,但是存储的key只能是int类型,它相比普通的map效率更高,所以当我们需要存储int类型的map的时候,可以使用SparseArrayisOrderedBroadcastReceiver()判断是有序广播还是无序广播

2017-04-19 14:53:40 432

原创 StringBuffer,StringBuilder,String

StringBuffer,StringBuilder,StringStringBuilder不是线程安全的StringBuffer是线程安全的StringBuilder的速度>StringBuffer的速度String是final的不能被继和修改,所以修改string的时候会在堆内存上创建多个对象,很耗时操作不多的话使用String,单线程使用StringBuilder,多线程使用

2017-04-19 14:40:51 320

原创 安卓中的定时器

定时执行某项任务(定时器)方法一:new CountDownTimer(30000, 1000) { public void onTick(long millisUntilFinished) { mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);

2017-04-19 14:38:25 810

原创 APP切换语言

APP切换语言public static void changeLang(String lang){ Resources resources = context.getResources(); Configuration config = resources.getConfiguration(); DisplayMetrics dm = resou

2017-04-19 11:31:13 601

原创 CardView

CardView<android.support.v7.widget.CardView xmlns:card="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" card:c

2017-04-19 11:29:35 611

原创 APP切换语言

public static void changeLang(String lang){Resources resources= context.getResources();Configuration config= resources.getConfiguration();DisplayMetrics dm= resources.getDisplayMetrics()

2017-04-19 11:26:38 559

原创 String中的占位符

String中的占位符你好, %1$S,今天是你%2$d岁生日,您加入我们已经%3$.2f天了String tips = String.format(R.string.toast_tips, 张云鹏, 24, 1234.5f);占位符的构成:  %  + 第几个占位符 + $ + 类型类型: d是整型;.2f是浮点型;s是字符串型St

2017-03-30 18:33:35 5161

原创 Service的两种启动方式

Service的两种启动方式通过startService创建的service创建后就跟对应的activity没有关系,当activity销毁时,Service依然在运行(前提是没有调用stopService())通过startService()方法启动的service,会调用onCreate(),onStartCommand()方法,如果Service已经被创建,则不会再调用onC

2017-03-28 15:28:43 9318 2

设计模式之禅(2)

高清版设计模式之禅第二版,如果说“四人帮”的《设计模式》是设计模式领域的“圣经”,那么之后出版的各种关于设计模式的书都可称之为“圣经”的“注释版”或“圣经的故事”。本书是得道者对“圣经”的“禅悟”,它既不像“圣经”那样因为惜字如金、字字珠玑而深奥、晦涩和难懂,又比“圣经”的“注释版”更深刻和全面、更通俗和生动、更接近开发者遇到的实践场景,更具指导性。本书兼收并蓄、博采众长,也许是设计模式领域里的下一个里程碑之作。

2018-02-06

org.apache.commons.zip

不重复开发的轮子,既然人家已经写好了通用成熟的工具,与其自己吭哧吭哧写通用类,还不如拿来用即可。但是用归用,不了解还是不行滴,咻咻, apache下 开源了许多实用的工具类,一般都是在commons包下。 apache所有jar包,IOUtils等

2017-08-31

genymotion破解包

下载后将文件解压开,找到自己安装的对应路径下的文件,替换掉即可

2017-06-19

空空如也

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

TA关注的人

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