这段时间一直在做工业自动控制方面的项目,PLC使用的是 Siemens,当时上位机用的是Siemens的 WinCC,其使用的改的不伦不类的C,让我实在无法忍受,缺少事件驱动,简直不能称之为现代软件。在Siemens的 BBS上潜水多日以及跟北京的工程师浪费无数口水之后,终于找到了我认为是将来自控软件应用的方向, OPC。 OPC分两大部分,一是OPC Serv
Poco的介绍和入门教学前言前面我们已经介绍了基于图像识别的测试框架Airtest,通过图像识别,已经可以编写大部分的测试脚本。但是在某些特殊情况下,例如对于游戏或App里的动态元素,通过图像识别定位较为困难。所以,我们的Airtest Project解决方案也提供了另外一种基于UI控件搜索的自动化框架 Poco,下面我们来通过一个示例来看看Poco如何使用。示例原生应用对于Android和iOS
转载 2023-10-13 09:37:52
204阅读
一、Android网络通信  android网络通信一般有三种:java.net.*(标准Java接口)、org.apache接口(基于http协议)和android.net.*(Android网络接口),涉及到包括流、数据包套接字(socket)、Internet协议、常见Http处理等。android 内置HttpClient,简化和网站间的交互。但是不支持Web Services,需要利用k
## Android不同应用Activity通讯 ### 1. 流程概述 在Android开发中,不同应用的Activity之间可以通过Intent进行通讯。下面是整个通讯流程的概述: ```mermaid pie title 通讯流程 "应用1" : 60 "应用2" : 40 ``` 1. 应用1需要与应用2的Activity进行通讯,首先需要在应用1中创建一个Intent
原创 2023-11-22 08:44:34
13阅读
最近有一个客户有这样的需求:1、在【设置】--->【无障碍】中添加一个开关按钮。            如果打开开关的话,双击某个物理按键的时候,打开闪光灯,再双击该物理按键的时候,关闭闪光灯。       &nb
介绍这个壳的核心——字节码解释器,它参考了dalvik虚拟机的解释器。不需要hook、注入。目前只支持算数运算指令。我个人把dalviki指令分为这么几类:算数运算指令。引用类指令。如const-string、invoke-kind,这类指令需要引用dex的资源。其他指令 解释执行算数运算指令较为简单。引用类指令的实现需要解析dex文件的格式,把class、method、field、string等
转载 2023-07-24 23:46:20
114阅读
绪论在Android(1)中介绍了基本概念,现在正是开始进程通信实质内容。 将后台服务单独放到一个进程中,如果一个Service对应一个Binder显然会使代码臃肿,同时打开进程面板发现多个后台服务都在运行。为了防止多个Servcie出现,设置不同Binder放在同一个Service,暴露一个BinderPool(其本身也是一个Binder)接口用于获取Service的特定Binder。 实现
转载 11月前
33阅读
# 如何在 Android 应用中限制通过 WIFI 通讯 在现代的 Android 应用开发中,有时我们可能需要限制应用在某些网络环境下的通讯。例如,我们可能希望应用只能通过 WIFI 进行数据交换,而在移动数据网络上则无法进行通讯。这篇文章将为你提供一个完整的实现流程,并详细讲解每一步所需的代码。 ## 流程概览 以下是实现“限制应用通过 WIFI 通讯”的基本步骤: | 步骤 | 描
原创 8月前
108阅读
使用AIDL进行跨进程通信 AIDL是Android Interface definition language的缩写,是一种Android内部进程通信接口描述语言,通过AIDL可以定义进程间的通信接口。 AIDL支持的数据类型: 基本数据类型(int,long,char,boolean,double等); String和C
Android最早采用的多媒体框架是OpenCore(PacketVideo)。1. OpenCore概述OpenCore的代码非常的庞大,它是一个基于C++的实现,定义了全功能的操作系统移植层,各种基本的功能均被封装成类的形式,各层次之间的接口多使用继承等方式。OpenCore是一个多媒体的框架,从宏观上来看,它主要包含了两大方面的内容:* PVPlayer:提供媒体播放器的功能,完成各种音频(
转载 2023-10-12 17:37:31
70阅读
poc实际上就是一段漏洞利用代码,以下是最近炒得很火Android签名验证漏洞POC,来自https://gist.github.com/poliva/36b0795ab79ad6f14fd81 #!/bin/bash 2 # PoC for Android bug 8219321 by @pof 3 # +info: https://jira.cyanogenmod.org/browse/C
转载 2023-07-12 22:59:14
0阅读
CVE-2022-21999(CVE-2022–22718)是微软2月周二补丁所爆出来的打印机本地提权漏洞。其本质上是CVE-2020-1030的绕过。 一、 漏洞信息CVE-2022-21999(CVE-2022–22718)是微软2月周二补丁所爆出来的打印机本地提权漏洞。其本质上是CVE-2020-1030的绕过。二、 测试环境及漏洞复现测试环境POC
JAVA第三次blog总结0.前言  这是我们在博客园上第三次写博客,也是本学期最后一次的JAVA学习大总结。现在我们的JAVA已经接近尾声了,对于编程思想和方法的改变依旧是难点,但是经过这一段时间的学习还是让我在OOP思想的理解上有了很大的进步。特别是经过C语言的补考之后我也更加体会到了面向过程程序设计和面向对象程序设计的不同,也就是OPP和OOP的不同。在最后这篇blog中将针对最近
转载 2023-09-07 23:52:59
67阅读
两个应用之间怎样传值。事实上这个标题太水了,专业的说法是“两个进程间怎样传值”,什么?。还不够专业,好吧,你淫了。“进程间通信”事实上更专业,这回你总惬意了吧!顺带说一下,简写成IPC:Inter-Process Communication。兄弟们。如果你们从搜索引擎或者其它途径找到这篇文章的话,说明你的Android技术已经提升到一个非常高的层次了哦,嘿嘿~为什么这么说呢?由于不管哪个平台。线程
# Android中多应用间的通讯Android开发中,不同应用之间的通讯是一个重要的话题。尤其是当我们需要在不同的应用之间共享数据、调用服务或者发送广播时,如何进行有效的通讯是非常关键的。本文将介绍在Android中多应用间的通讯方式,并提供相应的代码示例。 ## 1. Intent Intent是Android中用于在不同组件之间传递消息的基本机制。通过使用Intent对象,我们可以
原创 2023-08-17 18:40:28
20阅读
目录第一节:AIDL实现远程服务的通信一、远程服务的开启二、远程服务的通信第二节:Android线程间通信一、什么是多线程?二、ANR 的基础知识及产生1、原因:2、三种情况:三、线程四、实现的两种方式:五、线程间通信第三节:Socket&Https通信一、什么是SocketUDP:DatagramSocket:DatagramPacket:TCP:ServerSocketSocket二、
转载 2023-09-04 12:30:04
62阅读
一、背景介绍 随着漏洞类型的日益复杂化,漏洞检测设备的局限性也越来越突出。很多漏洞无法通过现有的安全设备检测出来或不能够及时、有效的检测出来,此时需要通过POC漏洞检测技术来发现。 POC全称“proof of concept”中文意思是:漏洞概念验证。通常由一段漏洞验证代码或者漏洞检测数据。通过对检测目标发送此代码或数据后,通过被检测目标返回的信息特殊性,判断漏洞的实际存在与否。 目前市面上的大
开闭原则开闭原则——Open Close Principle OCP定义:软件中的对象(类、函数、模块)应该对于扩展是开放的,但是,对于修改是封闭的。在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会将错误引入原本已经经过测试的代码中,破坏原有系统,因此,当软件需要变化时,我们尽量通过扩展的方式来实现变化。而不是通过修改已有代码来实现。示例代码:Android中的图
转载 2023-10-27 07:25:59
31阅读
1,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP在编程历史上可以说是里程碑式的,对OOP编程是一种十分有益的补充。AOP像OOP一样,只是一种编程方法论,AOP并没有规定说,实现AOP协议的代码,要用什么方式去实现。OOP侧重静态,名词,状态,组织,数据,载体是空间;AOP侧重动态,
转载 2023-07-05 18:17:11
54阅读
主从同步。第一次同步时,主节点做一次bgsave,并同时将后续修改操作记录到内存buffer,待完成后将rdb文件全量同步到复制节点,复制节点接受完成后将rdb镜像加载到内存。加载完成后,再通知主节点将期间修改的操作记录同步到复制节点进行重放就完成了同步过程。
转载 2023-08-03 09:24:08
71阅读
  • 1
  • 2
  • 3
  • 4
  • 5