Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by String className
Java Agent大揭秘:5步带你玩转大厂必备神器!
🔥关注墨瑾轩,带你探索编程的奥秘!🚀 🔥超萌技术攻略,轻松晋级编程高手🚀 🔥技术宝库已备好,就等你来挖掘🚀 🔥订阅墨瑾轩,智趣学习不孤单🚀 🔥即刻启航,编程之旅更有趣🚀 嗨,小伙伴们!今天我们要一起探索的是Java世界里一个超级酷炫的工具——JavaAgent。你可能会问,这玩意儿到底是什么?为什么大厂都在用它?别急,我们会一步步揭开它的神秘面纱,让你也能轻松上手这个强大的开发利器。准备好了吗?让我们开始吧! 1.
C# WPF 截屏截图功能
【SnapShotWPFLibrary】 WPF仿QQ、微信截图功能,功能主体源于【SnapShotWPFLibrary】,增加辅助捕获窗口、反向拖动、选框区域边界、支持DPI缩放等。 实现QQ、微信截图辅助选中窗口区域。 1.
Observability Agent Architecture
Observability agents are essential components in modern software development and operations. These software entities act as data collectors, processors, and transmitters, gathering critical telemetry data from applications, infrastructure, and network devices. This data is then sent to centralized observability platforms where it can be analyzed to gain valuable insights into system performance, identify issues, and optimize operations.
Exploring Java Agent Programming
Java Agent Programming is a powerful feature that allows developers to instrument Java bytecode at runtime. This capability is incredibly useful for profiling, monitoring, logging, and many other advanced functionalities that require altering the behavior of Java applications without modifying the source code. What is a Java Agent? A Java Agent is a special type of library that can be attached to the Java Virtual Machine (JVM). It can be used to modify existing classes or load new ones.
高通Android 12/13冻结应用
最近开发SDK遇到冻结应用需求,于是简单记录下。总体而言比较简单,调用系统接口实现此功能。 涉及类与方法 IPackageManager .aidl # * As per {@link android.content.pm.PackageManager#setApplicationEnabledSetting}.
远程热部署的落地与思考-动态编译篇-51CTO.COM
远程热部署(代号名称Mark42、Jarvis)是参考美团Sonic并结合转转的业务场景研发的一款热部署组件,由Java Agent与IDEA插件组成。 整个热部署全流程涉及知识范围广泛,三言两语无法描述清楚,全流程会拆分成专题的形式进行分享。本文主要选讲在落地过程中遇到的一些Sonic未提及的问题与自己的思考感悟。 通读前建议阅读美团原文:远程热部署在美团的落地实践,原文讲述到相关技术介绍、原理、实现方案等不再赘述。 1、背景 1.1 、真实工作场景 某次前后端联调时的对话(部分内容存在虚构): H师傅:果子果子,你这接口返回的结果好像不太对啊,是不是写反了啊~ 我:啊,不能吧,稍等我看看哈~ H师傅:你看一下~ 我:woc,大于等于写反了,我改一下~ H师傅:好小子,抓紧抓紧~ 我:改完了,就一个符号,已经在编译部署了~ 🕙五分钟后...... 我:部署完了,你再看一下~ H师傅:好了,没问题了~ H师傅:果子,这里返回的文案要不要把最后一句删掉,不太通顺~ 我:有道理,PM同意了,我删一下~ 🕙又过了五分钟......
How to dynamically add an HTTP Interceptor to a Spring program by mounting a Javaagent
Injecting code to print HTTP request headers dynamically into a Spring application using a Java agent and ASM requires careful bytecode manipulation. Below is a specific and detailed example demonstrating this process. Please note that this example is simplified and may not cover all edge cases.
Hacking Protected Java-Based Programs
This article provides examples of hacking techniques that can help Java developers avoid vulnerabilities in their programs. It is not intended to train hackers but rather for naive developers who think that standard obfuscators will save them from their intellectual property theft. There will be logical gaps in the text, but only for brevity. Any experienced developer or hacker can easily complete them. All code examples are taken from real applications. Case 1.
Android应用启动流程:从启动到可交互的过程解析-阿里云开发者社区
2023-10-24 7 简介: Android应用启动流程:从启动到可交互的过程解析 关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 @TOC 我们继续总结学习Android 基础知识,温故知新。 还是在多年前做系统应用开发的时候,通过编译源码学习了一遍APP的启动过程, 最近在整理应用启动优化相关的文档,打算重新梳理一遍,并整理成一个通俗易懂的文档,以备后面查看。 在学习过程中,大家最好是把源码下载下来。 1.1 启动知识储备 启动过程比较复杂,涉及到的知识点非常多,建议通过其他文章进行学习。 1.2 Zygote进程 Zygote进程是Android设备启动时由init进程创建和启动,之后不断接收来自应用程序的请求。 Zygote进程预先创建一个虚拟机和一些共享资源,以提高应用程序的启动速度和系统资源的利用效率。 同时,Zygote进程也负责处理应用程序进程的环境初始化和加载核心类库等操作。...
Java进击框架:Spring-Bean初始化过程(五)-CSDN博客
前言 本章节主要介绍,面试中经常问到的Spring-Bean初始化过程。 接下来会通过以下代码,进行debug调试,讲解(spring版本为5.3.23,源码太长会转换为图片,节省字数,提高阅读性)。 public class Test { public static void main(String[] args) { ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); Test bean = applicationContext.getBean(Test.class); bean.a(); applicationContext.close(); } public void a(){ System.out.println("方法调用"); } public void init(){ System.out.println("初始化"); } public void destroy(){...
Android学习之路(14) Context详解
在 Android 开发中、亦或是面试中都离不开四大组件的身影,而在创建或启动这些组件时,并不能直接通过 new 关键字后跟类名来创建实例对象,而是需要有它们各自的上下文环境,也就是本篇文章要讨论的 Context。 1.1 Context 概述 Context,字面意思:语境、环境、上下文,在 Android 系统中,可以理解为当前对象在应用程序中所处的工作环境。其内部定义很多访问应用程序环境中全局信息的接口,通过它可以访问到应用程序的资源有关的类,如:Resources、AssetManager、Package 及权限相关信息等。还可以通过它调用应用程序级的操作,如:启动 Activity 和 Service、发送广播等。 再来看一下官方对于 Context 类的注释: /** * Interface to global information about an application environment. This is * an abstract class whose implementation is provided by * the Android system.
Android应用启动流程:从启动到可交互的过程解析_Android西红柿的博客-CSDN博客
关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 我们继续总结学习Android 基础知识,温故知新。 还是在多年前做系统应用开发的时候,通过编译源码学习了一遍APP的启动过程, 最近在整理应用启动优化相关的文档,打算重新梳理一遍,并整理成一个通俗易懂的文档,以备后面查看。 在学习过程中,大家最好是把源码下载下来。 1.1 启动知识储备 启动过程比较复杂,涉及到的知识点非常多,建议通过其他文章进行学习。 1.2 Zygote进程 Zygote进程是Android设备启动时由init进程创建和启动,之后不断接收来自应用程序的请求。 Zygote进程预先创建一个虚拟机和一些共享资源,以提高应用程序的启动速度和系统资源的利用效率。 同时,Zygote进程也负责处理应用程序进程的环境初始化和加载核心类库等操作。 每当有新的应用程序启动请求到达时,Zygote进程会fork出一个子进程(应用程序进程)来运行该应用程序。 1.3 SystemServer进程...
Java Instrumentation
首页 秒懂百科 特色百科 用户 知识专题 权威合作 播报 编辑 锁定 讨论 上传视频 特型编辑 程序代码 本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! Java Instrumentation是Java SE 6中的新特性,通过Java 代码即 java.lang.instrument可以实现instrument用Java代码的方式解决问题的一个功能。 外文名 Java Instrumentation 性 质 程序语言 适用领域 计算机 Java Instrumentation定义 编辑 播报 使用 Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义。有了这样的功能,开发者就可以实现更为灵活的运行时虚拟机监控和 Java 类操作了,这样的特性实际上提供了一种虚拟机级别支持的 AOP 实现方式,使得开发者无需对 JDK 做任何升级和改动,就可以实现某些 AOP 的功能了。 在 Java SE 6 里面,instrumentation...
Unity中常见的设计模式_Asklyw的博客-CSDN博客
前言 设计模式是一系列被广泛使用且具有相似解决方案的问题或问题实例的解决方法。它们是软件设计领域中的通用解决方案,可以帮助开发人员轻松地解决常见的软件设计问题。对于Unity开发者来说,熟悉并掌握常用的设计模式可以帮助我们更好地组织和管理代码,提高代码可读性、可维护性和可扩展性。 篇博客将会介绍Unity中的23种常用设计模式,每种设计模式都会给出详细的示例代码。希望这篇博客对Unity的开发者有所帮助。 1.
Android 12系统源码_SystemUI(一)SystemUI的启动流程
Android 的 SystemUI 其实就是 Android 的系统界面,它包括了界面上方的状态栏 status bar,下方的导航栏Navigation Bar,锁屏界面 Keyguard ,电源界面 PowerUI,近期任务界面 Recent Task 等等。在 Andorid 系统源码中,package/apps下放的是系统内置的一些 app,例如 settings,camera,Phone,Message 等等。而在 framework/base/package 下,它们也是系统的 app,SystemUI 就在此目录下。它控制着整个Android系统的界面,但其实他也是一个 app,不同于一般的 app,它不可卸载也不可以被第三方应用替换。对于用户而言,SystemUI 的改动是最能直观感受到的。因此,每个 Android 版本在 SystemUI 上都有比较大的改动。而对开发者而言,理解 Android SystemUI 对优化Android系统界面,改善用户体验十分重要。因为SystemUI 是系统应用,所以它也是一个 APK,有入口...
Instrumenting Java Code to Find and Handle Unused Classes
This blog post is about writing a Java agent and instrumentation code to find unused classes and dependencies in your project. Knowing which classes and dependencies are not used in your application can save you from considering the bugs and problems in these dependencies and classes. There a multiple tools out there, for gradle and maven (thanks, Marit), that do this statically or dynamically (like the one described in the paper Coverage-Based Debloating for Java Bytecode, thanks, Wolfram).
远程热部署的落地与思考-动态编译篇_ITPUB博客
来源:转转技术 1、背景 1.1 、真实工作场景 1.2、项目背景 2、预期目标 3、选讲问题分析 4、方案选择 5、探索实践 6、总结与展望 远程热部署(代号名称Mark42、Jarvis)是参考美团Sonic并结合转转的业务场景研发的一款热部署组件,由Java Agent与IDEA插件组成。 整个热部署全流程涉及知识范围广泛,三言两语无法描述清楚,全流程会拆分成专题的形式进行分享。本文主要选讲在落地过程中遇到的一些Sonic未提及的问题与自己的思考感悟。 通读前建议阅读美团原文:远程热部署在美团的落地实践,原文讲述到相关技术介绍、原理、实现方案等不再赘述。 1、背景 某次前后端联调时的对话(部分内容存在虚构): H师傅:果子果子,你这接口返回的结果好像不太对啊,是不是写反了啊~ 我:啊,不能吧,稍等我看看哈~ H师傅:你看一下~ 我:woc,大于等于写反了,我改一下~ H师傅:好小子,抓紧抓紧~ 我:改完了,就一个符号,已经在编译部署了~ 🕙五分钟后......
Living in the Matrix with Bytecode Manipulation
You are probably all too familiar with the following sequence: You input a .java file into a Java compiler, (likely using javac or a build tool like ANT, Maven or Gradle), the compiler grinds away, and finally emits one or more .class files. Figure 1: What is Java bytecode? If you run the build from the command line with verbose enabled, you can see the output as it parses your file until finally it prints your .class file.
Easily Create Java Agents with Byte Buddy
InfoQ Homepage Articles Easily Create Java Agents with Byte Buddy Dec 08, 2015 19 min read Write for InfoQ Join a community of experts. Increase your visibility. Grow your career.Learn more A Java agent is a Java program that executes just prior to the start of another Java application (the “target” application), affording that agent the opportunity to modify the target application, or the environment in which it runs.
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with String
Contact String, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack