- 博客(46)
- 资源 (1)
- 收藏
- 关注
原创 python基础知识
python基础知识python中的边边角角的基础知识一、可以被import语句导入的对象是以下类型:二、__init__.py的作用python中的边边角角的基础知识一、可以被import语句导入的对象是以下类型:模块文件(.py文件)C或C++扩展(已编译为共享库或DLL文件)包(包含多个模块)内建模块(使用C编写并已链接到Python解释器中)二、init.py的作用init.py 文件的作用是将文件夹变为一个Python模块。init.py中还有一个重要的变量,all, 它用
2021-06-10 10:31:13 151 1
原创 安卓使用HttpUrlConnection
使用HttpUrlConnection时注意事项文章目录现象异常原因分析解决现象程序中使用了HttpUrlConnection,在低版本的安卓手机上程序运行正常,在高本版中发生异常异常原因分析1、安卓4.0之后,为防止ANR,主线程不允许访问网络。2、android P之后,要求应用程序使用加密连接。解决针对1,将网络访问放到线程去处理。针对2,google推荐的解决方法是使用https通信。如果仍然希望使用http通信,则在应用的AndroidManifest.xml配
2021-04-28 10:17:15 151
原创 读懂kotlin源码
几年前(大概15,16年前后),用EclipseIDE写安卓应用(apk),使用的是java开发。现在(2021年),有个安卓开发的任务,在网上一看,真是发生了天翻地覆的变化。IDE都开始使用androidstudio,这个还比较容易。可是,开发里面用到了RecylerView,直接使用比较麻烦,于是在男人同性交友网站找到了BaseRecylerViewAdapterHelper,这个居然是用kotlin编写的,而且打开源文件一看,这是什么东东,心中立刻有万头羊驼喷涌而出kotlin前言一、kotlin
2021-04-15 08:37:38 641
原创 通过数据线对android和iPhone手机截屏
在计算机上通过数据线对手机截屏概述安卓截屏苹果截屏概述最近研究了下,在计算机上,通过数据线对安卓和苹果手机截屏。做个简单记录,方便以后查阅。安卓截屏安卓系统,在/system/bin/screencap命令,可以对手机进行截屏。通过调用这个指令,可以将截屏保存到sdcard中,然后拷贝到计算机。苹果截屏运行com.apple.mobile.screenshotr服务,可以通过MessageType为ScreenShotRequest的指令,获取到iOS手机截屏。注意:由于com.apple.m
2021-03-29 08:43:21 415
原创 C#逆向
文章目录C#逆向1. 修改cs源码2. 修改vsproj项目工程3. 修改xaml总结C#逆向前段时间,遇到一个逆向一个windows上exe的问题,用ida分析,发现不能解析出有用的汇编代码,但给出的是IL(Intermediate Language)代码。通过进一步分析,发现是基于WPF(Windows Presentation Foundation)的C# .net项目。在网上发现收费工具,但是出于成本考虑,决定使用了开源的ILSpy。从github上下载编译好的7.0版本(由于ILSpy源码是
2021-03-04 13:05:51 1182 1
原创 关于duilib
前言在windows上开发的应用,有些界面使用的是duilib库,可以用来换肤。这些界面一般保存在安装路径的skin之类的文件夹下,但是由于它的皮肤是以xml文件的形式保存的,不能直接查看。工具本人结合duilib库,开发了一个简单的duiexplore工具,可以对皮肤资源目录下的xml文件进行预览,方便对应用进行分析。下载下载地址...
2020-12-31 15:11:13 140
原创 手机通信录上传到网上
需求读取安卓手机的通信录,然后上传到网上安卓手机apk使用android studio,新建一个android项目,在项目的AndroidManifest.xml中,增加读取通信权限<uses-permission android:name="android.permission.READ_CONTACTS" />读取通信录的java类public class MobileContacts { public static class Contact {
2020-12-16 16:29:57 450
原创 android e.printStackTrace()
问题提出在计算机上使用java时,对于异常,可以使用e.printStackTrace(),在出现异常时,在调试日志中,方便的找到异常原因。但是,在使用android studio调试apk时,在log中,找不到出错日志。问题解决使用:catch (Exception e) { Log.e(TAG,Log.getStackTraceString(e)); }详见 幸福的小金火 android studio如何查看 e.printStackTrace()...
2020-12-15 09:33:56 474
原创 解决android.os.NetworkOnMainThreadException
起因在安卓手机上编写socket客户端,创建socket套接字时,产生异常:android.os.NetworkOnMainThreadException原因分析在主线程中创建socket时,安卓为了防止ANR(Application Not Response),要求socket必须在工作线程中创建。问题解决使用 new Thread(new Runnable(){@Overridepublic void run() {Log.i(TAG, “before requestPer
2020-12-15 09:23:03 1054
原创 springboot的网站找不到controller报错
现象Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.Mon Dec 14 09:34:41 CST 2020There was an unexpected error (type=Not Found, status=404).原因Springboot项目的application启动类的位置不对,应该与controller位于
2020-12-14 10:05:52 376 1
原创 安卓Thread.myTid()和Thread.currentThread().getId()的区别
在安卓中,获得安卓进程信息的一些方法android.os.Thread.myPid()android.os.Thread.myTid()android.os.Thread.myUid()这三个函数返回的是进程在操作系统运行时对应的processid,threadid,和useridjava.lang.Thread.currentThread().getId()是Java级的IDandroid.os.Looper.getMainLooper().getThread().getId()获得的时jav
2020-12-11 12:08:00 2382
原创 升级linux内核
升级ubuntu的内核昨天linux启动失败,在grub选择另外一个内核版本后,启动成功。于是想到,如果这个版本也失败,岂不是需要重新安装?于是想到编译一个最新的内核,以备不时之需。升级过程参照了Terry_Eijsan的Ubuntu编译、更换、删除内核和木又啊的Ubuntu下编译内核。这里把主要步骤记录一下:切记:确认硬盘大于30G的空余空间,如果磁盘空间过小,则无法完成编译 从www.kernel.org下载需要的linux内核源码备份/boot/grub/grub.cfg文件,以防升级失败
2020-12-05 09:36:26 115
原创 AndroidX
AndroidX是什么Android为了解决向下兼容问题,使用support lib,如Fragment-v4(API4,v1.6), appcompat-v7(API7,v2.1),现在Android官方支持的最低系统版本已经是4.0.1,对应的API版本号是15。Android团队意识到这种命名支持库的规则已经不再合适,于是对这些API的架构进行了一次重构,推出了AndroidX。AndroidX 是对support library 的一次升级; 包名从在android.support.*下面变成a
2020-12-04 11:39:40 139
原创 软件基础:text,data,bss,stack,heap
软件的理解text段data段bss段堆(heap)栈(stack)程序本质text段代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域。这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读(某些架构也允许代码段为可写,即允许修改程序)。在代码段中,也有可能包含一些只读的常数变量,例如字符串常量等。data段数据段(data ...
2020-03-15 11:56:16 496
原创 iTunesMobileDevice错误代码
1. 概述从theiphonewiki中拷贝出来的,为了以后查找方便,放到这里。2. 私有函数地址的获取In order to obtain the address of a usable private function in MobileDevice, you will have to be able to understand x86-64 assembly to reverse en...
2019-11-15 11:12:38 2988
原创 开通网站
前言当我们想把在单机或者局域网辛苦数周甚至数月开发的网络应用,发布到互联网时,我们一般会遇到如下几个问题。1.网络主机的租用:就是运行我们的网站或者app服务端的载体。N年之前,人们为了开通网站,一般都在IDC(Internet data center)机房,租用或者放置1U的服务器,在那里直接连接的网上。大一点儿的公司,也有租用光纤,直接在公司部署的。这些都存在一个共同的问题,费用比较高。后...
2019-11-13 11:53:59 258
原创 前端自动化工具:gulp
1. gulp简介gulp是一个前端自动化构建工具,主要用来设定程序自动处理静态资源的工作。使用gulp,可以轻松实现对html,css,js进行压缩的目的。产品发布时,可以有效缩小代码大小。2. gulp安装gulp是nodejs的一个工具,因此可以使用npm进行安装。$npm install gulp3. gulpfile.js在前端项目的根目录,通过编写gulpfile.js...
2019-11-06 16:54:51 165
原创 工具介绍:js-beautify,整理压缩混淆后的js,html,css
js-beautify在阅读别的网站的html,js,css时,有的网站做了代码混淆,如何阅读这样的代码?js-beautify是一个转换压缩混淆后的html,js,css代码,增加代码可读性的一个好用的工具。js-beautify的下载安装源码git资源同样的,为node.js和python安装js-beautify的方法见其中说明。js-beautify的使用说明$js-beaut...
2019-11-04 10:50:42 7997
原创 SVG
SVG Scalable Vector GraphicsSVG 是使用 XML 来描述二维图形和绘图程序的语言。1. SVG 形状矩形 <rect>圆形 <circle>椭圆 <ellipse>线 <line>折线 <polyline>多边形 <polygon>路径 <path><?xm...
2019-11-03 10:27:00 136
原创 HTML5
HTML5HyperText Markup Language 5百度百科 HTML51. HTML5 简介HTML5 是 W3C 与 WHATWG 合作的结果。HTML5 技术结合了 HTML4.01 的相关标准并革新,符合现代网络发展要求,在 2008 年正式发布。W3C: World Wide Web Consortium,万维网联盟。WHATWG: Web Hypertext ...
2019-10-31 14:29:43 196
原创 js事件模拟
1 原始js事件模拟1.1 模拟鼠标单击事件模拟鼠标单击"click"事件示例:var fn = function(){ console.log('button was clicked'); // 此函数通过事件的方式被调用}var btn = document.getElementById('#id');btn.addEventListener('click', fn);/...
2019-10-28 14:52:40 1005
转载 js运算符优先级
js运算符优先级参见:[JavaScript MDN 运算符优先级](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)
2019-10-20 19:23:56 127
原创 js行结尾,是否必须写分号
1 结论在 C 语言中,分号是语句结束的标志,在语句结束的地方一定要以分号结束。而 JavaScript 的分号却是可选的,若语句都各占一行,则可以省略分号。为增强代码可读性,减少歧义,建议在表达式末尾试用分号。多个表达式之前,也可以使用逗号分隔。2 可以省略分号的情形一条语句代表着一条javascript命令,通常以分号(;)结尾。因此,javascript的分号(;)是用于分隔语句的符号...
2019-10-16 11:55:27 6092
原创 js中let和var定义变量,以及不定义直接使用变量的区别
js中let和var定义变量的区别详细信息参见一砂世界的文章:http://blog.csdn.net/nfer_zhuang/article/details/48781671详细信息参见annier_11的文章:https://blog.csdn.net/annier_11/article/details/826202761 声明后未赋值,表现相同(function() { ...
2019-10-12 15:42:46 2563 1
原创 javascript 对象
Javascript对象JavaScript 提供多个内建对象,比如 Object、String、Date、Array 等等,此外 JavaScript 允许自定义对象。对象只是带有属性和方法的特殊数据类型。1.创建 JavaScript 对象1.1 通过Object创建对象var obj = new Object();// 添加属性obj.name = "Jacky";// 添加...
2019-10-11 22:01:26 100
原创 Javascript基础知识
javascript基础知识1 概述:JavaScript是目前web开发中不可缺少的脚本语言,js不需要编译即可运行,运行在客户端,需要通过浏览器来解析执行JavaScript代码。诞生于1995年,当时的主要目的是验证表单的数据是否合法。JavaScript本来应该叫Livescript,但是在发布前夕,想搭上当时超热的java顺风车,临时把名字改为了JavaScript。(也就是说j...
2019-10-08 19:47:05 179
原创 录制视频课程探索
这段时间在阅读mars源代码,发现里面有很多trick and ticks,如果没有人指导,初学者很难读懂。于是,想录制一个关于mars的视频教学课程,帮助初学者学习mars源码时,能够少走些弯路。于是,在网上搜索了些制作教学课件的工具,发现有基于网络教学的软件,就是提供将视屏放到网上,提供给学员通过手机或者计算机观看学习,但是基本的制作一般还是在计算机上完成。录屏视频制作工具,网上说有卡卡录像...
2019-07-04 10:08:53 227
转载 C++11中的匿名函数(lambda)
1. 示例或许,Lambda 表达式算得上是 C++ 11 新增特性中最激动人心的一个。这个全新的特性听起来很深奥,但却是很多其他语言早已提供(比如 C#)或者即将提供(比如 Java)的。简而言之,Lambda 表达式就是用于创建匿名函数的。GCC 4.5.x 和 Microsoft Visual Studio 早已提供了对 lambda 表达式的支持。在 GCC 4.7 中,默认是不开启 C...
2019-06-19 15:43:41 1479
原创 腾讯mars,在windows上编译
本文记录了我在学习mars源码时,遇到的一些问题及解决方法。准备工作安装cmake,(备注,如果下载1.3.0版本,需要cmake编译出vs的工程文件。使用1.3.0之前的版本,则无需下载cmake)安装python 2.7.x,(备注同上)使用git下载源代码,windows上的git下载地址https://gitforwindows.org/。当然,也可以从git网站上直接下载zip...
2019-05-27 07:02:42 2215
原创 sqlcipher自己编译
问题的提出sqlcipher是sqlite的加密版本,提供源代码,但是在编译时,尤其是在编译windows版本时,需要一些技巧。1.sqlite和sqlcipher的下载1.1sqlite源码下载sqlite可以从https://www.sqlite.org上下载最新版本。amalgamation版即为混合版,把所有的c源码都集中到了sqlite3.c文件中去,工程源代码只包含sqlite...
2019-05-07 16:47:05 7836 2
原创 使用python修改excel电子表格
使用python修改excel电子表格前言1. python相关代码2. 问题前言需要根据第一个excel表格的第一类,对excel表进行拆分。之前,都是使用vba。对于excel操作,如果可以使用python的话,可以提高效率。xlwings可以提供对电子表格的操作,因此从网上下载了xlwings。1. python相关代码根据sheet1的第一类,拆分表格成多个文件。impor...
2019-04-04 18:29:38 2560
原创 导出Windows可执行文件中的字符串资源
导出Windows 可执行文件中的字符串资源字符串资源字符串资源字符串资源,特别是多语言资源,有些Windows应用将字符串资源保存在微软可执行文件中。如何将这些字符串资源从可执行文件中提取出来?Python中,有开源的pefile,可以从网上下载,https://github.com/erocarrera/pefile。安装后,可以通过下面的代码,快速提取出可执行文件中的多语言字符串,这...
2019-03-24 11:31:27 799
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人