Tomes.V.White

一只迷惘的菜鸡
私信 关注
Tomes_V_White
码龄5年

我对技术一无所知

  • 322,427
    被访问量
  • 47
    原创文章
  • 20,428
    作者排名
  • 75
    粉丝数量
  • 目前就职 金山软件
  • 于 2016-07-09 加入CSDN
获得成就
  • 获得74次点赞
  • 内容获得39次评论
  • 获得209次收藏
荣誉勋章
TA的专栏
  • c++
  • 混合开发
    2篇
  • git
    3篇
  • mac
    4篇
  • 数据库
    1篇
  • shell
    1篇
  • android
    293篇
  • java
    55篇
  • android开发实战
    79篇
  • 工具类
    7篇
  • 安全
    7篇
  • 逆向工程
    36篇
  • ui
    50篇
  • 适配
    1篇
  • android源码
    54篇
  • Android动态加载
    10篇
  • 自动化
    5篇
  • 框架
    26篇
  • FFMPEG
    4篇
  • 算法
    28篇
  • NDK
    3篇
  • Linux
    4篇
  • 常见bug解决
    20篇
  • c/c++
    3篇
  • 计算机理论与基础
    1篇
  • arm
    1篇
  • 人工智能
    2篇
  • 深度学习
    2篇
  • 神经网络
    1篇
  • 常见问题
    7篇
  • 性能优化
    7篇
  • android漏洞分析
    2篇
  • iOS
  • python
    3篇
  • 网络协议
    6篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

c++ connect函数Address family not supported by protocol

问题:在c++中执行网络的connect函数,出现报错Address family not supported by protocol函数原型: int connect(SOCKET s, const struct sockaddr * name, int namelen);解决方法:结构体sockaddr:struct sockaddr { sa_family_t sa_family; char sa_data[14];};将结构体sockaddr的sa_family
原创
20阅读
0评论
0点赞
发布博客于 25 天前

You need to use a Theme.AppCompat theme (or descendant) with this activity.

问题:Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.原因:Activty继承自android.support.v7.app.AppCompatActivty,而不是android.app.Activty。解决方法:方法一:使用Theme.AppCompat的主题android:theme
原创
13阅读
0评论
0点赞
发布博客于 2 月前

Android studio R8 编译报错

问题> Task :app:transformClassesWithDexBuilderForProduceDebugcom.android.builder.dexing.DexArchiveBuilderException: com.android.builder.dexing.DexArchiveBuilderException: Failed to process /Users/closetou/Documents/ygej/app/build/intermediates/transfo
原创
38阅读
2评论
0点赞
发布博客于 2 月前

问题解决 react-native android打包报错:Error: Duplicate resources

转载自:https://blog.csdn.net/qq_33466661/article/details/106901621问题react-native项目,在打Android包时,报错:Error: Duplicate resourcesFAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':app:mergeReleaseResources'.> [ra.
转载
22阅读
0评论
0点赞
发布博客于 2 月前

面向报文(UDP)和面向字节流(TCP)的区别

转载自:https://blog.csdn.net/ce123_zhouwei/article/details/8976006面向报文的传输方式是应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。因此,应用程序必须选择合适大小的报文。若报文太长,则IP层需要分片,降低效率。若太短,会是IP太小。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。这也就是说,应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。面向字节流的话,虽然应用程序和TCP的交互是
转载
35阅读
0评论
0点赞
发布博客于 2 月前

c++ ‘this‘ cannot be implicitly captured in this context

