I may have missed a big point here, but I can't find anything that refers to Android Performance Tuner (also known as Tuning Fork) and React Native Apps.
In fact, I want the Android Vitals menu to be full of data, and the Google documentation only mentions Android Performance Tuner to generate data. How do I get Android Performance Tuner to work with React Native? Is this only related to game apps? Can I use another library to get this data?
It is not just for games - suppose to work for apps too although I'm not sure if it has any use. There isn't a React-Native package to setup. You need to add native code to the main app file at start up inside the onCreate() method and enable the service via google cloud. You'll be familiar with the flow of adding native code if you've added a splash screen.
The docs are hard to find but it is here:
https://developer.android.com/games/sdk/performance-tuner/custom-engine
I am new to Flutter and dart language. After developing some example apps seeing from the tutorial I have come to know that the simple Tab-Layout App is taking 7MB for APK after release and after installing the APP the size is 27MB. My question is as follows:
What is the difference between the APK Size and Installed APP Size?
When developing an App whether its Native or Flutter, what should we keep in mind that APK size should not be huge or the size of the APP after installing should not be huge?
Keeping in mind of the all pros and cons of Native and Flutter, what is the best approach to develop an Android APP?
Installed App has something like the DOUBLE in space of the standard APK, this is cause by how Android "installs" all Apps. If you open a folder in "/data/app/..." you can see that for each PackageName/App it is stored the standard APK file (the one you release) and there are at least two folders: for libraries and one for optimized code (not accessible/readable from us without Root). These folders contain other extracted and optimized files starting from your APK.
Flutter Apps cannot be smaller than 6-7Mb because it brings all Flutter Core inside them. To "shrink" your App you can follow common rules to shrink any normal Native App.
The best approach? All depends on your skill, how much available time you have to complete the App, how much times the Customer change his minds about the position of some graphic interface, etc... Flutter main website page has written "Flutter is Google’s mobile app SDK for crafting high-quality native interfaces" so the main purpose of it is to quickly create Interfaces. This is good when a Customer interrupts our work every 10 minutes because he wants to change something in the graphic aspect and we cannot manually change many XML and then rebuild a version each time, so Flutter could improve this step a lot. Flutter is even good at initial stage when we are not sure where we will set components/widgets at final stage, so we can move all the stuff in few seconds to check the graphical result. Performance of Flutter Apps are quite good, but not good as a Native App obrliviously. Using Flutter could be the good way when you already know that the final APK will be bigger than 25MB, because in this case 25MB or 25+7MB is not that's difference but the speed (in GUI development) provided from Flutter are something not estimable.
I'm about to develop eCommerce native android app similar to ebay and flipkart but at this point have many doubts they are.
should all the data required to show in app must be fetched using
services at the background and stored in temporary memory before app
is opened or must the request to fetch data must be sent at the click
of button option. because on click of button consumes more time for
fetching images and in case of eCommerce app there will be more
images.
In eCommerce app, using sqlite to store and retrieving data is better
or using preferences or any other better alternative?
Which is the best method to develop eCommerce app i.e hard coding
everything or usi
ng RSS feed option from website or is there any other alternative?
next doubt is regarding size of apk. how to optimally reduce the size
of apk while developing such big app ( well i do know about pro-guard
and lint and remove repeated codes and other stuff but still it
doesn't reduce to that extreme level). i have developed an app
similar to facebook but the size of apk is 16MB which is really very
huge. as per my prediction this eCommerce app might take 20MB but
when checked with flipkart(6.3MB), OLX(4.96MB), Jabong(5.1MB) how is
this possible... the basic helloworld app takes nearly 1MB...
How to optimally reduce the number of server client request to reduce
the hit count in server.
Any advice and help from experienced people will be of great help.
sorry for long post and thanks
I am developing a mobile app targeting the iOS and Android platforms. The app will consist of:
A relatively simple 'user login/signup and listing of database items' type of interface, powered by an already built webservice from and existing web application.
A video capture and upload feature using native plugins.
I have done extensive research on PhoneGap for the last week, and have determined that even considering the well documented issues and limitations of PhoneGap, it is well suited for the 1st part of my app.
However, given the limitations of the PhoneGap Capture API ( org.apache.cordova.media-capture ), it is not appropriate for capturing video for upload, mostly due to the lack of control over video specs. (On most devices, video captures will be enormous HD files that are not suitable for upload, even on Wifi, and certainly not over 3g/4g.)
Given my resources and timeline, I've determined that building native apps in both Java and ObjC are impractical, at least for now. I have very little ObjC and Java experience, but I am fairly confident and eager to learn these languages if need be.
That said, I am considering 2 options:
The first, and probably most rational, is that I pick the platform with the greater market share of my existing user base (iOS), suck it up, and go native.
The second, and perhaps lofty option, is that I develop a hybrid app in PhoneGap, targeting both platforms, and circumvent the limitations of my video capture ability by building native plugins for Java and ObjC using PhoneGap's plugin API, thus reducing development time on the rest of the app, and using native code only where it's needed.
The requirements of my video capture plugin would be as follows:
Have complete control over the specs of the recorded video, most importantly resolution and bitrate. (Presumably with AVFoundation, and the like in Adroid SDK).
Control the user interface of the video capture functionality.
Obviously, I am aware that these tasks are very possible on both platforms when developing in the native api's as is evident by existing apps in the market. (Vine, etc..).
My real question, is what are the limitations, and issues with extending native functionality via PhoneGap's Plugin API? There are almost no examples of work done in PhoneGap with this level of native implementation of video capture. The one example I've found is this plugin, VideoCapturePlus, which although I haven't been able to get to work, seems promising.
I am especially interested to find out if anyone out there has successfully implemented native plugins in PhoneGap with this level of complexity, or if it is a rabbit hole I will wish I hadn't gone down.
I have essentially gotten to the bottom of this question, that I am sure others are and will face. I will address the topic in 3 parts:
Can I do [something] in PhoneGap (as opposed to in native iOS or Android SDK)?
This is a question I'd imagine many developers considering the PhoneGap framework find themselves asking, as did I. The short answer is YES, YOU PROBABLY CAN.
How do I do [something] in PhoneGap?
Plugins! Here's the rub: Cordova (PhoneGap) in all it's brilliance is extremely limited in the way it accesses native hardware features, especially when you get into video/photo/audio capture.
This is where plugins come in. There are thousands of PhoneGap plugins at this point. Many are as simple as 4 lines of Java and Objective C to get over some simple thing that PhoneGap just won't do. Others are large projects with lifecycles of their own.
In my case, it became very clear very early on that I was not going to be able to build my app with the video capture functions that existed in PhoneGap. That said, I went shopping for plugins. By the end of my project it had taken 2 plugins that extended video functionality and four more to do other small various things I needed. In a few cases, the plugins I found did not have everything I needed, and I wound up contributing bits of code. If the projects are active on GitHub, I highly recommend this.
In the end, there were things I wanted to do that I could not find plugins for. I still have plans to build some of my own, but am not there yet. Bottom line: Outside of gaming and other 3d rendering applications, you'll be hard pressed to find something that can't be achieved with a PhoneGap plugin.
For those interested specifically in video capture, these are the 2 plugins that got me over the hump in my project:
VideoCapturePlus
Video Screenshot
Should I build my app that does [something] in PhoneGap?
Of course, this question is up to each developer, and what the goals of the app are. In my case, a simple app that among other things captures and uploads photos and short videos was quite possible. There are certainly cases in which the parameters and goals of the app make it such that native development is the best option.
That said, for most solo devs or small teams with limited resources and little or no Java or ObjC experience, the answer to the question, "Should I consider PhoneGap?", would be [in my best Jim Halpert voice], "Absolutely you should". As an added bonus, I will say this: In my case, the HTML5 layouts, and much of the front end JS that were used for both the Android and iOS versions of my app are largely reusable for the mobile web version of my app. Being able to maintain a single codebase for those three things offers efficiency that even larger resourced organizations shouldn't overlook.
We have a very strong base of iOS apps and salesforce running at the backend. I am trying to get the similar app running on Android but using PhoneGap (not going native).
I had few questions about this:
Does PhoneGap put any limitation on how much RAM can be used for an
app? If yes, how much?
Our iOS apps tend to consume upto 100MB of memory when multiple views and data are loaded in the app, is this feasible using PhoneGap?
CORE data gives me a nice GUI to design my local storage, how can that be achieved in Android?
Is there any way I can import the exact data model from iOS to android?
I spent quite some time searching this but did not get any satisfactory answer. All your help is much appreciated.
PhoneGap doesn't put any limits on how much memory is used. If there are any sort of memory limits it would come from the OS itself.
If you can build it as a website, you can build it with PhoneGap. The only thing to watch out for is if you don't manage your DOM structure you could actually crash the WebView, but if you manage it well you should be fine.
Unfortunately with PhoneGap, especially with offline apps, the only two options you have are localStorage and Web SQL.
AFAIK there is no way of exporting the data model to Android that would be usable with PhoneGap. The closest would be to go though and try to recreate through one of the storage options I listed in 3 that are supported and well documented with PhoneGap.