Build an hybrid App with Angular2/Ionic2 - Android Software Development

Hybrid apps have many benefits specifically in terms of platform support, one code for Android, IOS, Windows Phone and more...
There are several framework for building a hybrid app . But the goal of this post is to talk about Angular2 and Ionic2 (how to start a project, experience back ...). If you have experience with Angular Ionic and V1, forget it, there is a huge progress on performance.
http://ionicframework.com/docs/v2/getting-started/installation/
To start the development: see this link.
For IDE, there are several choices:
WebStorm
Atom
Visual Studio Code

Performance side, there are no problems?

The Hybrid App will still slow as a native application. But there is a significant gap between Angular1 and Angular2.
The app in my signature is made with Ionic 2, you will make an idea:
https://play.google.com/store/apps/details?id=app.xoonity.OpenRssReader2015

Related

I am done with Sense

Sense UI is slow on first-generation Android phones, and all the attempts to make it fast only result in a flaky, weird experience.
The framework and everything else is closed-source, what do you expect?
All we can do is extract the APKs and modify images and maybe tweak the AndroidManifest.xml or other xml files. Even if we can extract the bytecode (if that's what it's called for the DalvikVM), it still isn't as open as an AOSP build.
The only reason I flashed Rosie/Sense UI ROMs were to get a nice homescreen (which was slow) with nice widgets and a browser with Flash (that was slow and incompatible but still useful for simple stuff).
I would have fun with the ROM for a while, but when I needed to be productive, like Google something quickly or add a note in AK Notepad, it was painfully slow.
Android 2.2 Froyo is amazing. It has many features, the most important IMO being a reliable JIT compiler for the DalvikVM, and Flash 10.1 coming to the browser OFFICIALLY!
When the source for Android 2.2 is released and Cyanogen makes a release for the G1/Dream, I'm stuck on that until I get a super Android phone with a full QWERTY like the G1
Sense is also UGLY.
As for this flash thing... its not going to work on your phone. Compiled for a different CPU.
Nothing lost there though, flash is terrible trash that the world would be MUCH better off withOUT.
lbcoder said:
Sense is also UGLY.
As for this flash thing... its not going to work on your phone. Compiled for a different CPU.
Nothing lost there though, flash is terrible trash that the world would be MUCH better off withOUT.
Click to expand...
Click to collapse
Did Flash murder you in a previous life?
It seems 50% of your posts here are about how Flash is the end of civilization?
Flash is a dreadful battery/CPU hog, and I suspect the 'net, as Apple claim, would be better off without it.
That said, given the propensity of web designers to use nonstandard, bloated, un-necessary flash widgets that break navigation everywhere in their pages, making them utterly useless to those with old machines, accessibility needs/disabilities, etc I guess it's probably better to have it than not. Flash 10.1 under FroYo is only marginally quirky on my Desire. Getting there!
Sense, OTOH, I miss... LauncherPro just isn't as pretty. But I think on older hardware like the G1, I'd agree with the OP. It's not necessary to get the most out of Android and if it's causing slowdowns, it's a bit counter-intuitive to the actual purpose of a mobile phone.
Azurael said:
That said, given the propensity of web designers to use nonstandard, bloated, un-necessary flash widgets that break navigation everywhere in their pages, making them utterly useless to those with old machines, accessibility needs/disabilities, etc I guess it's probably better to have it than not. Flash 10.1 under FroYo is only marginally quirky on my Desire. Getting there!
Click to expand...
Click to collapse
How about just not visiting those websites? Most even halfway marginal websites will provide "if (no flash) then show these links instead", of the rest, you can certainly get the information somewhere else, or failing that, you probably don't want it anyway (the developer is obviously retarded...)
The big important thing to note is that the web is changing. There is MUCH MUCH MUCH less flash around than there was 10 years ago. In fact, I can't think of a single site that actually still *requires* it (except maybe a few sites hosting videos of retards doing stupid crap). I can think of a few that have flash ads -- in these cases, NOT having flash dramatically improves your experience.
Different architectures
I remember a while back that there was a bug in Sense on the Hero where the package name (com.google.maps) would be displayed instead of the actual application name (Maps).
HTC acknowledged the problem and fixed it, but that's the problem with Sense; if it were open-source, someone (probably on xda) would release a tiny patch to fix the problem. Like if Google made the same mistake in the default Launcher, it would be fixed by the devs online quickly.
And now about Flash: What!? Wasn't it built for ARM? Or do the N1 and other superphones use a slightly different architecture? This is weird...
Another problem is that there are netbooks and all sorts of smartphones with Android.
Most netbooks will have x86 processors (Intel, AMD) and though most smartphones are expected to use ARM, some might use a different architecture like MIPS, or even x86 in the future.
Normal Android applications that are made with Java are fine, but how about all the apps with native binaries built with the Android NDK?
What Google should do is implement a way to compile the same program to all popular architectures, and keep the different binaries in the APK.
Apple did something similar in Mac OS X when they switched from PowerPC to Intel... application files in Mac OS X are basically a package that holds basic information, icons, and the binaries, which make this file format similar to Android APKs, except that when someone compiles their program for OS X, both PowerPC and Intel binaries are compiled and stored in the application.
If Google does this for Android, there will be no problem with different architectures (like with Flash not being able to run on the G1)
PSP_Hacker said:
I remember a while back that there was a bug in Sense on the Hero where the package name (com.google.maps) would be displayed instead of the actual application name (Maps).
HTC acknowledged the problem and fixed it, but that's the problem with Sense; if it were open-source, someone (probably on xda) would release a tiny patch to fix the problem. Like if Google made the same mistake in the default Launcher, it would be fixed by the devs online quickly.
And now about Flash: What!? Wasn't it built for ARM? Or do the N1 and other superphones use a slightly different architecture? This is weird...
Click to expand...
Click to collapse
Just like i686 binaries won't run on an i486 CPU, ARM7 binaries won't run on an ARM5 CPU. There are architectural changes that break compatibility of new binaries on old hardware.
Another problem is that there are netbooks and all sorts of smartphones with Android.
Most netbooks will have x86 processors (Intel, AMD) and though most smartphones are expected to use ARM, some might use a different architecture like MIPS, or even x86 in the future.
Normal Android applications that are made with Java are fine, but how about all the apps with native binaries built with the Android NDK?
Click to expand...
Click to collapse
Not all native applications are built with the NDK. Flash is a big example -- it has a lot of HAND WRITTEN ASSEMBLY CODE. There is NO automatic way to generate hand written assembly code. Each additional platform you support MUST have its own manually written code.
What Google should do is implement a way to compile the same program to all popular architectures, and keep the different binaries in the APK.
Click to expand...
Click to collapse
http://developer.android.com/sdk/ndk/index.html
Might not be a bad idea to read up on the ndk.
The applicable line is "You can also build for both architectures at the same time and have everything stored in the final .apk". Seems that they already thought of this
*** but it isn't applicable to flash since flash is partially hand-written. They could easily include the various binaries within a single APK file, but that won't happen unless they actually build the arm5 binary, which is extremely unlikely.
If Google does this for Android, there will be no problem with different architectures (like with Flash not being able to run on the G1)
Click to expand...
Click to collapse
For reasons mentioned above, this doesn't help.

