Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot able check any new App installed or not in IOS. Working Fine in Android #27

Open
ChandreshRana opened this issue Sep 18, 2020 · 3 comments

Comments

@ChandreshRana
Copy link

ChandreshRana commented Sep 18, 2020

Hi @redpandatronicsuk,

I want to check app installed or not in device, not from APP_LIST
I found these two methods in package for check IOS. But it's not work.

FOR IOS,

static isAppInstalled(key) {
      return Platform.select({
      ios: () => { return this.isAppInstalledIOS(key); },
      android: () => { return this.isAppInstalledAndroid(key); }
   })();
}

static isAppInstalledIOS(key) {
   return this.checkURLScheme(APP_LIST[key].urlScheme, APP_LIST[key].urlParams);
}

FOR ANDROID,

static checkPackageName(packagename) {
    return new Promise((resolve, reject) => {
       CheckPackageInstallation.isPackageInstalled(packagename, (isInstalled) => {
          resolve(isInstalled);
       });
    });
}

Need some solution like the above android implement here.

Please give some solution regarding to check If the app is installed in the IOS device or not

@amit13091992
Copy link

Did anyone got some solution for this?

@aGORyan
Copy link

aGORyan commented Feb 15, 2021

I'm using checkURLScheme and it only works for Android. iOS always comes back False.

AppInstalledChecker.checkURLScheme('slack').then((isInstalled) => { if(isInstalled) {...} } });

@jagwingchoy
Copy link

jagwingchoy commented Mar 13, 2021

For some of you might not know, Apple has restricted to call other apps if you haven't added the scheme into info.plist starting on iOS 9.0.

So if you want to check an app is installed or not in iOS app,
first you need to add the URLScheme into info.plist, and then call the function in this package again.
Otherwise, you will always get false for the response.

For further information, please read the important note in this official document:
https://developer.apple.com/documentation/uikit/uiapplication/1622952-canopenurl#discussion
https://reactnative.dev/docs/linking#canopenurl

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants