facebook-sdk-for-unity
facebook-sdk-for-unity copied to clipboard
FBSDKAppEvents.shared.anonymousID make available in API
What do you want to achieve?
Expected Results
Please make available in Unity SDK api for FBSDKAppEvents.shared.anonymousID
What do you expect to happen?
For proper RevenueCat integration I need access to anonymousID https://www.revenuecat.com/docs/facebook-ads
// REQUIRED: Set the Facebook anonymous Id
Purchases.shared.attribution.setFBAnonymousID(FBSDKCoreKit.AppEvents.anonymousID)
Please make it available
I would like that added as well
Temp walkaround:
#if UNITY_IOS
[System.Runtime.InteropServices.DllImport("__Internal")]
private static extern string GetFbAnonID();
#endif
char* GetFbAnonID() {
Class FBSDKAppEvents = NSClassFromString(@"FBSDKAppEvents");
SEL anonymousID = NSSelectorFromString(@"anonymousID");
if (FBSDKAppEvents && anonymousID) {
id (*imp1)(id, SEL) = (id (*)(id, SEL))[FBSDKAppEvents methodForSelector:anonymousID];
NSString *anonID = nil;
if (imp1 && [FBSDKAppEvents respondsToSelector:anonymousID]) {
anonID = imp1(FBSDKAppEvents, anonymousID);
}
if (anonID) {
return PrivateMakeCString([anonID UTF8String]);
}
}
Class FBSDKBasicUtility = NSClassFromString(@"FBSDKBasicUtility");
SEL FBSDKBasicUtilityanonymousID = NSSelectorFromString(@"anonymousID");
if (FBSDKBasicUtility && FBSDKBasicUtilityanonymousID) {
id (*imp1)(id, SEL) = (id (*)(id, SEL))[FBSDKBasicUtility methodForSelector:FBSDKBasicUtilityanonymousID];
NSString *anonID = nil;
if (imp1 && [FBSDKBasicUtility respondsToSelector:FBSDKBasicUtilityanonymousID]) {
anonID = imp1(FBSDKBasicUtility, FBSDKBasicUtilityanonymousID);
}
if (anonID) {
return PrivateMakeCString([anonID UTF8String]);
}
}
return NULL;
}