/Untranslocator-XMac

Untranslocator allows to get the original bundle path from a translocated Xamarin.Mac app

Primary LanguageObjective-CMIT LicenseMIT

Untranslocator

Build Status

Untranslocator allows to get the original bundle path from a translocated Xamarin.Mac app.

Usage

if a macOS app is translocated NSBundle.MainBundle.BundlePath returns a randomized read-only location - something like:

/private/var/folders/xx/xxxxxxxxxxx/x/AppTranslocation/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/x/MyApp.app

we can use this translocated path and use an object of Untranslocator to retrieve the original bundle path (i.e. /Users/nor0x/Downloads)

var untrans = new Untranslocator();
var path = untrans.ResolveTranslocatedPath(NSBundle.MainBundle.BundlePath);

more info on App Translocation:

https://www.synack.com/blog/untranslocating-apps