问题
Is it possible to add/remove custom URL schemes for my application while it's running? Right now the CFBundleURLSchemes property is set in Info.plist.
回答1:
According to this discussion on Cocoa Dev the answer is no, custom URL schemes can't be registered programmatically. You must specify them in Info.plist
. (but using LSRegisterURL
, you can ask Launch Services to reload your application's Info.plist
if you programmatically change it. But that's ugly.).
回答2:
Launch Services will do that. Have a look at the Launch Services Programming Guide and the Launch Services Reference for details.
(Edit: Launch Services is what you want, but the function I mentioned was for changing the default handler.)
来源:https://stackoverflow.com/questions/5463998/how-to-programmatically-register-a-custom-url-scheme