自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2021-02-23

Android 应用加固的实现方案概述Android应用加固的诸多方案中,其中一种就是基于dex的加固,本文介绍基于dex的加固方案。原理:在AndroidManifest中指定启动Application为壳Moudle中的Application,生成新APK,将加密后的APK中的dex文件和壳Moudle中的AAR文件合并,然后重新签名打包。应用安装运行后,通过壳Module的Application解密dex文件,再加载dex。存在问题:解密过程,会还原出来未加密的原dex文件,通过一些手段,还是

2021-02-26 11:23:10 438

原创 简单理解Binder机制的原理

一、概述Android系统中涉及到多进程通信底层都是依赖Binder IPC机制。例如当进程A中的Activity想要向进程B的Service通信,这就需要用到IPC。不仅如此,整个Android系统架构中,大量采用了Binder机制作为IPC(进程间通信)方案。当然也存在其他的通信方式,如管道、消息队列、socket、内存共享、SystemV等。那为什么Android不使用这些原有的技术,而...

2020-04-20 15:11:36 5459

原创 PermissionsDispatcher动态权限申请

Android对6.0及以上的版本做了更强的权限控制。如打电话这种需要动态申请。我推荐使用github上start最多的PermissionsDispatcher作为权限管理。一,使用的Androidstudio版本为3.5.3二,使用的permissionsdispatcher版本为3.2.0github地址为:https://github.com/permissions-dispa...

2020-04-17 15:44:29 1464

原创 android.view.WindowManager$BadTokenException崩溃的4种情形

android.view.WindowManager$BadTokenException崩溃的4种情形参考:https://www.jianshu.com/p/4c5fafe08fa7最近做一个项目,发现抛异常:Caused by: android.view.WindowManager$BadTokenException: Unable to add window – token andro...

2020-04-07 16:22:54 1182

原创 Android 软件盘之使特定布局保持在软键盘之上

