如何停止正在运行的tweak,如何重新载入Dynamic Library?

Q1:怎么停止正在运行的tweak呢,我想做一个插件的开关。
Q2:我在App里增加了tweak插件filter.plist中 hook住的 App的BundleID,但是如果不killall SpringBoard的话,hook就没法生效。
请问各位上面的两个问题有什么解决办法吗?谢谢!

  1. 开关就是一个BOOL,在tweak中判断,如果YES,就执行代码,否则不执行;
  2. dylib会在每个进程启动时被CydiaSubstrate加载进那个进程,所以如果你hook的不是SpringBoard而只是一个App,那在添加了一条新的filter后可以直接
system("killall -9 targetApp")

来强制关掉那个进程

谢谢@snakeninny

我问个题外的
dylib的载入 和 dll 不是一个原理吧
dylib 是全部被读进内存后, 即使这个dylib被删除,也不影响读取他的进程的正常运行,我说的对不对?

dll是windows上的东西,具体怎么载入的我不清楚。但dylib是由iOS/OSX上的dyld加载到进程的,一个大概的介绍可以参考MikeAsh的文章
当dylib被全部读入内存后,即使删掉这个文件,也是不影响其附主进程的运行的,你说的是对的

谢谢 你的回答