This class is deprecated.
Starting December 2025, Instant Apps cannot be published through Google Play, and all Google
Play services Instant APIs will no longer work. To continue optimizing for user growth, we
encourage developers to refer users to their regular app or game, and using deeplinks to
redirect them to specific journeys or features when relevant.
Main entry point to APIs for Android instant apps.
Example use:
InstantAppsClient client = InstantApps.getInstantAppsClient(context);
Task<ParcelFileDescriptor> fileTask = client.getInstantAppData();
fileTask
.addOnCompleteListener(fileTask -> readData(fileTask.getResult()))
.addOnFailureListener(exception -> handleException(exception));
Public Method Summary
Task<Boolean> |
areInstantAppsEnabledForDevice()
Checks whether this device satisfied all preconditions to run instant apps.
|
Task<ParcelFileDescriptor> |
getInstantAppData()
Retrieves a
ParcelFileDescriptor
to the caller's instant app's data.
|
Inherited Method Summary
Public Methods
public Task<Boolean> areInstantAppsEnabledForDevice ()
Checks whether this device satisfied all preconditions to run instant apps. Default is false.
public Task<ParcelFileDescriptor> getInstantAppData ()
Retrieves a ParcelFileDescriptor
to the caller's instant app's data.
The file format is Zip, which is compatible with Android's native ZipOutputStream
and ZipInputStream
.
What is in the Zip file?
- Shared preferences files.
- Files in the directory returned by
Context.getFilesDir()
. - Files in the directory returned by
Context.getDatabasePath(String)
, which also includes files created with theSQLiteOpenHelper
class. - Files in directories created with
Context.getDir(String, int)
.
Note: Since instant apps cannot access external storage, no information from external storage will be returned.
Files in directories returned by Context.getCacheDir()
,
Context.getCodeCacheDir()
,
or Context.getNoBackupFilesDir()
are excluded. The files saved in these locations are only needed temporarily, or are
intentionally excluded from transfer operations.
Security Requirements:
- You may only request data for your own package. The package name is implied from
calling
Context.getPackageName()
within your app. - You must sign your instant apps and your installed apps with the exact same key(s). i.e. If your instant app has two certificates, your Installed App must as well.