以编程方式查找应用程序的URL

我需要从我自己的应用程序中启动另一个应用程序,但我没有它的URL。 所以我的问题是:有没有办法find另一个应用程序的URL基于它的包标识符或trackid编程?

不,没有办法以编程方式确定应用程序的自定义URLscheme。 一个应用程序的自定义scheme,如果有的话,可以完全无关你可能了解的任何应用程序。

确定scheme的唯一方法是访问应用程序的Info.plist文件,除非您在越狱设备上,否则这不能在运行时完成。

如果您只想启动其他应用程序,则可以使用ios private api。

@interface PrivateApi_LSApplicationWorkspace - (bool)openApplicationWithBundleID:(id)arg1; //LSApplicationWorkspace - (NSArray*)privateURLSchemes; //LSApplicationWorkspace - (NSArray*)publicURLSchemes; @end PrivateApi_LSApplicationWorkspace* _workspace; _workspace = [NSClassFromString(@"LSApplicationWorkspace") new]; [_workspace openApplicationWithBundleID:bundleIdentifier]; NSArray* privateUrls = [_workspace privateURLSchemes]; NSArray* publicUrls = [_workspace publicURLSchemes]; 

检查https://github.com/wujianguo/iOSAppsInfo

Interesting Posts