As soon as I declare iOS SDK classes that do not exist in older iOS versions, my app fails.
Now, from my background with regular external libraries, I would say that I need to dynamically dynamically instead of dynamically statically link UIUserNotificationSettings. But I simply have no idea if that is possible for objcclasses in FPC, and if so, how to do it. Any help and hints would be appreciated

The background of this issue: I want to support UILocalNotification, which works fine on iOS 6/7, but needs registration (to allow the OS to ask the user for permission) on iOS 8. The classes needed for that are not available in previous OS versions.
My app crashes in 7.x simulators, XCode tells me:
dyld: Symbol not found: _OBJC_CLASS_$_UIUserNotificationSettings
My class declaration:
type
UIUserNotificationSettings = objcclass external (NSObject)
public
class function settingsForTypes_categories (types: UIUserNotificationType; categories: NSSet): instancetype; message 'settingsForTypes:categories:';
function types: UIUserNotificationType; message 'types';
function categories: NSSet; message 'categories';
end;
I use the code the following way, but it doesn't matter if I use it at all, so I assume smart linking won't remove the above linking.
var
uns: UIUserNotificationSettings;
[...]
if (UIApplication.instancesRespondToSelector(objcselector('registerUserNotificationSettings:'))) then begin
uns := UIUserNotificationSettings.settingsForTypes_categories(UIUserNotificationTypeBadge or UIUserNotificationTypeSound or UIUserNotificationTypeAlert, nil);
UIApplication_UIUserNotificationSettings(UIApplication.sharedApplication).registerUserNotificationSettings(uns);
end;
I don't want to limit my application to iOS 8 users, which would in an instant rule out most testers I have currently.