Is there an Android build flag to check for APK versus Instant App version of an App

谁说我不能喝 提交于 2019-12-05 08:46:30
Guillaume

Add to the module build.gradle the dependency : implementation 'com.google.android.instantapps:instantapps:1.0.0' then you will be able to use the function InstantApps.isInstantApp(this).

Please note that you must use Maven Google by changing your repositories in the project build.gradle :

buildscript {
    repositories {
        maven {
            url 'https://maven.google.com'
        }
        jcenter()
    }
    ...
}

allprojects {
    repositories {
        maven {
            url 'https://maven.google.com'
        }
        jcenter()
    }
}

Android Instant Apps API reference

Easiest way is to use PackageManager.isInstantApp() :

https://developers.google.com/android/reference/com/google/android/gms/instantapps/PackageManagerCompat.html#isInstantApp()

Or, a regular (non-appcompat version) https://developer.android.com/reference/android/content/pm/PackageManager#isInstantApp()

Also has an override which accepts package name as a string, which allows to check other apps, if permissions allow.

Yes, You can determine whether the current app is Installed App or Instant app.First of all add the dependency in your feature module build.gradle

api "com.google.android.instantapps:instantapps:1.0.0"

Match you project level build.gradle with this

buildscript {
repositories {
    maven { url 'https://maven.google.com' }
    jcenter()
}...
}

allprojects {
repositories {
    maven { url 'https://maven.google.com' }
    jcenter()
}
}

Finally at runtime you may write

if (InstantApps.isInstantApp(this)) {
        // Do something like, show install button
    } else {
        // Do something like, hide install button
    }
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!