Finder にコードを挿入する Simbl プラグインを作成しました。それはうまく機能しますが、再起動するたびに Finder を再起動して、コードが自分自身を適切に挿入できるようにする必要があります。
だから私はこの LaunchAgent を作りました:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.overlay.launcher</string>
<key>KeepAlive</key>
<false/>
<key>RunAtLoad</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/bin/bash</string>
<string>-c</string>
<string>killall Finder; open /System/Library/CoreServices/Finder.app</string>
</array>
</dict>
</plist>
私のプラグインは、ファイルにオーバーレイまたはバッジを表示するだけです。
より良い方法はありますか?
3 日以来、私は mach_inject を使用しようとしましたが、もう少し複雑で、プラグインを Finder に適切に挿入する方法がわかりません。私のプラグインはオブジェクティブ C にあり、swizzle メソッドを使用して Finder のメソッドをオーバーライドしました。これを mach_inject で行うことは可能ですか?