How could Android Instant Apps affect the existing app? - android

How will the Instant app affect the already existing app ? When its out in the market does it mean that all the existing app must be made compatible to be behave like instant app ?
Does anyone has any idea if these could be integrated with the Hybrid apps?
Will it be using the run-time permission mode ?
What will happen to the games app and other apps that has information stored about the progress of the players and the current state ?
Does this seems to be the future of the apps? What is the actual benefit in having the instant app?

Instant Apps documentation has been published: https://developer.android.com/topic/instant-apps/index.html
Instant Apps are opened through URLs. If the app is installed, then this behaves like a normal deep link. If the app is not installed, the Instant App can be launched instead.
Instant Apps must support runtime permissions.

Android Instant Apps enables native Android applications to run in response to launching a URL, without installing the app. Instant apps can use many Android APIs and you use Android Studio to build them.
How do they work? When Google Play receives a request for a URL that matches an instant app, it sends the necessary code files to the Android device that sent the request. The device then runs the app.
Note: Android Instant Apps only work on Android devices running on Android 5.0 (API level 21) or higher.
Reference:- android Developer Instant app

Related

Android app without instalation?

Last time I've heard about running android app without installing it.
Like "demo app" or something like that.
What doest it mean?
Generally you have to go to Google Play in order to install the app and run it.
It isn't via a browser, because you can supposedly use the android app functions
Instant Apps are the next step in app evolution, a universal Android solution that brings the speed and power of a native app with the ease and immediacy of a web app. They look and operate just like one of the apps that are installed on your phone, but you don’t need to download anything.
Android Instant Apps allow you to use native Android apps in a form that doesn’t even require installing. Which means the users get to experience interactive and smooth interfaces with the tap of a finger.
Note: Android Instant Apps only work on Android devices running on Android 5.0 (API level 21) or higher.
For further info about instant apps you can refer to following link
https://developer.android.com/topic/instant-apps/overview.html#apps-features
An instant app is a portion of your app that will be executed in response to an Url. This was introduced by Google year.
Google play store will download the code necessary to execute the task it is supposed to and it will dispose of the code after the user is done.
You would create an Instant apps if you mean to provide specific feature of your app that does not require the user to download the full app. Ex: watch a video on vimeo by clicking a link on social media
This apps are built using the same process you would use to develop a regular android app but instead of developing all of the features in the same module you divide the features in different modules.
This modules should be very small and have a size limit of 4MB.
Instant apps are currently limited to a few countries, so if you are thinking of developing one and putting in production check the link below for this information and others documents on how to get started.
https://developer.android.com/topic/instant-apps/overview.html
It's Instant App.
Here you have Google documentation

Published an instant app: can't make it to start, how do I troubleshoot?

I've just published my first instant app - for now it's a very basic Hello World, but I've linked it to my personal website.
I've enabled Android App Links on my site, and I've verified that it correctly works: when the 'normal' apk is installed, if I click on my website's link, it does open the app, without asking if I want to open it in Chrome.
But when the apk is not installed, if I click on my website's link, the Instant App doesn't start - instead my website opens in Chrome (or a Chrome tab) and I don't know why.
How do I troubleshoot this?
Note:
I did receive this warning on the Play Store console when I published:
PROBLEM
Some users of this Instant App APKs will not be eligible for any of the APKs in your installed app.
RESOLUTION
Ensure that the targeting of your Instant App APKs matches the targeting of your APKs.
I don't know if it's related, and unfortunately I have no idea what that means or how to fix it...
EDIT 2017-07-01
Actually it started to work after a few days. I guess it means even though the installable app is available on the store after only a few minutes, the instant app is available several days after publishing...
Unfortunately,
I have a new problem now (see this question)
I still don't have an answer for my original question which is how to troubleshoot these problems
Still no idea about the warning - although I guess it's an unrelated issue
This would indicate that there isn't a safe upgrade path to your installed app from your instant app. Some of the validations here are
The instant app permissions should be <= installable app permissions
The device space for installable should not be more restrictive than the instant app. i.e. .
Instant app should not have minSdk < installable app mindSdk
In other words, if the device can run instant app, it should be able to run your installable app.

Is it possible to use published instant apps(BuzzFeed, Wish, etc) on the emulator?

