自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Android stuiod UML Plugin

1、背景期望在Android Sudio上找到可以根据代码快速生成UML图的插件,以提高效率。适用于1)方案设计的接口输出,可以先写空的接口,然后直接生成UML图。2)已经开发过的需求进行后期的设计文档输出,直接针对当前代码生成UML图2、期望1)支持通过当前代码快速生成UML图。2)支持可以选择部份代码生成UML图。3)支持代码修改时,可以自动更新到UML图上。4)支持图形界面调整或者操作UML图。将目前了解的插件介绍下,后续有更优的方案时可以补充上来。目前优.

2022-05-25 19:00:00 1240 1

原创 (一)LMK简介

1、概述LMK (low meminfo killer) 即当系统可用内存太低时,系统会触发LMK,杀掉一些进程释放内存出来。android 会为进程分配优先级,优先级越低的应用,在内存不足时,会优先被杀。优先级与进程的类型和进程被调度的次序有关系。2、优先级android 进程的优先级(从高到低)前台进程,正在活动的Activity或者使用startForeground的Service。onReceive 的BroadcastReceiver 等 可见进程,如 onPause 的Act

2021-12-14 19:44:22 6447

原创 步骤记录:基于Android 5.1添加硬按键

 该按键值硬件(驱动)层已支持上报。硬件(驱动)层到应用层的转化,这层可以理解为SCANCODE->KEYCODE的转化。在代码中,打印Keyevent.toString,能看得到scanCode值,如果keyCode= UNKNOW值,便说明了硬件(驱动)层到应用层还没有完成。KeyEvent { action=ACTION_UP, keyCode=KEYCODE_VOL...

2018-12-05 10:24:28 811

原创 问题记录:是否弹出自动输入法的一个判断

问题:两台机器,同一个应用的界面,一个能自动弹出输入法,一个却不能。界面没有设置自动弹出输入法,也没有去调用输入法。直接看代码的关键判断。输入法弹出的判断InputMethodManagerService-》windowGainedFocus    // Should we auto-show the IME even if the caller...

2018-10-25 09:40:04 435

原创 关于android studio 中android library module的两个问题

实际开发中遇到过这样的问题:1、android library module的Build Variants怎么切换,都是编译的release版本。2、android library module中无法添加productFlavors,现象是添加后主module就会提示找不到类在没有找到解决方法时,问题1就只能手动改build.gradle文件,再来编译。问题2就直接使用buildTypes来代替了...

2018-02-08 18:51:34 1074

原创 Kotlin 初探基本语法及入门

写在前面,虽然kotlin做为一门现代语言,但在kotliln上可以看到很多其他语言的影子,简单来说就是采用了长处。简单的使用了kotlin后,尤其是anko相关插件,我习惯觉得kotlin更像是一个提供了高级封装的语言,让你的开发更加便捷。但这个体会只能说是比较粗陋的,毕竟我并没有用kotlin进行实际的开发。1、类默认任何类都是基础继承自Any(这个与java中的Object类

2018-02-05 20:51:58 300

原创 减小apk的大小之 AndroResGuard

一、简介AndroResGuard 是资源混淆工具,可以用来减少apk的大小。微信团队中的人开源出来的项目。他直接针对apk文件进行修改的。git地址:https://github.com/shwenzhang/AndResGuard二、简述原理AndroResGuard通过两方面来减小apk的大小。1)混淆资源我们都知道,android在调

2018-01-10 11:32:31 1050

原创 用android studio打包可以独立运行的jar包

之前提供jar的方式很直接暴力,运行后直接在module的build/intermediates/bundles/相应用渠道环境目录下就可以找到class.jar包,直接改名。当然也可能通过在build文件中创建相关task来创建jar包(这里不多描述了)。但这样打的jar包不能独立运行了。可以独立运行的jar包,解压后有清单文件,即META-INF/MANIFEST.MF,且在清单文件中有指

2018-01-09 14:51:14 859

原创 ijkplayer入门之目录介绍及编译

ijkPlayer主要包含了android, extra, ijkmedia, ios几个核心源码目录android 目录包括了android 平台上层接口提供、用例等等----ijkplayer:android 测试用例,直接导入android studio后可以使用(但需要事先先编译好so库)----compile-ijk.sh:ijkplayer总的编译脚本文件,生成libijk

2018-01-04 18:58:22 3027

原创 adb shell am start -d 启动应用之uri被*吃了

众所周知,am start 可以用来启动activity的,这里就不再详述了,但如果要带参数呢,那么我们也可以通过-e key value等方式来设置,基本也不会有什么问题。而且今天发生问题的是通过uri进行参数据设置时发现总是只有第一个参数有,后面的参数被吃了。。这里啰嗦一句,-e key value在代码中对应的方式是intent.putExtra*的方式,而-d uri是通过intent.se

2017-12-13 20:13:12 5977

原创 ijkplayer 入门之 初始化

我们先将创建播放器、设置播放url、prepareAsync归为初始化部份 首先是创建播放器 java层代码//创建播放器 public IjkMediaPlayer() { this(sLocalLibLoader); } public IjkMediaPlayer(IjkLibLoader libLoader) { initPlayer(libLoa

2017-11-27 19:34:28 688

原创 ijkplayer 入门之Error事件源码简单跟踪

MediaPlayer对于Error事件的接收都是通过Handler来处理的(其实还包括了Info事件),而这个Handler就是EventHandler,而消息的发送则在postEventFromNative,看名字就可以很容易知道,这个代码是给C调用的。//不完整代码 private static class EventHandler extends Handler { pri

2017-11-17 16:17:16 3816

原创 杂记:jenkins中用到的一些lunix命令

对于只懂android的人来说,看脚本和在lunix操作是件很痛苦的事… 这篇只是用来加强自已的记忆而已下载ndk curl https://dl.google.com/android/repository/android-ndk-r14b-linux-x86_64.zip -o android-ndk-r14b-linux-x86_64.zip -# 如果不加-o 即输出文件,则只会打印在窗

2017-08-31 19:42:15 372

原创 Android 自动打包之Jenkins 之门(一)

写在前面:kotlins才看了一开头,就被分配了一个任务,搭建jenkins, 工作为上,kotlins只能先放一边了,希望后面还能捡起来。 一、什么是Jenkins jenkins是一个基于java开发的用于持续集成的工具,其使用简单,可扩展性强,主要用于持续、自动性的构建项目。 二、搭建jenkins环境 笔者是基于mac+homebrew搭建jenkins的,但是jenkins也可以通

2017-08-24 14:28:38 284

原创 Kotlin 初运行

kotlin 最近被google推行为官方开发andorid的编程语言,但android毕竟是个开放的世界,想要完全取代java可不是个容易的事情,就像swift.但这不影响我们对他的学习,程序猿嘛,沉迷学习。 android studio3.0能直接兼容kotlin开发,所以这边建议直接使用as3.0来进行学习. 在创建项目时,只需将kotlin support勾选就行了,as为自动帮我们引入

2017-06-01 14:32:01 2853

原创 “傻瓜”式填充,自定义LayoutManager

“傻瓜”式填充,自定义LayoutManagerRecycleView的高效是众所周知的事了,官方提供的LayoutManager基本上能满足90%上以的界面开发了,但难免会有一些“非人类”设计师会想出的界面,例如机顶盒上不规则的gridlayout了,但是这种情况也可以通过自定义的LayoutManager来解决 在自定义LayoutManager前,我们先来简单的学习一下RecycleView

2017-05-24 19:58:35 648

原创 常用的adb命令

linux系统的shell为用户提供了使用操作系统的接口,是命令语言、命令解释程序有程序设计语言的统称。shell拥有自已内建的命令集,也能被系统中其他应用程序所调用。用户在提示符下输入的命令都由shell先解释后再传给lunix核心。adb shell 进入目标设备的linux shell环境,在该环境中可以执行一些linux命令adb remount 重新挂载系统分区,使系统分

2017-03-20 20:30:47 540

原创 减小apk的大小

一、图片资源1)在条件允许下,可以将图片进行有陨压缩。TingPng--一个图片压缩网站,在上面压过的图基本都能小很多。2)png->jpg,可以将非透明的大图png转成jpg格式3)jpg->webp,如果png大图转成jpg还是很大,或者想压的更小,而尽量不降低画质,那么可以考虑一下webp。但android4.0 才开始支持webp(要注意的一点是webp的解码较慢,不过是毫秒级

2017-02-18 10:50:05 457

空空如也

空空如也

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

TA关注的人

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