Replacing a non-native app with a native app in android - android

I have a feeling I already know the answer to this, but I'm still hoping it's possible. Awhile back, I made an app for android using an Adobe Flash trial. Since then, I've made numerous similar apps in Android Studio, which look much nicer and don't require the user to download AIR. For whatever reason, the app I made in Flash is doing really well, despite the fact that it's easily the worst one I've made. What I'd like to do is replace the app with a remade, nicer looking, native version of it. Is this possible somehow?

Yes. The only requirements Google has for Google Play is that your application have the same package name (e.g. "com.example.myapp") and is signed with the same certificate. It also requires a new, higher version code and will prompt a user for a manual update if it requires additional permissions.
Google does not compare the contents of the APKs for similarity, so do what you want as long as you have your certificate.
But - is your "app" an app or a webpage? The Adobe AIR APK is a native app. They just provide a framework and toolset for constructing apps.
http://help.adobe.com/en_US/air/build/WS901d38e593cd1bac1e63e3d128cdca935b-8000.html
More specifically, Adobe uses the same distribution method for AIR apps as native apps, so re-distributing as a native app is possible:
http://help.adobe.com/en_US/air/build/WS901d38e593cd1bac-77bd3ea112e2c0a7ed0-8000.html

Related

Can Android Instant Apps be integrated with Hybrid app?

The Android Instant Apps is a new thing, and I just wanted to know if it can be integrated with the Hybrid app structure (HTML/JS with Cordova wrapper).
I'm not a native app developer so I'm not sure of this myself.
According to Googlers ,well main idea behind instant app is
To make the native app experience as convenient as surfing to a web
site. “Web pages are ephemeral,They appear, you use them, and never
think about them again.” Apps, have lots of friction and
often you only want an app to perform one action or to get a specific
piece of information.
Google's examples of Instant Apps included museum or resort apps with maps and schedules, along with apps that help you pay for parking. These are the kinds of rarely-used apps that are useful in the moment, though you wouldn't necessarily want to install them on your phone beforehand or keep them around afterward. Developers can, however, can provide "call to action" links that encourage users to download and install apps that they find particularly useful.
Instant Apps are a logical evolution of App Links, a Marshmallow-era feature that lets installed apps designate themselves as the default options for opening certain kinds of links. For instance, clicking a link to Pinterest might open up the Pinterest app rather than Pinterest's mobile site—Apple's "Universal Links" in iOS 9 provide similar functionality.
Google requires apps that use App Links to prove that they're associated with the sites they say they're associated with; the exact same sort of verification will be used for Instant Apps.
So if we analyze all the information provided by googlers Instant Apps for a start is only for native apps there is no scope for Hybrid Apps...
Hope this make sense...I am able to clear your doubt..we will know more when..the exact availability of instant apps for both end users and developers will gradually expand access to feature and bring it to users...
Technically, I don't see why not as Instant Apps end up compiling to what is just a regular APK (or set of APKs).
Will it work out-of-the-box? I doubt it, as there may be issues with tooling (which is via Android Studio) as well as runtime issues (Instant Apps have some restrictions on what they can do, see the FAQ).
Is it recommended? Probably not, as the point of Instant Apps is to provide a fast, native app experience. If the hybrid app ultimately loads HTML/JS then there is likely minimal advantage over simply loading an optimized mobile website.

Migrating from Hybrid App to Native App at later point of time

Currently I am planning to use Hybrid App (ionic framework) to develop an initial version of our app. The reason is I am planning to start a startup and currently not in a position to afford individual developer for various platforms (especially for iOS, the developer rate is too costly).
So I decided to use Hybrid App using ionic, and our requirements fits well for hybrid app at-least for initial few releases. But at later point planning to migrate to native Android and iOS when I earn enough funding. Because later versions of app may have features like payment gateway integration, chat features etc.
So my question is, is it possible to release initial version of app using hybrid and at later updates push native version? If yes can someone give me basic idea of how is this achieved so I can take it forward? I searched quite in Google but didn't find enough information regarding same.
Publishing hybrid app on platform specific stores are same process as publishing native app.
You can develop and build application using any cross platform mobile application development tool (i.e. ionic framework or any other) and later easily move to native development tool. You can also develop application on hybrid tool(ionic framework) and build it on native development tool(Xcode or Android Studio) and proceed further for publishing on store.
In Android, package name(application ID) should be same for different versions of app binary. Also signing certificate remain same during version change.
In iOS, Bundle ID must be same for different versions/builds of app binary. Apart from this, provisional profiles and certificates also need to be same.
It is possible unless the binary have the same bundle identifier.
You may first release an app with Ionic framework and later push a native version of it. One thing is that the two binary have to have same bundle identifier.
You can surely do by keeping package name same at google playstore or say bundle identifier at App store. It will replace your old apk or ipa file with code using native APIs at later point in time.

