• Stars
    star
    175
  • Rank 218,059 (Top 5 %)
  • Language
    Objective-C
  • License
    MIT License
  • Created about 11 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Quickly check for and open URLs using iOS app URL schemes.

SSAppURLs

Circle CI Coverage Status

Quickly check for and open URLs using iOS app URL schemes.

SSAppURLs is a tiny UIApplication category that makes it easy to:

  • Check if the current device has an app installed (e.g. Skype)
  • Check if the current device has certain capabilities (e.g. FaceTime)
  • Open an app with a URL scheme and pass some arguments

SSAppURLs, along with SSPreferredBrowser, powers various URL actions and open-in-browser behavior in my app MUDRammer - A Modern MUD Client for iPhone and iPad.

Install

Install with CocoaPods. Add to your Podfile:

pod 'SSAppURLs', :head # YOLO

Examples

Check out Example for an app example.

#import <UIApplication+SSAppURLs.h>

// Does the current device have skype installed?
BOOL deviceSupportsSkype = [[UIApplication sharedApplication] 
                             canOpenAppType:SSAppURLTypeSkype];

// If so, let's make a call!
if (deviceSupportsSkype) {
    [[UIApplication sharedApplication] openAppType:SSAppURLTypeSkype 
                                         withValue:@"415-555-1212"];
}
  
// Does the current device have Chrome installed?
BOOL deviceHasChrome = [[UIApplication sharedApplication] 
                        canOpenAppType:SSAppURLTypeChromeHTTP];

// If so, open a website in chrome!
if (deviceHasChrome) {
	[[UIApplication sharedApplication] openAppType:SSAppURLTypeChromeHTTP 
	                                     withValue:@"http://www.splinesoft.net"];
}
	                                     
// Check for an arbitrary scheme type
BOOL deviceHasTelnetApp = [[UIApplication sharedApplication] 
                           canOpenAppWithScheme:@"telnet"];

// Let's play NANVAENT!
if (deviceHasTelnetApp) {
	[[UIApplication sharedApplication] openAppWithScheme:@"telnet"
	                                           withValue:@"nanvaent.org:23"];
}

Thanks!

SSAppURLs is a @jhersh production -- (electronic mail | @jhersh)