I've run a hello world instant app on an emulator following this Google's tutorial.
Everything worked well, I got the dialog asking for permission to enable instant apps and clicked 'I'm in'. After that, I could also see that instant apps were enabled in Settings > Google > Instant Apps.
But when I open my browser, run a search and click on links from websites that already have published instant apps, such as BuzzFeed, NY Times Crossword and Wish, they just open the regular web page.
I found out those apps watching Google IO 16 and 17 presentations about instant apps. I even tried the link https://www.buzzfeed.com/tasty, featured on this keynote, to no avail.
I suspect that's due to the fact that the current supported emulator doesn't come with Play Store built-in.
I'm also in a country(Brazil) where Instant apps are not supported yet according to this list. But I'm not sure if that impacts on the emulator.
Does anyone know if those are indeed the reasons why I can't check out instant apps already published on Play Store?
Since Brazil is not currently in a list of Android Instant Apps supported countries, this feature is turned off on the real devices, but emulators can still be used for Instant Apps development and testing.
Production level applications, like BuzzFeed, can be launched through Instant Apps only in countries from this list: https://support.google.com/googleplay/android-developer/answer/7381861#production. In all other countries, Instant App URLs like https://www.buzzfeed.com/tasty will proceed to the website, regardless if you’re using a real device or an emulator.
There are possibly two reasons. I recommend following the guide here to set up your emulator. Once you've confirmed that instant apps is enabled successfully via adb shell pm list packages | grep "com.google.android.instantapps.supervisor" and it is enabled in Settings->Google->Instant Apps, then try sending the link as an email to the emulator.
I've found that clicking links within the browser will often times keep you in the browser. But opening the link from Gmail always works for me. I've just checked that it works with Vimeo not too long ago - https://vimeo.com/190063150.
I believe you can't have instant apps for any arbitrary link due to DAL verification. It should be the link of the domain that you own.
https://developer.android.com/topic/instant-apps/getting-started/index.html#app_links
For instant apps, you must set the android:autoVerify attribute to true in all elements. This attribute tells Google to verify your app link with a Digital Assets Links (DAL) file that is hosted on your website and prevents apps from linking to domains that they do not own.
https://developer.android.com/topic/instant-apps/prepare.html#app-links

How runtime permissions are handled in Android instant app?

Android N Developer preview introduced a new feature called Android Instant Apps.
I read basic information about this topic and here is my understanding:
Android Instant Apps enables Android apps to run instantly, without requiring full scale app installation. that means suppose user discovered an app from search, social media, messaging or other deep links, they can directly access Activity belonging to this App,and use functionality within the app, without going to Google Play store, clicking Install App etc. thus bypassing app installation flow.
But then, suppose the Activity which is getting installed through Instant apps requires a Dangerous permission to work, when it will be invoked?
Basically, how android runtime permissions are to be handled in Android instant apps?
As per the Instant Apps FAQ:
How do permissions work in Android Instant Apps?
Android Instant Apps uses the runtime permissions model introduced in Android 6.0. If an app supports the permission model introduced in Android 6.0 (API level 23), it does not require any additional work to become an Instant App that runs on older devices.
No matter what device an Instant App is used on, it will always use the runtime permissions model.

Is Android Instant App different from app streaming?

As from Google I/O 2016 key note, Google has Introduced Android Instant Apps
This is pretty clear from the description that it is going to be possible to download a part of application (that is stream?) when it will be out for the developers to try it.
Couple of posts like This one quotes about Instant Apps :
While this is different from Google's efforts to do app streaming inside search, it's in the same spirit — and gives Google similar access to previously walled-off data inside apps.
I am wondering how it is different from app streaming if the app is going to be installed partially with Android Instant Apps?
Any additional information about this new leap in android development will be helpful.
A module of the app gets downloaded inside a sandbox. As the user navigates to the boundaries of the app more app modules will be downloaded. You as a developer will need to determine when to prompt the user to download the full app. Note that the app state inside the sandbox will not automatically be transferred over when the user downloads the full app. Furthermore, whilst the instant app module(s) will be cached inside the sandbox there is no guaranteed persistence.
Android Instant Apps enables native Android applications to run in response to launching a URL, without installing the app. Instant apps can use many Android APIs and you use Android Studio to build them.
How do they work? When Google Play receives a request for a URL that matches an instant app, it sends the necessary code files to the Android device that sent the request. The device then runs the app.
Note: Android Instant Apps only work on Android devices running on Android 5.0 (API level 21) or higher.
Reference Android Instant Apps

Categories

Resources