What is the best options for exporting Adobe AIR application?

I code Adobe AIR games with Flash Builder IDE. When exporting release version, the Android one offers two options: one with embedded active runtime and other with shared AIR.
Which is the best option should we choose? In case we select shared AIR, is any risk for our games? I mean, is this true that all Android device always have AIR now? (For us a smaller APK is always better, right? :D)
Normally which option do you choose?
It is not true that all Android devices have AIR installed. Likely it's far from it (though unfortunately I have no empirical data to give you - other than Adobe's blog which in Spring of 2014 claimed 50 million+ installs)
So while you will hit a very sizable % of potential users (using shared AIR runtime), there is no guarantee that the end user will have the correct (or any) version of AIR installed on their Android device.
So if you want to target the broadest audience possible (at the expense of filesize), you would want to export with the run time embedded.
Of course, some users will be put off by your app if it's too big (especially the gamer crowd) so you have to balance that with having to inconvenience some users with downloading AIR first.
Only you can decide what is best and you should consider the following:
Who is my target audience? (gamers are more likely to have AIR already installed), casual users are way less likely to bother with AIR or know anything about it or updating it
How big is my app without the runtime? If you're app is 200mb by itself, then adding the runtime doesn't really make much difference. But if your app is only 2mb, then you're getting a 4-5x bloat.
You do want embedded since this is a guaranty that your game will work correctly. If you choose shared then your app won't install on system with an older AIR runtime version and user might no know how to update it so they won't be able to try your app. Embed and you avoid all these potential problems.

Service like testflight for iOS + Android + BlackBerry

I have an application built with PhoneGap, and I want to send it to my clients with an elegant interface and get feedback. I have used testflight before for iOS, but it is not available for Android or BlackBerry.
I installed HockeyKit on my server. The alpha version of HockeyKit supports Android but there are a lot of files to upload and organize.
Is there any solution that can handle all three platforms - iOS, Android and BlackBerry?
AppBlade supports all three of the platforms you are looking for. To be honest I have only used them for Android, but it worked pretty well for that. I also got some great support from their engineers when I had questions and they also seemed to be fairly responsive to feature requests.
Knappsack sounds like it might fit the bill. It's a mobile application management platform that allows over the air installation of your apps and fine grained control of the users that have access to said apps. It's open source, so you can install it on your own server, but there is also a free tier that may suit your needs.
Can try HockeyApp, but it does not work with Blackberry. It is the best analog testflight.
It's early 2015 now and the solutions listed above either don't exist any more, or aren't free if you have more than a few apps/testers.
The best TestFlightApp.com alternative that I have found is Crashlytics. They support iOS and Android (no Blackberry).
Here's some info on the service: http://www.crashlytics.com/blog/launching-beta-by-crashlytics/
And here you can sign up: http://try.crashlytics.com/beta/
My customers prefer it to TestFlight, and for me as a developer it's also easier because they have an OS X app through which I can upload the archives and invite new testers (TestFlight's desktop app was broken for me).
Another really nice feature that Crashlytics offers is that (if you enable this feature), the OS X app will automatically upload the symbol files. When the app crashes for your testers, you'll get an email (when it's a new issue) and you can view statistics and stack traces of the crashes that occurred.

How can I deploy android apps using a manifest file, similar to iOS devices, without using an app store?

I want to deploy an Android app in a similar fashion as the Wireless, Over-The-Air method that exists for iOS devices. That is, setup a web page and the user clicks a link from his device that includes the manifest (xml) file, containing information on how to download the app. This works well on iOS devices, and I thought Android may have something similar.
How do I go about this?
Thank you for any help.
Please the comments above. Have the correct MIME settings, link to the apk, and make sure unknown sources is checked on the device to allow non-market apps.
Since you seem to imply an app market / store is not involved in the iOS case, it seems you might be talking about an offline-cacheable "web app" rather than a native iOS application.
The android equivalent is: on devices where the offline web app capability exists, just visit the same web page (referencing an html5 manifest with appropriate mime type, etc) you are using for iOS. Perhaps you will ultimately end up with platform-specific refinements, but the basic idea is portable.
Or perhaps you just mean that a desktop/laptop need not be used to open obtain the app. On Android, that has been the case since day 1 - the primary market client is on the device, with over-the-air install. You can send an android device to the market with a market:// url. The ability to trigger an install from a web browser running on something other than the device is a more recent and still secondary capability on android.
Finally, android does offer the ability to side load native applications, something that has no iOS equivalent outside of jailbreaking or having a developer account. Most of the responses seem to concentrate on this, but it's not clear if that is what you are actually asking for.

Categories

Resources