问题使用lambda表达式的时候,发现报了个编译错误'this' cannot be implicitly captured in this context完整示例void demo::init(){ Hanlder([](const std::string &event, const std::string &content){ //调用所在类的成员函数,报错 test(); });}void demo::test(
原创
100阅读
0评论
0点赞
发布博客于 2 月前

通过Chrome实时调试webview

为了方便webview的动态调试,googl官方提供了一个好用的调试途径,即使用Google浏览器调试Android端的webview页面方法1.确保pc的adb环境不懂的请看https://blog.csdn.net/zmeilin/article/details/893172692.手机开启开发者模式,并且Usb 连接到电脑3.Android工程里的webView代码 开启调试模式mWebView.setWebContentsDebuggingEnabled(true);修
原创
36阅读
0评论
0点赞
发布博客于 2 月前

Caused by: java.lang.RuntimeException: Using WebView from more than one process at once with the...

最近帮一个内部的项目解决问题,他们在多进程使用webview的时候碰到了崩溃问题问题:Caused by: java.lang.RuntimeException: Using WebView from more than one process at once with the same data directory is not supported原因:Android 9 prohibit sharing WebView data directory among multiple pr
原创
89阅读
0评论
0点赞
发布博客于 2 月前

git 查看用户、切换用户命令

查看命令查看用户名git config user.name查看用户邮箱git config user.email修改命令修改用户名git config --global user.name "用户名"修改用户邮箱git config --global user.email "邮箱"
原创
111阅读
0评论
0点赞
发布博客于 3 月前

mac一个窗口开多个终端

转载自:https://blog.csdn.net/szw_yx/article/details/104962328创建新的终端窗口进入一个终端后,快捷键快捷键command+N,会弹出一个新的终端界面:(切换快捷键:command + ~)在当前终端界面,新建一个tab样式的新窗口进入一个终端后,快捷键command+T,会在当前终端界面,新建一个tab样式的新窗口:...
转载
25阅读
0评论
0点赞
发布博客于 4 月前

Mac上安装并配置JDK

问题No Java runtime present, requesting install.出现该提示,一般是没有安装jdk或者没有给jdk配置环境变量安装前确认判断mac上是否安装并配置好了jdk,直接执行java -version如果出现下面的提示则没安装好No Java runtime present, requesting install.如果出现下面的提示则说明jdk安装好,环境搭建完成java version "1.8.0_271"Java(TM)
原创
55阅读
0评论
0点赞
发布博客于 4 月前

git clone出现Permission denied (publickey)解决办法

问题在执行代码clone时git clone git@gitee.com:wangzaiplus/xxx.git出现问题Permission denied (publickey)原因无权限, 未将公钥添加至GitHub解决思路本地生成密钥 登录GitHub配置SSH Key具体步骤1.生成私钥-公钥对windowsssh-keygen.exe -t rsa -C "xxx@qq.com"linux,macssh-keygen -t rsa -C
原创
66阅读
0评论
0点赞
发布博客于 4 月前

CocoaPods 【warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777】

转载自:https://www.jianshu.com/p/fedc63617d2d问题/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin19/rbconfig.rb:229: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777提示含义:目录被赋予777的权限,不安全。
转载
422阅读
0评论
0点赞
发布博客于 4 月前

can‘t find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException)

转载自:https://blog.csdn.net/develop_csdn/article/details/105053383问题Traceback (most recent call last):2: from /usr/local/bin/pod:23:in `<main>'1: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:302:in
转载
434阅读
0评论
0点赞
发布博客于 4 月前

Android 文件命名最大长度限制

背景最近在处理Android 11读写权限时,萌生了个偏门想法,在公有目录下创建文件,使用文件的文件名信息使得不同app之间共享数据问题在给文件命名时,出现了以下报错System.err: java.io.IOException: File name too long文件名太长分析查看Linux源码,我们知道#ifndef _LINUX_LIMITS_H#define _LINUX_LIMITS_H#define NR_OPEN 1024#define NGROUP
原创
134阅读
0评论
0点赞
发布博客于 4 月前

Android studio No cached version available for offline mode解决办法

问题Android studio在build的时候弹出了No cached version available for offline mode这个错误解决办法Android studio3.X之前的版本
原创
89阅读
0评论
0点赞
发布博客于 5 月前

startActivity exposed beyond app through Intent.getData()

问题通过startActivity去对外打开、分享数据时出现android.os.FileUriExposedException: file:///storage/emulated/0/xxx exposed beyond app through Intent.getData() at android.os.StrictMode.onFileUriExposed(StrictMode.java:1960) at android.net.Uri.checkFileUr
原创
68阅读
0评论
0点赞
发布博客于 5 月前

android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed异常解决

问题E/SQLiteDatabase: Error inserting thumb_uri=content://media/external/images/thumbnails/3959 image_id=8474 image_uri=content://media/external/images/media/8474 orientation=360 android.database.sqlite.SQLiteConstraintException: UNIQUE constraint fa
转载
337阅读
0评论
0点赞
发布博客于 6 月前

Entry name ‘META-INF/androidx.vectordrawable_vectordrawable.version‘ collided

问题使用Android studio编译demo 进行debug调试时,出现编译报错Entry name 'META-INF/androidx.vectordrawable_vectordrawable.version' collided解决方法点击Android studio的Build,再选择下拉窗的Rebuild Project重新构建工程...
原创
2549阅读
3评论
7点赞
发布博客于 7 月前

Android R(11)targetSdkVersion 30的应用必须使用v2及以上签名

前言最近Android 11已发布beta2版本,为了尽快适配和体验Android 11,我们做了点前期的小工作https://developer.android.google.cn/android11问题当apk的targetSdkVersion为30时,在android 11的手机上安装时,会出现安装失败的问题。可以通过执行安装命令安装应用,发现报错adb install 报错信息:Failure [INSTALL_PARSE_FAILED_NO_CERTIFICAT
原创
976阅读
0评论
0点赞
发布博客于 7 月前

git push代码到远程新分支

场景远端没有分支test_tomes_push,但我想不经过远端仓库创建分支,将本地git的分支test_tomes上的提交,推送(并通过本地git命令新建远端分支)到远端git仓库的test_tomes_push分支命令//显示本地当前分支git branch//本地分支为test_tomes *test_tomes//推送本地分支:远端希望创建的分支test_tomes_pushgit push origin test_tomes:test_tomes_push...
原创
255阅读
0评论
0点赞
发布博客于 7 月前

INSTALL_FAILED_INVALID_APK: Failed to extract native libraries, res=-2

问题最近碰到个问题,在Android手机上安装apk安装不上,使用adb命令安装后出现以下报错➜ ~ adb install test.apk Failed to install test.apk: Failure [INSTALL_FAILED_INVALID_APK: Failed to extract native libraries, res=-2]分析从控制台的报错信息来看,这个错误是安装时,提取so失败。你想该apk ,发现该AndroidManifest.xml中&
原创
786阅读
0评论
0点赞
发布博客于 7 月前

adb获取activity信息

获取activity栈adb shell dumpsys activity activities结果如下:➜ ~ adb shell dumpsys activity activitiesACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)Display #0 (activities from top to bottom): Stack #306: type=standard mode=fullscreen is
原创
326阅读
0评论
0点赞
发布博客于 8 月前

shell脚本字符串截取 Bad substitution

问题现象需要执行的脚本test.shecho "hello!"name="tomes"echo ${#name}echo ${name:1:2}执行该脚本报错./test.shhello!5./test.sh: 4: ./test.sh: Bad substitution原因分析#!是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。#!/bin/bashecho "Hello World !"如上面的代码则指定解释器为b.
原创
187阅读
0评论
0点赞
发布博客于 8 月前

在 Linux 系统下使用badblocks检测硬盘上的坏道和坏块

让我们从坏道和坏块的定义开始说起,它们是一块磁盘或闪存上不再能够被读写的部分,一般是由于磁盘表面特定的物理损坏或闪存晶体管失效导致的。随着坏道的继续积累,它们会对你的磁盘或闪存容量产生令人不快或破坏性的影响,甚至可能会导致硬件失效。同时还需要注意的是坏块的存在警示你应该开始考虑买块新磁盘了,或者简单地将坏块标记为不可用。在这篇文章中,我们通过几个必要的步骤,使用特定的磁盘扫描工具让你能够判断 Linux 磁盘或闪存是否存在坏道。使用badblocks检查坏道坏块工具可以让用户扫描设备检...
原创
267阅读
0评论
0点赞
发布博客于 8 月前

wireshark异常数据解读

转载自:https://blog.csdn.net/yuanbinquan/article/details/75434732wireshark异常数据,软件本身会以特殊颜色底纹标识。或者可以通过Analyze-->Expert Information分析。1、TCP Previous segment not captured 、TCP Out-Of-Order[TCPPrevious segment not captured]在TCP传输过程中,同一台主机发出的数据段应该是连续的,即后一个.
转载
133阅读
0评论
0点赞
发布博客于 8 月前

深度分析mmap

转载自:https://www.cnblogs.com/huxiao-tee/p/4660352.html#_label4参数start:映射区的开始地址length:映射区的长度prot:期望的内存保护标志,不能与文件的打开模式冲突。是以下的某个值,可以通过or运算合理地组合在一起目录mmap基础概念 mmap内存映射原理 mmap和常规文件操作的区别 mmap优点总结 mmap相关函数 mmap使用细节mmap基础概念mmap是一种内存映射文件的方法,即将一个文件
转载
152阅读
0评论
1点赞
发布博客于 8 月前

Bitmap Error, cannot access an invalid free bitmap here!

错误日志:06-04 11:50:26.396 25973 25973 W Bitmap : Called getWidth() on a recycle()'d bitmap! This is undefined behavior!06-04 11:50:26.396 25973 25973 W Bitmap : Called getHeight() on a recycle()'d bitmap! This is undefined behavior!06-04 11:50:26
原创
384阅读
0评论
0点赞
发布博客于 8 月前

探究!一个数据包在网络中的心路历程

转载自:https://mp.weixin.qq.com/s?__biz=MzUxODAzNDg4NQ==&mid=2247483989&idx=1&sn=7e2ed852770743d3955ef9d5561fcef3&scene=21#wechat_redirect前言文末尾有「轻松时刻彩蛋」,别轻易走开哦!想必不少小伙伴面试过程中,会遇到「当键入网址后,到网页显示,其间发生了什么」的面试题。还别说,这真是挺常问的这题,前几天坐在我旁边的主管电话面试应
转载
177阅读
0评论
0点赞
发布博客于 9 月前

Android studio attribute android:fillColor报错

转载自:https://blog.csdn.net/yangshuaionline/article/details/90671322报错信息:Can't process attribute android:fillColor="@android:color/white": references to other resources are not supported by build-time PNG generation. File was preprocessed as vector draw
转载
158阅读
0评论
0点赞
发布博客于 9 月前

IP 基础知识“全家桶”

转载自:https://mp.weixin.qq.com/s/qydIO7NDfFTYs4-ZZlfgRg前言前段时间,有读者希望我写一篇关于 IP 分类地址、子网划分等的文章,他反馈常常混淆,摸不着头脑。那么,说来就来!而且要盘就盘全一点,顺便挑战下小林的图解功力,所以就来个IP 基础知识全家桶。吃完这个 IP 基础知识全家桶全家桶,包你撑着肚子喊出:“真香!”不多说,直接上菜,共分为三道菜: 首先是前菜 「 IP 基本认识 」 其次是主菜 「IP 地址的基础知识」.
转载
242阅读
0评论
0点赞
发布博客于 9 月前

Android P 请求网络 CLEARTEXT communication to host not permitted by network

转载自:https://blog.csdn.net/qq_18620851/article/details/80617549问题: 由于 Android P 限制了明文流量的网络请求,非加密的流量请求都会被系统禁止掉。如果当前应用的请求是 htttp 请求,而非 https ,这样就会导系统禁止当前应用进行该请求,如果 WebView 的 url 用 http 协议,同样会出现加载失败,https 不受影响。为此,OkHttp3 做了检查,所以如果使用了明文流量,默认情况下,在 Androi
转载
104阅读
0评论
0点赞
发布博客于 9 月前

Android Studio The same input jar is specified twice

问题:Android studio打包apk的时候碰到了Warning: Exception while processing task java.io.IOException: The same input jar [/xxx/src/xxx/app/libs/android-support-v13.jar] is specified twice.问题原因:dependenc...
原创
84阅读
0评论
0点赞
发布博客于 9 月前

Android Studio Execution failed for task ':app:mergeDebugResources' 9.png Error: Duplicate resources

最近接手一个古老的项目维护……报错信息:FAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':app:mergeDebugResources'.> [drawable/apps_item_unselected] /media/xxx/app/src/main...
原创
130阅读
0评论
0点赞
发布博客于 10 月前

java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/***.so: has text relocations

最近接手一个古老的项目维护……报错信息:2020-04-23 19:15:44.652 19941-20327/xxx E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1 Process: xxx, PID: 19941 java.lang.RuntimeException: An error occurred while ex...
原创
264阅读
0评论
0点赞
发布博客于 10 月前

Aandroid studio Error:Unable to find optional library: org.apache.http.legacy

转载自:https://blog.csdn.net/qq_35647121/article/details/82260504缺少 这个玩意我是21的版本 下没有,所以会报错直接将./android-26/optional 整个文件夹拷贝到android-21目录下,解决问题...
转载
125阅读
0评论
0点赞
发布博客于 10 月前

Aandroid studio编译中build-tools位置不一致问题

转载自:https://blog.csdn.net/qq_23089525/article/details/50687492错误如下:Observed package id ‘build-tools;18.0.1’ in inconsistent location ‘E:\SDK_JDK\android-sdk\build-tools\android-4.3’ (Expected ‘E:...
转载
156阅读
1评论
0点赞
发布博客于 10 月前

Android Studio .so文件打包不到APK中的原因

转载自:https://blog.csdn.net/fhl13017599952/article/details/521207391.需要在build中添加如下配置,这是必备的android { sourceSets { main { jniLibs.srcDirs = ['libs'] } }}2.如果添加了该项配置出...
转载
618阅读
0评论
0点赞
发布博客于 10 月前

Android Studio 生成APK的时候由于xml的namespace原因不能打包成功

Error: Suspicious namespace and prefix combination [NamespaceTypo] when I try create Signed APKError:(6) Error: Suspicious namespace and prefix combination [NamespaceTypo] ~~~~~~~~~~...
转载
215阅读
0评论
0点赞
发布博客于 10 月前

Android Studio The same input jar is specified twice 解决办法

The same input jar is specified twice 解决办法Android studio打包中遇到了这样的问题Warning:Exception while processing task java.io.IOException: The same input jar […….jar] is specified twice.1解决方法如下:打开 proguard....
转载
98阅读
0评论
0点赞
发布博客于 10 月前

Leetcode 2.两数相加

题目链接:https://leetcode-cn.com/problems/add-two-numbers/给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输...
原创
88阅读
0评论
0点赞
发布博客于 1 年前

gitbook入门

一、介绍GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown来制作精美的电子书,GitBook 并非关于 [Git]的教程。 GitBook + Markdown + Git优点: 语法简单 兼容性强 导出方便 专注内容 团队协作 注:本文使用搭配:GitBook + Typora + Git 相关...
转载
85阅读
0评论
0点赞
发布博客于 2 年前

socketpair函数和基础使用

转载自:https://blog.csdn.net/xifens/article/details/53714814socketpair()函数的声明:#include <sys/types.h>#include <sys/socket.h>int socketpair(int d, int type, int protocol, int sv[2]);s...
转载
82阅读
0评论
0点赞
发布博客于 2 年前

判断应用或Activity是否存在

一、判断应用是否存在方法一:通过usb连接的方式 使用adb命令查看已安装的文件列表adb shell pm list package然后通过查看列表里是否含有对应的应用名来判断是否安装某应用,列表如下:$ adb shell pm list packagepackage:com.google.android.carriersetuppackage:com.sangfor....
原创
682阅读
0评论
0点赞
发布博客于 2 年前

UML类图及类与类之间的关系

转载自:http://www.uml.org.cn/oobject/201211231.asp类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据。1. 类类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。在系统中,每个类都具有一定的职责,...
转载
199阅读
0评论
0点赞
发布博客于 2 年前

pc无线连接多台移动设备

一. 准备1.pc装好adb2.Android设备与电脑(Mac或者Windows)在同一个局域网内3.移动设备开启USB调试二. 网络搭建1.接入已有wifi你可以直接选择自己已有的wifi,使pc电脑和移动设备都接入同一个wifi优点:使用简单,不需要额外搭建网络缺点:传输速度受wifi影响,网速不好,还是别用他了(安装一个100M的包,让我等了5分多钟)...
原创
123阅读
0评论
0点赞
发布博客于 2 年前

Java引用类型--强引用、软引用、弱引用、虚引用

相信看了各种开源代码的小伙伴对SoftReference和WeakReference都不陌生,这里系统整理下相关知识,并为未接触该知识的新手作为科普。1.什么是引用?从数据类型来理解。Java有两大数据类型,一类是基本数据类型,另一种则是引用数据类型。从内存方向来理解。由于Java中没有指针(区别于C系列),指向一块内存的数据类型叫引用。public Class A{...
原创
72阅读
0评论
0点赞
发布博客于 2 年前

使用Jeb动态调试安卓的时候显示Could not attach to target

JEB动态调试方法:https://www.jianshu.com/p/8e8ed503d69bhttps://blog.csdn.net/magic1an/article/details/78300039当attach弹出Could not attach to target提示的时候。解决方法如下:eclipse/android studio/ddms,ddms导致jeb不能附加...
原创
2435阅读
0评论
0点赞
发布博客于 2 年前

Ubuntu下解决adb devices:???????????? no permissions的方法

转载自:https://www.cnblogs.com/xiaoxuetu/p/3224386.html之前一直都是在windows下进行开发的,但是这次由于一个小模块用的东西只能在linux下运行,所以就发生了这么一系列的问题环境:虚拟机Vmware下的Ubuntu12.10事件:连接android手机后,使用adb devices,出现了?????,nopermissions没有权限的...
转载
409阅读
0评论
0点赞
发布博客于 2 年前

UIAutomator源码分析之启动和运行

转载自:https://blog.csdn.net/zhubaitian/article/details/40535579我们可以看到UiAutomator其实就是使用了UiAutomation这个新框架,通过调用AccessibilitService APIs来获取窗口界面控件信息已经注入用户行为事件,那么今天开始我们就一起去看下UiAutomator是怎么运作的。我们在编写了测试用例之...
转载
166阅读
0评论
0点赞
发布博客于 2 年前

Uiautomator基础使用

原文地址为:Uiautomator入门(初学者用)最近在看Uiautomator的东西,对于写惯了robotium的我来说,还是一种全新的体验,之前一直想过要尝试一下,不过一直没有抽出空,不废话不废话,写博客是给自己留一个备忘,当然也是为了给更多希望接触到这方面知识的同学们做一个引导,so,大神可以直接右上角叉叉了,这个博客里是没有干货哒~言归正传,那么uiautomato...
转载
747阅读
0评论
0点赞
发布博客于 2 年前

直播技术——Rtmp协议

转载自:https://blog.csdn.net/qq_34447388/article/details/78995606RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写,它是由Adobe公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing)和分包(packetizing)的问题。随着VR技术的发展,视频直播等领...
转载
337阅读
0评论
0点赞
发布博客于 2 年前

Python 正则表达式入门(中级篇)

转载自:http://www.cnblogs.com/chuxiuhong/p/5907484.html1.子表达式子表达式的概念特别好理解。其实它就是将几个字符的组合形式看做一个大的“字符”。不好理解?举个栗子:我们要匹配类似IP地址这种形式的字符(暂且不考虑数值范围的合理性,这个留作学完之后的思考题吧)。形如192.168.1.1这样的地址我们怎么写表达式呢?答案一 \d+.?\...
转载
63阅读
0评论
0点赞
发布博客于 2 年前

Python 正则表达式入门(初级篇)

转载自:https://www.cnblogs.com/chuxiuhong/p/5885073.html引子首先说 正则表达式是什么?正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则...
转载
63阅读
0评论
0点赞
发布博客于 2 年前

Python 将列表数据写入文件(txt, csv, excel)

转载自:https://blog.csdn.net/u010513327/article/details/80889846写入txt文件def text_save(filename, data):#filename为写入CSV文件的路径,data为要写入数据列表. file = open(filename,'a') for i in range(len(data)):...
转载
3639阅读
0评论
0点赞
发布博客于 2 年前

Android逆向之破解某应用加密算法(动态调试so和hook so代码)

转载自:http://www.520monkey.com/archives/1310一、样本静态分析最近有位同学发了一个样本给我,主要是有一个解密方法,把字符串加密了,加解密方法都放在so中,所以之前也没怎么去给大家介绍arm指令和解密算法等知识,正好借助这个样本给大家介绍一些so加密方法的破解,首先我们直接在Java层看到加密信息,这个是这位同学直接告诉我这个类,我没怎么去搜了:...
转载
1807阅读
0评论
6点赞
发布博客于 2 年前

Android安全之字符串批量加密工具(AndStringGuard)原理介绍

转载自:http://www.520monkey.com/archives/1313一、支付宝的防护策略现在很多应用在为了安全对应用做了很多防护方式,之前我也介绍了很多防护策略:Android中几行代码让你的应用变得更加安全;文中也提到了应用安全防护的最终目标是防止别人看到你的代码,我们也知道这里的最终方式都是加固操作,但是加固有一些缺点,而这些确定导致现在很多公司应用并不会去选择他,所以...
转载
319阅读
0评论
0点赞
发布博客于 2 年前

Android逆向之爆破资讯类应用「最右」防抓包策略原理分析

转载自:http://www.520monkey.com/archives/1234这几天继续学习四哥的博客。该技术仅做学习研究使用。只为了使我们的app更安全。一、逆向分析首先感谢王同学提供的样本,因为王同学那天找到我咨询我说有一个应用Fiddler抓包失败,其实对于这类问题,我一般都会这么回答:第一你是否安装Fiddler证书了,他说他安装了。第二你是否用了我之前说的那个Xpose...
转载
218阅读
0评论
0点赞
发布博客于 2 年前

Android 把Apk混淆成中文语言代码

转载自:http://www.520monkey.com/archives/992一、前言最近想爆破一个app,没有加壳,简单的使用Jadx打开查看源码,结果把我逗乐了,代码中既然都是中文,而且是一些比较奇葩的中文字句,如图所示:瞬间感觉懵逼了,这app真会玩,我们知道因为Java语言是支持双字符的,所以可以将包名,类名,变量名,方法名定义成中文,或者其他国家的语言都可以的。所以本...
转载
484阅读
0评论
0点赞
发布博客于 2 年前

Android逆向之自动爆破签名校验工具kstools

转载自:http://www.520monkey.com/archives/1006此处仅作为学习记录一用。至于评论问答环节,请去上面地址翻阅四哥的原文。上面已附上地址。一、技术回顾为了安全起见,一些应用会利用自身的签名信息对应用做一层防护,为了防止应用被二次打包操作,在之前已经介绍了很多关于应用签名校验爆破的方法,一条基本原则不能忘:全局搜索”signature”字符串,这里可以在J...
转载
1213阅读
0评论
0点赞
发布博客于 2 年前

Android逆向之drizzleDumper脱掉“360加固”的壳

转载自:http://www.520monkey.com/archives/1062此处仅作为学习记录一用。至于评论问答环节,请去上面地址翻阅四哥的原文。上面已附上地址。一、情景分析程序猿一般都很孤独,特别是总是和代码相伴,比如像我这种穷屌丝,一到周末就闲着没事刷各种应用,看看想看的,无意中发现一款封面看着挺诱人的约友神器,下来来看看,迫不及待的点开:我尼玛我只是想视频通话,竟...
转载
5679阅读
2评论
6点赞
发布博客于 2 年前

Android逆向之脱掉“梆梆加固”的保护壳

转载自:https://blog.csdn.net/jiangwei0910410003/article/details/54409957此处仅作为学习记录一用。至于评论问答环节,请去上面地址翻阅四哥的原文。上面已附上地址。一、前言现如今Android用户的安全意识不是很强,又有一些恶意开发者利用应用的名字吸引眼球,包装一个恶意锁机收费的应用,在用户被骗的安装应用之后,立马手机锁机,需要...
转载
1743阅读
0评论
0点赞
发布博客于 2 年前

Android逆向之脱掉“360加固”的壳

转载自:https://blog.csdn.net/jiangwei0910410003/article/details/51769447此处仅作为学习记录一用。至于评论问答环节,请去上面地址翻阅四哥的原文。上面已附上地址。一、前言现在主流的加固平台有:梆梆加固,爱加密,360加固,腾讯加固,在之前的一篇文章中介绍了:如何脱掉“爱加密”的壳,现在这里要脱掉另外一个平台的壳:360加固,因...
转载
3455阅读
0评论
3点赞
发布博客于 2 年前

Android应用保活方案的另类出路(单像素activity法)

转载自:https://blog.csdn.net/jiangwei0910410003/article/details/82558465另一篇参考:https://blog.csdn.net/Lingbulei/article/details/79452514个人挺喜欢四哥的博客,干货挺多,此处仅作为学习记录一用。至于评论问答环节,请去源博客地址翻阅。上面以附上地址。一、前言我们在...
转载
490阅读
1评论
0点赞
发布博客于 2 年前

从零开始的jvm之垃圾收集器与内存分配策略

该篇源自于对《深入理解java虚拟机》的学习和总结。大牛拍砖请轻点。在这里我们带着三个疑问去看这篇总结:1、哪些内存需要回收?2、什么时候回收?3、怎么回收? 1、哪些内存需要回收?解答:回收的主要区域为堆,其次方法区。解释:回顾之前的从零开始的jvm之内存管理机制,我们提到的运行时数据区域,除堆和方法区,其他的程序计数器,虚拟机栈、本地方法栈随线程的生而生,死...
原创
146阅读
0评论
0点赞
发布博客于 3 年前

TextView占位符

最近被新来的小伙伴以及一些刚入门的同学问到一个问题,怎么在textview的一个字符串已有格式中加入数字等信息。统计了下问这个问题的小伙伴还不少,这种用法虽然基础,但也有必要简单的开个帖子,让大家作为参考,能快速间接的根据教程完成需求。例如我要在textview里显示这样一句话,“我是Tomes,今年18岁”,这里我想动态的去把“18”这个数字显示出来,当然你能通过多个textview去拼...
原创
378阅读
2评论
2点赞
发布博客于 3 年前

解决OPPO手机在Android studio 环境下安装错误运行失败的问题

崩溃日志重现:今天遇到个令人烦躁的问题,通过as调试apk时,在OPPO上安装运行会出现apk icon错误label错误,以及不能正常启动的问题。 2018-12-26 10:44:35.028 6795-6795/cn.xxx.xxx E/AndroidRuntime: FATAL EXCEPTION: main Process: cn.xxx.xxx, PID: 6795...
原创
2912阅读
2评论
2点赞
发布博客于 3 年前

从零开始的jvm之内存管理机制

该篇源自于对《深入理解java虚拟机》的学习和总结。大牛拍砖请轻点。1、运行时数据区域1.1 程序计数器定义:当前线程所执行的字节码的行号指示器。设计目的:为了线程切换后能恢复到正确的执行位置,所以需要每个线程都拥有一个独立的程序计数器。注意:a、该内存区域线程私有,各线程的程序计数器互不影响,独立储存;b、执行的是java方法,则计数器记录的是正在执行的指令码的地...
原创
210阅读
0评论
0点赞
发布博客于 3 年前

ARouter基础踩坑demo

ARouter基础踩坑demo,简单几个类,先让ARouter跑起来再说。
zip
发布资源于 3 年前

popWindow 7.0 8.0位置显示错误解决demo

popWindow 7.0 8.0位置显示错误解决方法demo,及对popWindow的简单封装
zip
发布资源于 3 年前

我们仍未知道的popWindow 7.0 8.0位置显示错误

popWindow一个神奇的控件,为了记录自己曾解决过的问题,也避免其他小哥遇到一样的问题,故留下博客进行记录。最近在写一个下拉框的时候,测试小哥找到我说7.0,7.1,8.0的显示效果不一致……我当时的心情是……&amp;¥%#&amp;&amp;(&amp;好吧,当遇这样的问题,第一反应是不要慌……不要慌……甩锅……不对,是分析并解决问题。由于各种原因我这里就不上产品的效果,取而代...
原创
151阅读
0评论
0点赞
发布博客于 3 年前

从零开始的ARouter新手篇

1、ARouter是什么?ARouter是阿里开源的一款android路由框架。按照git上的原说法:他是一个用于帮助 Android App 进行组件化改造的框架 —— 支持模块间的路由、通信、解耦。2、ARouter有什么作用?解耦、方便管理多页面的动态跳转,提供组件化解耦的一种方案,同一Native与H5的跳转方法。3、为什么要用ARouter?动态跳转:针对复杂逻辑下,...
原创
2895阅读
4评论
4点赞
发布博客于 3 年前

在Android里禁止横竖屏是否搞错了什么

最近有个小需求,需要禁止指定的fragment进行横竖屏切换。由此引出了本文,算是对该需求知识点的一个小结。首先简单的说下一般横竖屏切换的基本操作。网上的博客大多数都是针对activity做的,即禁止当前activity。至于说横竖屏切换后生命周期的变化或如何解决由于横竖屏切换导致需要保存数据的问题,已有很多前辈高手去写,这里不再累述。确实有需要,请留言,菜鸡会在本文末尾进行补充说明。...
原创
246阅读
2评论
0点赞
发布博客于 3 年前

DataBinding系列:DataBinding的基本用法

转载自:https://www.jianshu.com/p/70316eb4e0f81.在xml中引入一些基础变量Variablesdata 标签中可以有任意数量的 variable 标签。这些变量可以使Java中的任意数据类型,每个 variable 标签描述了会在 binding 表达式中使用的属性。&lt;layout xmlns:android="http://schemas...
转载
209阅读
0评论
0点赞
发布博客于 3 年前

DataBinding系列:DataBinding初认识

转载自:https://www.jianshu.com/p/53925ccb900e 早在2015谷歌 I/O大会上,就介绍了一个新的框架DataBinding,从名字就可以看出来,这是一个数据绑定框架。我们为什么要使用DataBinding?1.再也不需要编写findViewById了,有人会说,已经有butterknife了,很好用。2.更新UI数据需切换至UI线程,也有人说,有rx...
转载
151阅读
0评论
0点赞
发布博客于 3 年前

Android Crash处理 崩溃后禁止默认重启与崩溃后手动重启

转载自:https://juejin.im/post/5a321db5f265da431b6d38ff伸手党福利:compile 'com.tuzhenlei:crashhandler:1.0.1'详情参见文档和demo:github地址 /**简单初始化*/ //CrashHandler.getInstance().init(this, BuildConfig.DEB...
转载
2174阅读
0评论
0点赞
发布博客于 3 年前

你应该知道的MessageQueue.IdleHandler

转载自:https://wetest.qq.com/lab/view/352.html我们知道android是基于Looper消息循环的系统,我们通过Handler向Looper包含的MessageQueue投递Message, 不过我们常见的用法是这样吧? 一般我们比较少接触MessageQueue, 其实它内部的IdleHandler接口有很多有趣的用法,首先看看它的定义:...
转载
196阅读
0评论
0点赞
发布博客于 3 年前

Android性能优化之较精确的获取图像显示到屏幕上的时间

转载自:http://blog.desmondyao.com/android-show-time/这两天我的包工头歪龙木·灵魂架构师·王半仙·Yrom给我派了一个活:统计App冷启动时间。这个任务看上去不难,但是要求统计出来的时间要准,要特别准。意思就是,我必须要按Activity绘制到屏幕上这个时间节点作为标杆,来进行我的统计工作。毕竟如果是因为视图处理不当而导致的measure/lay...
转载
692阅读
0评论
0点赞
发布博客于 3 年前

Android源码分析之为什么在onCreate() 和 onResume() 获取不到 View 的宽高

转载自:https://www.jianshu.com/p/d7ab114ac1f7先来看一段很熟悉的代码,可能在最开始接触安卓的时候,大部分人都写过的一段代码;即尝试在 onCreate() 和 onResume() 方法中去获取某个 View 的宽高信息:但是打印输出后,我们会发现,在这两个方法中根本获取不到 View 的宽高信息。public class MainActivit...
转载
609阅读
0评论
1点赞
发布博客于 3 年前

Android源码解析之应用程序资源管理器(Asset Manager)的创建过程分析

转载自:https://blog.csdn.net/luoshengyang/article/details/8791064我们分析了Android应用程序资源的编译和打包过程,最终得到的应用程序资源就与应用程序代码一起打包在一个APK文件中。Android应用程序在运行的过程中,是通过一个称为AssetManager的资源管理器来读取打包在APK文件里面的资源文件的。在本文中,我们就将详细分...
转载
576阅读
0评论
0点赞
发布博客于 3 年前

Android Studio中Java控制台中文输出乱码

转载自:https://blog.csdn.net/zxw136511485/article/details/53032974 本篇文章属于Android Studio开发问题收集整理,只是记录问题,方便下次快速解决这样的问题。      在使用Android Studio开发时,如果创建了Java工程,要在控制台输入中文的时候,可能会输出乱码。下面是例子,Test1类直接运行main()方法,控...
转载
3270阅读
2评论
1点赞
发布博客于 3 年前

Android调试时华为手机不打印logcat的问题

转载自:https://blog.csdn.net/u014471160/article/details/60588480最近在写代码时都是使用华为的手机作为测试机,发现一个问题,手机连接电脑上没有logcat打印,一开始以为是代码的问题,但是换了别的手机是可以的。去查了一下原来是华为的手机都是这样的情况,原因是国内的部分厂商定制的手机对于应用中的 Log 日志默认做了打印限制,需要手动设置才能打...
转载
254阅读
0评论
0点赞
发布博客于 3 年前

java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState

转载自:https://blog.csdn.net/dsc114/article/details/44857685首先描述下所要实现的功能点:MainActivity使用Fragment实现底部菜单,底部共有四个菜单按钮,分别对应:AFragment,BFragment,CFragment,DFragment。其中AFragment是默认显示。点击CFragment中的一个button后跳转到第二...
转载
1016阅读
0评论
0点赞
发布博客于 3 年前

signApk源码

android的singapk源码,方便大家查看和下载,理解其中的逻辑和精髓
java
发布资源于 3 年前

OkHttp3源码分析

https://blog.csdn.net/mwq384807683/article/details/71173442基本使用从使用方法出发,首先是怎么使用,其次是我们使用的功能在内部是如何实现的.建议大家下载 OkHttp 源码之后,跟着本文,过一遍源码。官方博客栗子:http://square.github.io/okhttp/#examplesOkHttpClient client = ne...
转载
272阅读
0评论
0点赞
发布博客于 3 年前

Android 懒加载简单介绍

转载自:https://www.cnblogs.com/Jason-Jan/p/8018500.html目录1.懒加载介绍2.使用懒加载的方法3.总结一下吧1.懒加载介绍1.1.效果预览    1.2.效果讲解  当页面可见的时候,才加载当前页面。  没有打开的页面,就不会预加载。  说白了,懒加载就是可见的时候才去请求数据。  1.3.懒加载文章传送门  参考文章:Android懒加载。  参考...
转载
1051阅读
0评论
1点赞
发布博客于 3 年前

CVE-2015-1805漏洞验证

用于验证CVE-2015-1805漏洞,该漏洞攻击将导致部分手机出现崩溃重启和提权
zip
发布资源于 3 年前

CVE-2015-1805漏洞解析及验证

转载自:https://www.anquanke.com/post/id/836820x0  漏洞信息影响所有Nexus手机和部分Android手机的漏洞,Google于2016/03/18发布了公告修复,具体请看链接.http://www.cvedetails.com/cve-details.php?t=1&amp;cve_id=cve-2015-1805Xhttp://source.andro...
转载
1103阅读
0评论
0点赞
发布博客于 3 年前

CVE-2017-13156 Janus高危漏洞深度分析

转载自:https://bbs.pediy.com/thread-223539.htm一、背景介绍近日,Android平台被爆出“核弹级”漏洞Janus(CVE-2017-13156),该漏洞允许恶意攻击者任意修改Android应用中的代码,而不会影响其签名。众所周知,Android具有签名机制。正常情况下,开发者发布了一个应用,该应用一定需要开发者使用他的私钥对其进行签名。恶意攻击者如果尝试修改...
转载
1006阅读
4评论
0点赞
发布博客于 3 年前

Android性能优化之Lint使用详解

转载自:https://blog.csdn.net/u011240877/article/details/54141714什么是 LintLint 是Android Studio 提供的 代码扫描分析工具,它可以帮助我们发现代码结构/质量问题,同时提供一些解决方案,而且这个过程不需要我们手写测试用例。Lint 发现的每个问题都有描述信息和等级(和测试发现 bug 很相似),我们可以很方便地定位问题...
转载
257阅读
0评论
0点赞
发布博客于 3 年前

Android性能优化之TraceView使用详解

转载:https://blog.csdn.net/u011240877/article/details/54347396/参考:https://blog.csdn.net/superxlcr/article/details/78219673        https://blog.csdn.net/innost/article/details/9008691TraceView 是什么TraceVi...
转载
536阅读
0评论
0点赞
发布博客于 3 年前

Android性能优化之常规启动优化

转载自:https://juejin.im/post/5874bff0128fe1006b443fa0一、前言随着项目版本的迭代,App的性能问题会逐渐暴露出来,而好的用户体验与性能表现紧密相关,从本篇文章开始,我将开启一个Android应用性能优化的专题,从理论到实战,从入门到深挖,手把手将性能优化实践到项目中,欢迎持续关注!那么第一篇文章我就从应用的启动优化开始,根据实际案例,打造闪电般的Ap...
转载
233阅读
0评论
0点赞
发布博客于 3 年前

Android UI性能优化之Overdraw

转载自:https://blog.csdn.net/u011693517/article/details/49155965什么是Overdraw?Overdraw就是屏幕上某个像素点在同一帧被绘制了多次。在多层布局结构中,不可见部分也会被绘制。举个例子,一个白色页面上有一个按钮。系统首先绘制白色背景,然后在白色背景上绘制按钮,最后在按钮背景上绘制按钮内容。那么按钮和按钮内容就造成了Overdraw...
转载
201阅读
0评论
0点赞
发布博客于 3 年前

Android UI性能优化之Hierarchy Viewer使用详解

转载自:https://blog.csdn.net/swordgirl2011/article/details/528879251. 功能Hierarchy Viewer工具提供了一个可视化界面显示布局的层次结构,让我们可以进行调试,从而优化界面布局结构。2. 启动工具启动方式有两种,一种是通过终端命令,输入hierarchyviewer,进行启动,第二种是通过打开Android Device M...
转载
439阅读
0评论
0点赞
发布博客于 3 年前

简单概括Xposed hook原理

转载自:https://www.jianshu.com/p/b29a21a162ad这块知识本身是挺多的,网上有对应的源码分析,本文尽量从不分析代码的角度来把原理阐述清楚。Xposed是一个在andoid平台上比较成熟的hook框架,可以完美的在dalvik虚拟机上做到hook任意java方法。在art虚拟机上仍然处在beta阶段,相信以后也会稳定支持。Xposed在dalvik上的hook原理值...
转载
3691阅读
0评论
3点赞
发布博客于 3 年前

EventBus 3之源码分析

eventbus 2的源码分析:https://blog.csdn.net/qq_35559358/article/details/74295870请看本篇的朋友先看2从更基础更详细的地方理解,篇末将加入2个版本源码中最大不同实现的对比,新人菜鸟,请不要骂太凶。本篇的分析和eventbus 2有很多相同的,借用原作者的博客,说明大部分逻辑。转载自:https://xudeveloper.githu...
转载
174阅读
0评论
0点赞
发布博客于 3 年前

Android之Activity生命周期浅析

转载自:https://blog.csdn.net/javazejian/article/details/51932554  Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的。今天我们就来详细地聊聊Activity的生命周期,以便我们在以后的开发中能如鱼得水。一、初识Activ...
转载
28286阅读
2评论
10点赞
发布博客于 3 年前

为什么String要设计成不可变的?

转载自:https://blog.csdn.net/renfufei/article/details/16808775翻译人员: 铁锚翻译日期: 2013年11月18日原文链接: Why string is immutable in Java ?这是一个老生常谈的话题(This is an old yet still popular question). 在Java中将String设计成不可变的是...
转载
804阅读
0评论
0点赞
发布博客于 3 年前

HashMap和ArrayMap实现原理的区别以及各自优势

转载自:https://blog.csdn.net/rzleilei/article/details/51658938Hashmap的更详细补充参考:https://blog.csdn.net/vansbelove/article/details/52422087一、HashMap的构成原理1、HashMap结构HashMap当中,存储最终数据的其实是一个HashMapEntry类型的数组:Has...
转载
4607阅读
0评论
0点赞
发布博客于 3 年前

Android系统中的进程管理:进程的优先级

转载自:http://qiangbo.space/2016-11-23/AndroidAnatomy_Process_OomAdj/前言进程的优先级反应了系统对于进程重要性的判定。在Android系统中,进程的优先级影响着以下三个因素:当内存紧张时,系统对于进程的回收策略系统对于进程的CPU调度策略虚拟机对于进程的内存分配和垃圾回收策略本文会主要讲解系统对于进程优先级的判断依据和计算方法。在Pro...
转载
313阅读
0评论
0点赞
发布博客于 3 年前