I have 2 apps, which are meant for different purpose, where I should not allow user to use both apps in same device. How can I check whether other app installed or not? I think I can do it using Open URL as following by putting app bundle id which is not working, I am stuck to get url for my app EX : "fb://"
if ([[UIApplication sharedApplication] canOpenURL:@"My App URL"]) {
//App installed
}
else{
//App Not installed
}
You have 2 Apps.Now you want to open First App from the Second App.I will give you the step by step instruction please follow that.
My First application name is LinkAppSample and Second application Name is LinkSecondApp
STEP 1: Add the below things in first app LinkAppSample
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>com.example.com</string>
<key>CFBundleURLSchemes</key>
<array>
<string>chatapp</string>
</array>
</dict>
</array>
Then you need to add
<key>LSApplicationQueriesSchemes</key>
<array>
<string>chatapp</string>
</array>
See the below screenshot below
STEP 2: Go to Second App.My Second App Name is LinkSecondApp.Now click LinkSecondApp project.Click TARGETS and click info.Then Click URL Type and add or write or set name in URL Schemes Target->Info->URL types->Add url types
First Click Info of Targets
Then click URL Tpes.Once you click it shos you the + symbol.
Now click + symbol and give the name of the app in URL Schemes.You must set Rote as Viewer
NOTE:Your URL Schemes name must be same(First App Plist Name and Second App URL Schemes name is chatapp here).
STEP 3: Now you must add code in Second application LinkSecondApp for opening the First app.
LinkSecondApp.m
-(IBAction)actionOpenFirstApp:(id)sender
{
NSString *customURL = @"chatapp://";
UIApplication *application = [UIApplication sharedApplication];
NSURL *URL = [NSURL URLWithString:@"chatapp://"];
if ([application respondsToSelector:@selector(openURL:options:completionHandler:)])
{
[application openURL:URL options:@{}
completionHandler:^(BOOL success) {
NSLog(@"Open %@: %d",customURL,success);
}];
}
else {
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Error!" message:@"No Custom URL is defined" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction* ok = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:nil];
[alertController addAction:ok];
[self presentViewController:alertController animated:YES completion:nil];
}
}