[Q] custom ROM with most tweaks

Just want to know the names of ROMs that have the most tweaks. Thanks in advance
Sent from my Nexus S using xda app-developers app
AOKP and Xylon probably.
Sent from my Nexus 4 using Tapatalk 2
Cm 10 or PA or AOKP....
But I prefer PA rom its outstanding....runs so smooth my man...just try it out...and add franco kernel with it and your set!!!!
alewis2k12 said:
Cm 10 or PA or AOKP....
Click to expand...
Click to collapse
cm10 is months behind aokp and pa.
i really want to try pa. but as i was reading through the paranoidandroid thread, i noticed the guy that builds it out doesnt necessarily have the same end game as i do. but i will still give it a try sooner or later.
xylon most likely
codefireX
Customizations and tweaks without compromising smoothness and performance. Bleeding edge seems like, as far as performance modifications go.
Sent from my Nexus 4 using xda premium
You should check out BR11 by Codefirex or PA which i haven't tried yet but it is very customizable.
Sent from my Nexus 4 using Tapatalk 2
Thanks guys I'll try em later.
Sent from my Nexus 4 using xda app-developers app
PA is a solid choice.
I enjoyed it for a while on my Note, would switch back and forth between it and vanilla CM10.
PA allows one to customize the presentation of Android better than any other ROM but whether or not usability is improved as far as practical application seems to usually be more a function of app limits than user. What I mean by this is that as far as UI layout, colors etc go - nothing comes close to touching this ROM. But the user experience beyond design is largely based on how a given app has been designed to be interacted with in different form factor layouts.
So for example, you switch your Gmail to display in tablet mode . If you find your user experience improved, it's because the Google dev team behind the Gmail app did a good job designing its different layouts.
As far as tailoring your Android experience to your own desire, your limits are design limits: colors, layouts, etc
ROMs like codefireX have a customization and user experience philosophy based more around function and practical application than design. So while I do not have the choice to change layout, colors etc per app, I can change/add functionality and buttons to the nav bar, the behavior of expanding the notification shade is different, I can modify power menu options etc.
Neither philosophy is necessarily superior to the other but I found myself more attracted to that codefireX offered than what PA offers.
What PA can accomplish is impressive in its own right but my user experience is better served by being able to do more in a wider variety of areas than specializing and excelling in general aesthetics and presentation.
That being said, PA is less performance and power user oriented. The performance hit on the hardware and limitations of the Note was very marked, the N4's beefy internals can easily take the performance hit the invasive per app modifications and hybrid engine generates. While PA seemed to me to be as smooth as any, it definitely wasn't close to being the fastest. It seemed to me to be as fast (maybe a tad slower) than stock but it's not as fast as some of these other ROMs (codefireX included).
So honestly, you should probably try a variety of ROMs out and see which suits you best. I found myself diverging from the philosophy behind PA but you might enjoy it best. It was just no longer the right setup for me.
Sent from my Nexus 4 using xda premium
rlaw said:
PA is a solid choice.
I enjoyed it for a while on my Note, would switch back and forth between it and vanilla CM10.
PA allows one to customize the presentation of Android better than any other ROM but whether or not usability is improved as far as practical application seems to usually be more a function of app limits than user. What I mean by this is that as far as UI layout, colors etc go - nothing comes close to touching this ROM. But the user experience beyond design is largely based on how a given app has been designed to be interacted with in different form factor layouts.
So for example, you switch your Gmail to display in tablet mode . If you find your user experience improved, it's because the Google dev team behind the Gmail app did a good job designing its different layouts.
As far as tailoring your Android experience to your own desire, your limits are design limits: colors, layouts, etc
ROMs like codefireX have a customization and user experience philosophy based more around function and practical application than design. So while I do not have the choice to change layout, colors etc per app, I can change/add functionality and buttons to the nav bar, the behavior of expanding the notification shade is different, I can modify power menu options etc.
Neither philosophy is necessarily superior to the other but I found myself more attracted to that codefireX offered than what PA offers.
What PA can accomplish is impressive in its own right but my user experience is better served by being able to do more in a wider variety of areas than specializing and excelling in general aesthetics and presentation.
That being said, PA is less performance and power user oriented. The performance hit on the hardware and limitations of the Note was very marked, the N4's beefy internals can easily take the performance hit the invasive per app modifications and hybrid engine generates. While PA seemed to me to be as smooth as any, it definitely wasn't close to being the fastest. It seemed to me to be as fast (maybe a tad slower) than stock but it's not as fast as some of these other ROMs (codefireX included).
So honestly, you should probably try a variety of ROMs out and see which suits you best. I found myself diverging from the philosophy behind PA but you might enjoy it best. It was just no longer the right setup for me.
Sent from my Nexus 4 using xda premium
Click to expand...
Click to collapse
i went ahead and stuck pa on my phone last night. i wasnt impressed with the speeds or the confusion. definitely going to try codefirex next.
phermey said:
i went ahead and stuck pa on my phone last night. i wasnt impressed with the speeds or the confusion. definitely going to try codefirex next.
Click to expand...
Click to collapse
Be aware the latest build (11) introduced issues with its toolchain that causes chrome/opera mobile browsers to crash on certain sites. The regular aosp browser works perfectly. (it's my assumption it's the new toolchain causing this, little else changed)
If you depend on chrome/opera mobile, try to find the 10.1 build.
Sent from my Nexus 4 using xda premium
To a novice user, ParanoidAndroid may seem a bit daunting, and lacking in features. However, many thematic add-ons–such as extra toggles and notification widgets–will definitely come in time. Battery icons can easily be injected yourself. I wrote a brief tutorial on how to do so here.
Here's a short album I made of a few unique features to ParanoidAndroid (and will likely stay unique to the project). Pay attention to the nav/notification bar. It can be a different color depending on the app you are using. Further, no other ROM today allows you to consolidate the nav and notification bar, à la tablet UIs. Also, I attached a few cropped photos highlighting zoom buttons that I put in place myself. Theming is REALLY easy to do. Independent dpi and layout.... now there's something you won't see on CM10, Codefirex, AOKP, etc. ParanoidAndroid is very innovative in this regard and is really the only current pre-release ROM that is capable of providing a significantly different user experience.
We need PACMan ROM. Paranoid, with AOKP and CM10 all baked in. That was my DD on the Skyrocket. Definitely miss it.
Sent from my Nexus 4 using xda premium

