HarmonyOS aop namespace报错

在ts文件中写入下列hook程序不生效:

import fs from '@ohos.file.fs';
import util from '@ohos.util';

export function aoptest() {
  util.Aspect.addBefore(fs, 'writeSync', false, (target, arg) => {
    console.info("aspect");
  });
}
HarmonyOS
2024-12-23 16:13:36
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

fs是namespace,util.Aspect不支持这种方式,可能会导致JScrash。系统API namespace下的方法取决于系统API的实现,参考接口不限制对系统提供的类方法进行插桩。只要类和方法在运行时是实际存在的对象,并且方法的属性描述符的writable字段为true,就可以使用对应接口进行插桩和替换。

https://developer.huawei.com/consumer/cn/doc/best-practices-V5/bpta-application-aspect-programming-design-V5

分享
微博
QQ
微信
回复
2024-12-23 18:09:21
相关问题
Class Router和namespace router有什么区别
2587浏览 • 1回复 待解决
K8s 无法删除 namespace 的问题
3233浏览 • 1回复 待解决
HarmonyOS 关于AOP具体使用方法
1628浏览 • 1回复 待解决
如何对namespace中的函数插桩或替换?
1689浏览 • 1回复 待解决
运行时AOP插桩demo测试
2138浏览 • 1回复 待解决
基于AOP的代码插桩,都有哪些场景?
1899浏览 • 1回复 待解决
如何通过AOP统计方法执行时间
1550浏览 • 1回复 待解决
HarmonyOS 使用云存储接口报错报错
938浏览 • 1回复 待解决
HarmonyOS 首选项报错数据报错
1132浏览 • 1回复 待解决
HarmonyOS getRawFileListSync报错
761浏览 • 1回复 待解决
HarmonyOS 报错2303501
961浏览 • 1回复 待解决
HarmonyOS 报错50001999
720浏览 • 1回复 待解决
HarmonyOS 引入报错
578浏览 • 1回复 待解决
HarmonyOS 报错2300003
747浏览 • 1回复 待解决
HarmonyOS push报错
763浏览 • 1回复 待解决