这里写自定义目录标题Android 软件盘之使特定布局保持在软键盘之上Android 软件盘之使特定布局保持在软键盘之上应用场景:开发中时常遇到界面由于屏幕原因,弹出的软键盘会遮住部分布局。下面简单介绍快速实现方式:通过焦点使布局置于软件盘上。具体实现过程:如下一共有3步,设置活动的 windowSoftInputMode属性,然后建立 Scroll布局+EditText焦点的布局[...

2020-04-07 15:29:11 816

原创 android 环境变量配置

classpath.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;JAVA_HOMED:\download\jdk_1.8PathC:\Program Files (x86)\Common Files\Oracle\Java\javapath;D:\download\jdk_1.8\bin;D:\download\jdk_1.8\jr...

2019-07-31 17:32:16 132

原创 查询公网出口IP

curl ipinfo.io/ip 查询公网出口IPtracert IP 查询访问yuanchengip经过哪些服务telnet 112.4.10.122 8090 查询远程端口是否可访问117.71.53.46

2019-07-31 17:31:09 1253

原创 adb 常用命令

1.连接adbadb connect [ip]:[port] 连接机顶盒(默认端口为5555)2.查看所有连接设备 名称、ip、端口已经状态( device 或 offline )adb devices3.安装apkadb install -r [apk 安装包所在路径(如:d:\a.apk)] 将对应路径的apk 安装包强制(覆盖)安装到机顶盒4.指定设备adb -s [设备名称或...

2019-07-31 14:40:23 3887

原创 adb 连接方式汇总

经常遇到各种盒子连接方式问题,因此汇总下adb的打开方式,以供下次查阅。电信adb连接方式汇总省份 厂家 机顶盒型号 adb连接方式广东电信 华为 Q21 使用华为stbId工具,在机顶盒的允许远程连接中关闭后再打开获取密码,然后在工具中输入连接,打开远程连接开关,adb再连接天邑 信息键加2323再连接华为 需要华为的adb工具连接创维 在设置-更多设置,进去里面,多按右键触...

2019-07-31 14:10:26 21358 2

原创 Android Process 'command 'C:\Users\Win\AppData\Local\Android\Sdk\build-t non-zero exit value 1错误解决方案

Process ‘command ‘*****’’ finished with non-zero exit value 1错误解决方案一、 布局:1.图片,drawable中的图片名字不对,或者引用错误2.select文件中的属性没有空格3.shap文件有问题4.Textview中写了特殊符号比如 >,<等重点!!! 清单文件声明有问题,如空格等二、版本问题这个错...

2019-07-23 16:53:22 4462

原创 Android-- 解决移动魔百盒CM201-2监听不到home键

上篇文章总结了下home键监听的4种方法,链接如下:Android中监听Home键的4种方法经测试发现,在魔百盒CM201-2上通过广播不能实现home键监听。遂,,记录下当前解决方法:采用第二种方法可以解决当前尴尬问题,代码如下: /** * 兼容移动魔百盒CM201-2 */ @Override protected void...

2019-06-18 09:58:23 3594 1

原创 Android中监听Home键的4种方法总结

本文主要介绍了Android中监听Home键的4种方法总结,主要讲解了onSaveInstanceState方法、onUserLeaveHint方法、ACTION_CLOSE_SYSTEM_DIALOGS、framework PhoneWindowManager.java等4种方法,需要的朋友可以参考下:因为home键是系统键,情况特殊一些。看了一下网上的资料,说下面的方法可以。(其实不行)代...

2019-06-17 17:14:08 16708

原创 Android之requestFocus焦点移动问题

Android之requestFocus焦点移动问题问题描述:当焦点在左侧tab时,按遥控器右键,焦点移动错误。记录一下~_设置是否获取焦点。若requestFocus()方法被调用,后者被优先调用。若是EditText获取焦点,光设置这个是没用的,必须设置focusable=false。在Touch模式下获取焦点,必须设置focusableInTouchMode=true。...

2019-05-27 10:36:25 1394

原创 Android原生与H5交互

混合开发的优势:使用H5实现的功能能够在不升级App的情况下动态更新,而且可以在Android或iOS的App上同时运行,节约了成本,提高了开发效率。 原理:其实就是Java代码和JavaScript之间的调用。H5调原生方式:第一种1.首先对WebView进行初始化WebSettings settings = webview.getSettings(); setti...

2018-04-20 17:13:46 694

原创 Android 自定义Camera拍照

本篇文章就项目开发遇到问题记录下;#1.拍照图片被压缩问题2.拍照图片被旋转问题#首先实现一个自定义拍照功能。自定义布局&lt;FrameLayout android:layout_below="@id/toolbar_layout" android:layout_width="match_parent" ...

2018-04-20 16:33:54 551

原创 Android原生与H5交互

混合开发的优势:参考文档https://blog.csdn.net/qq_24530405/article/details/52067474 https://blog.csdn.net/so_huangbo/article/details/55522205?utm_source=itdadao&amp;utm_medium=referral使用H5实现的功能能够在不升级App的情况下动态...

2018-04-12 15:54:02 643

原创 Android ScrollView嵌套RecyclerView显示不全、滑动卡顿问题

ScrollView嵌套RecyclerView显示不全问题解决方案:ScrollView嵌套RecyclerView在Android6.0以下能正常显示,但是在6.0以上就会出现RecyclerView显示不全的bug。尝试多种方法之后终于找到解决办法,特在此记录下。&lt;com.to8to.rabbitcircle.view.TSmoothScrollView and...

2018-04-11 10:01:09 431

原创 如何理解Java的垃圾回收机制

Android性能调优之垃圾回收机制本篇文章大概按照以下逻辑来讲述1.什么是垃圾回收(GC)2.垃圾回收机制对于我们来说有什么好处?又有什么缺点?3.什么时候会发生垃圾回收4.垃圾回收它是如何工作的?5.具体的回收方式和回收算法6.OOM时如何调整7.JVM 的内存划分技术详情1.什么是垃圾回收(GC)垃圾回收或GC(Garbage Collecti...

2018-04-10 14:14:15 561

原创 Android多线程通信机制

在Android中我们把UI线程外的线程成为工作线程。我们不能再主线程中做耗时操作,如网络廉连接,IO操作。 因此我们可以把耗时操作放到另一个线程中去做,操作完成后再通知主线程做相应响应。这就需要掌握线程间通信方式。 Androiod提供了两种线程间通信方式:一种是AsyncTask机制,另一种是Handler机制。1.线程间通信方式之AsyncTask机制: AsyncTask异步任务...

2018-04-10 11:32:40 1433

转载 Android开发总结

Android开发总结1:Activity生命周期? 这几乎是个老少咸宜,永远不会过时的问题,而且极有可能是第一个问题。这个问题当然没什么好讲的啦,死记硬背是没什么用的了,关键是理解。本人就曾遇到这个问题的变种问题,问onStart(),与onResume()有什么区别?如果面试官抛出这个问题,是不是有点措手不及。今天又听说有同学遭遇了更变态的问题:什么情况下Activity走了onCrea...

2018-04-09 11:53:59 249

原创 进程通信-AIDL的使用

AIDL的使用 1.AIDL是什么AIDL(Android 接口定义语言) 是 Android 提供的一种进程间通信 (IPC) 机制。在 Android 上,一个进程通常无法访问另一个进程的内存。 尽管如此,进程需要将其对象分解成操作系统能够识别的原语,并将对象编组成跨越边界的对象。编写执行这一编组操作的代码是一项繁琐的工作,因此 Android 会使用 AIDL 来处理。通过...

2018-03-26 14:58:07 153

原创 Android 设置字体颜色

搁置许久,没有动笔写过一些文章了。近来刚好要做一些字体属性封装,就顺便将一些常用的字体颜色总结下。res/values/colors.xml: #ffffff #fffff0 #ffffe0 #ffff00 #fffafa #fffaf0 #fffacd

2016-12-01 20:53:15 277

空空如也

空空如也

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

TA关注的人

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