[DISCUSSION] Best androidbase for our ROMs - 2.2/ 2.3/ 4.x

Hey Guys,
As we got now some quite impressive selection of both android 2.3 and android 2.2 and even some android 4.x based ROMs, I was actually thinking about opening this discussion-thread to see what arguments can be brought forth for the named android versions on our galaxy 3.
It should help others to decide which ROMs based on which android version is the right one for them and to clarify the differences between these android versions.
This thread should NOT in any kind of way devalue the works of any developer on any newer or older android version, because it’s actually them that keep our legacy devices alive! Instead I’m hoping to see some different perspectives and experiences that you have made with the ROMs based on different android versions on our galaxy 3!
To start this discussion I summed up the features that are highlighted by Google for Gingerbread on http://developer.android.com/about/versions/android-2.3-highlights.html to question those benefits according to our present status of android 2.3-based ROMs:
- improved user interface for simplicity and speed through changed menus
- Better and faster keyboard experience
- Improved power management through visualization of battery consumption and better managing of apps
- Internet calling and NFC-capability (NFC not for our phone)
- Enhancements for gaming through performance optimization (concurrent garbage collector, faster event distribution, updated video drivers)
- Native development optimizations (audio, graphic, sensors)
- Dalvik runtime optimizations
As I selected only some of the newer features to sum up I tried it without regarding my personal opinion, but as selections and accumulations always mirror my personal perspective regarding what is important and what not, feel free to add any features that you find important and do question the things that I’ve mentioned.
Looking at the newer features I ask myself, will we actually benefit from those compared to a Froyo-ROM (maybe also thinking about missing implementation of OpenGL ES 2.0 in android 2.3 – correct me if I’m wrong)?
Are those newer improved user interfaces an argument? Thinking about the modding and themes which our themers provided to make our SG3 a beautiful device!
What of these features improved your personal user and/or developer experience over android 2.2 on our phone?
Did you notice those differences?
So hoping for some different perspectives: let the discussion begin!
(As I said, feel free to criticize and question anything that I’ve mentioned)

