- 博客(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关注的人