- 博客(19)
- 资源 (4)
- 收藏
- 关注
原创 android-App启动过程
那我们常说的主线程是什么?zygote名字翻译叫受精卵,首先要知道zygote进程的创建是由Linux系统中init进程创建的,Android中所有的进程都是直接或者间接的由init进程fork出来的,Zygote进程负责其他进程的创建和启动,比如创建SystemServer进程。Binder是Android跨进程通信(IPC)的一种方式,也是Android系统中最重要的特性之一,android 四大组件以及不同的App都运行在不同的进程,它则是各个进程的桥梁将不同的进程粘合在一起。
2024-04-19 01:30:48 763
原创 Android多模块混淆、多module混淆、多library混淆的正确姿势
配置作用:子module内部配置混淆,外部主module 直接使用,不需要再配置。minifyEnabled false //混淆。minifyEnabled true //混淆。2、子module/依赖库中混淆配置。
2023-11-30 10:50:42 321
转载 2021-07-13
Android编译时修改字节码——以Logcat自动打TAG为例背景虽然Java语言提供了良好的封装特性,但是受限于语法,仍然有一些需求实现起来比较麻烦。在编译时对字节码进行操作可以很大程度上突破语言的限制,实现“对程序编程”。例如,最近经常讨论的“面向切面编程”就可以通过这一方案来实现:所谓切面,反映到程序里就是具有一定特征的代码,因此在编译时对字节码进行分析和修改可以方便地实现这一需求。本文的例子一般来说,我们给Logcat指定TAG会以如下方式:public class So
2021-07-13 16:46:23 148
转载 2020-12-17
Windows下配置Apache服务器_Meditation_2019-04-26 12:35:241348收藏1分类专栏:环境配置版权在前面的两天,我矫情的电脑一直排斥我对她太暴力,我也不想,但是如果不威胁她的话她是不会听话的,为了哄她,我还斥巨资给她喂了个内存条。Apache是一款普通的服务器软件,可以用来配置支持静态页面,PHP, Python, Java等各种服务器语言一:首先呢,应该先去官网下载最新版本的Apache,http://httpd.apache...
2020-12-17 14:57:27 106
转载 2020-12-17
windows安装Apache,注册服务出现“(OS 5)拒绝访问。 : AH00369: Failed to open the WinNT service manager..."错误jaray2013-08-13 16:22:0241134收藏2分类专栏:WEB服务器windows安装Apache,注册服务出现“(OS 5)拒绝访问。 : AH00369: Failed to open the WinNT service manager..."错误在安装Ap...
2020-12-17 14:56:16 91
原创 ActivityDialog 半屏点击空白区域不生效
<style name="chat_my_dialog" parent="Theme.AppCompat.Dialog"> <item name="android:windowTranslucentStatus">true</item><!--透明状态栏并占用状态栏位置 --> <item name="android:windowIsTranslucent">true</item><!-- 半透..
2020-07-20 16:32:58 624
转载 GridLayout的使用及问题处理
转 https://blog.csdn.net/Mr_Leee/article/details/68955139在GridLayout中,可通过设置android:layout_rowWeight="1"和android:layout_columnWeight="1"来平均分配行和列,但是此时行和列的平均分配效果只能够在API>21时才能正常显示,解决方法很简单,就是引入android ...
2019-01-24 17:56:37 866
转载 Android各版本 发布时间 及对应API(2018.8.31截至Android最新版本 P)
转 https://blog.csdn.net/weixin_41101173/article/details/79620490Android版本名称Code name Android版本名称Code name 版本发布时间 对应API (no code name) 1.0 2008年9月23日 API level 1 (no code name)...
2019-01-24 17:52:52 1057
转载 Android Dialog和PopWindow的区别
转自 https://blog.csdn.net/Crystal_xing/article/details/83308771转自 https://www.xuebuyuan.com/3248581.html 从效果上去总结看,dialog和popWindow在一般的弹出效果上能做到一样的效果,但是dialog默认在屏幕的居中弹出,popWindow则可以更灵活的通过设置动化效果,从上...
2019-01-11 18:51:57 540
转载 Android内存优化(使用SparseArray和ArrayMap取代HashMap)
转自 https://www.cnblogs.com/yjbjingcha/p/7074266.html 在Android开发时,我们使用的大部分都是Java的api,比方HashMap这个api,使用率非常高,可是对于Android这样的对内存非常敏感的移动平台,非常多时候使用一些java的api并不能达到更好的性能,相反反而更消耗内存,所以针对Android这样的移动平台,也推出了更符...
2019-01-11 18:43:00 263
转载 SparseArray的使用及实现原理
转载自:http://extremej.itscoder.com/sparsearray_source_analyse/ 序言 相信大家都用过HashMap用来存放键值对,最近在项目中使用HashMap的时候发现,有时候 IDE 会提示我这里的HashMap可以用SparseArray或者SparseIntArray等等来代替。细心的朋友可能也发现了这个提示,并且会发现并不是所...
2019-01-11 18:41:12 259
转载 [转]史上最全的android studio 插件大全整理
现在Android的开发者基本上都使用Android Studio进行开发(如果你还在使用eclipse那也行,毕竟你乐意怎么样都行)。使用好Android Studio插件能大量的减少我们的工作量。1.GsonFormat快速将json字符串转换成一个Java Bean,免去我们根据json字符串手写对应Java Bean的过程。使用方法:快捷键Alt+S也可以使用Alt+Ins...
2018-12-08 12:08:52 714
转载 AbstractProcessor 不能导包
转载 https://blog.csdn.net/zhangwenhaojf40it/article/details/80537160找不到 AbstractProcessor 类搜索能搜到找到别人的项目 发现依赖也仅此而已apply plugin: 'java-library'dependencies { implementation fileTree(dir: '...
2018-09-26 16:15:45 1605 2
原创 Android 隐士跳转几种方式
1、只有 配置 action 进行跳转<intent-filter> <action android:name="testarouter"></action> <category android:name="android.intent.category.DEFAULT" /></intent-filter>
2018-09-26 10:31:38 1138
原创 Android 手机存储文件各种路径
String cacheDir = context.getExternalCacheDir().getPath();/storage/emulated/0/Android/data/应用名称/cache一般放一些长时间保存的数据String filesDir = context.getExternalFilesDir(null).getPath();/storage/emulated/0...
2018-03-20 13:21:06 8474
原创 KMP算法 计算短字符串在长字符串中的第一次出现的位置
String a = "abcd";String b = "bcdadabcd";String max = a.length() > b.length() ? a : b;String min = a.length() < b.length() ? a : b;String temp = null;int i = 0;int j = 0;int index=-1;whi...
2018-02-25 16:06:38 842
原创 编写程序,获取两个字符串中最大相同子串
private void test() { String a = "Valaienie"; String b = "Maierginle"; String max = a.length() > b.length() ? a : b; String min = a.length() < b.length() ? a : b; String temp...
2018-02-25 11:52:59 1170
原创 解决Android 6.0动态添加权限问题
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); checkApiOver23(); }
2016-04-15 09:54:20 429
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人