[Discussion]Will/How ART make an impact on developers

Ichigo said:
So, as you all know Android kitkat 4.4 came out recently. Along with it was ART, a replacement for Dalvik that promises faster and more efficient execution, better battery life, and a more fluid experience. ART stands for Android Runtime, and executes apps different than Dalvik. ART uses AOT to execute apps, which is pre-compiling bytecode into machine language when apps are first installed, turning them into truly native apps. ART still is still experimental currently, but let's discuss our opinions.
I know that when programming games for android, if it uses heavy 3D translations, you'll to use the NDK, coding in C or C++, allowing the app to run natively, and helps maintain frame rate and speed. Because the ART has apps running natively now, will it possibly help maintain framerate and speed better on lower-end devices? I know java is much slower slower than c++, but will running the java coded app natively help at all?
Anyways, share your opinions, ideas, or questions.
Click to expand...
Click to collapse
I don't know much about ART, but from what I heard this sounds awesome . I think that it is just crazy not to precompile the code into machine language, sure there is longer install times, but hey, the apps should run much faster.
The thing is that currently it is quite hard to try it out, even on KitKat (which I don't have yet). Would love to make a comparison between the two
Here are some benchmarks by Android Police: http://www.androidpolice.com/2013/1...ormance-wont-blow-away-today-will-get-better/
I hope that they will improve that method. If they do, it will be amazing.
Apps could much faster.
I do, however, like Java. One of the reasons why I prefer Android to Ubuntu Touch (which uses C++).
nikwen said:
Here are some benchmarks by Android Police: http://www.androidpolice.com/2013/1...ormance-wont-blow-away-today-will-get-better/
I hope that they will improve that method. If they do, it will be amazing.
Apps could much faster.
I do, however, like Java. One of the reasons why I prefer Android to Ubuntu Touch (which uses C++).
Click to expand...
Click to collapse
When KitKat comes to Nexus 4 I'll do some before/after benchmarking on MagicKeyboard (since it is fairly predictable and CPU intensive) - sounds quite promising.
PicomatStudios said:
When KitKat comes to Nexus 4 I'll do some before/after benchmarking on MagicKeyboard (since it is fairly predictable and CPU intensive) - sounds quite promising.
Click to expand...
Click to collapse
Kitkat is here on our Nexus 4s.
nikwen said:
Kitkat is here on our Nexus 4s.
Click to expand...
Click to collapse
Aw, yeah... I try to make a rule that wherever possible I use 'standard' build on our test devices, that way I can be sure I'm seeing what our users see
Depending how long it takes I might have a look !
PicomatStudios said:
Aw, yeah... I try to make a rule that wherever possible I use 'standard' build on our test devices, that way I can be sure I'm seeing what our users see
Depending how long it takes I might have a look !
Click to expand...
Click to collapse
Now the official ones are finally here.
nikwen said:
Now the official ones are finally here.
Click to expand...
Click to collapse
OK got it finally.
In a not particularly scientific test I tried typing the sentence
'The quick brown fox jumped over the lazy dog.'
into Magic Keyboard 2 (as many other apps as possible stopped, internet off, etc)
After each key press the app runs quite a large number of comparisons/calculations/bitshifts in a loop, in order to score the most likely word (CPU intensive work)
I only ran the test 3 times but there does seem to be an improvement with ART
Average prediction time for each configuration is:
Android 4.3:
20ms
Android 4.4 / Davlik:
19ms
Android 4.4 / ART:
15ms
From previous tests I know that the prediction times are fairly consistent.
Obviously the above is some way short of proof but early signs are good.
i am on android 4.4.4 with art runtime i haven't noticed any performance enactment and also not a single app cashing
Sent from my XT1022 using XDA Free mobile app

What is the most preferable software to create Android Application?

What is the most preferable software to develop aplication for androids? Just application for calculation with 3D or 2D graphics and not gaming. Coz i heard unity is good for developing gaming application, but mine is not gaming type.
And if i were to create the application with flash, can i combine with the part develop by unity later on?
Also, if i were to use 3D graphics in the application, what is the best software to create the graphics?
Thank you for any responses because im just a newbie and i have nowhere to seek advice.
Since this is Posted in IDEs, ... I will recommend Android Studio as IDE as it eases development & ADT will eventually become obsolete (if not already). For 3D unity is first choice for Android game devs, but if you just want to have a UI in 3D you can go for Cocos2d-x & LibGDX (if you can accept the render quality) to build yourself a scene for menu.
I saw applications built with Unity. The only advantage they have is they are multi-Platform, that is you write (well, in this case "design" is better) your application once and then it can be compiled with xCode as well as with Android or WP. I don't know details about Unity (and for what I saw I'm pretty sure I never won't LOL) but if you wanna entirely have the max control on your app you must learn Java first, Android then and finally WRITE code. Then you can choose whatever IDE you prefer (personally I'm still using Eclipse but since Android Studio has been greatly improved, I guess I'll shift to it soon).

Categories

Resources