Why is Android so fragmented? - General Questions and Answers

I purchased a Sprint Galaxy Tab to give myself an opportunity to get acquainted with Android (it came with ver 2.2 Froyo). After two months reading the xda threads I have basically learned that Android isn't just a few variations (Froyo, Gingerbread, Honeycomb, etc.) - but rather each device has its own flavor of Android within those larger general classes. Different ROMs, different kernels, different application compatibilities, etc.
This surely isn't good for Google and/or Android in the marketplace.
This has come to light most vividly while trying to get my Netflix subscription to work on my Samsung Galaxy Tab. Netflix promotes that they support "Android devices" which technically may be true. I suspect there are at least a handful of Android devices supported. Sadly my Galaxy Tab is not among the selected few. And based on the extremely long threads on this subject with such a wide variety of proposed possible solutions, it is not isolated to the Galaxy Tab. This should not be such a big deal. And yes, I realize it is likely the fault of Netflix themselves trying to be the DRM cops that complicate this issue. But dang - how hard can it be???
I've got to ask why? How is it that this same Galaxy Tab can display video from a variety of sources, but not Netflix? And why are there so many 'apps' that will not run on similar (but not identical) Android platforms?
Sorry for venting a bit. But dang....

It would be nice if phone hardware had more of a PC architecture so when a new version of Android was released by google, you could just go and download it, possibly with a Google installer that would auto detect drivers and such. But that's just a dream.

avrillapete said:
... with a Google installer that would auto detect drivers and such. But that's just a dream.
Click to expand...
Click to collapse
20 years ago it would have been a dream. But today? And a company as agressive as Google? WHY would it still be just a dream?
Google says they want to set an open source 'standard' and I think that is commendable. But it feels like the whole process of implementing and supporting the Android OS is stuck in the '80s - with the same problems and limitations that plagued the early CPM and MSDOS world. Surely Google has resources and smarts enough to do better!
Mostly I am surprised and disappointed that Google hasn't done a better job with this aspect of Android. Surely it will get better...

Google has acknowledged this issue, and it WILL get better. Android 4.0 (Ice Cream Sandwich) will have even less fragmentation than honeycomb, and be on ALL devices from its release onward. many pre-existing devices will be upgraded to it as well, ending, for the most part, all android fragmentation.

Related

Pls enlighten this Android newbie

Hi all,
Am a newbie to Android tablets/devices both in terms of hardware and software. So if my post is posted in the wrong thread or reposted pls pardon me. I just want to understand a few basics.
As you all may know, now the market is being flooded by those Chinese made Android tablets. And many of them looks good (at least on paper) and at a very good price. But the problem is most of the time when come to chinese goods, they don't usually do what they claims (if you know what i mean). and the best part most of the salesperson don't know anything about the products they are selling especially when comes to tech gadgets like the Android tablets.
So here i am seeking help from you gurus and hoping i can start my Android journey on the right step. Below are a few questions. Hope I can get answers (links to somewhere where i can read up or anything).
1. What are the conditions (CPU make, firmware, etc) to fulfill if i wan to upgrade/root/hack the original Android OS? Cos most of the chinese made tablets are running on Android 1.5. Hoping to be able to upgrade the OS whenever a newer one comes out. Like the latest 2.1 And be able to download new apps from the apps market.
2. Which CPU chip is better and what are the common CPU chips in the market now? I know there are the Rockchips, VIA, Telechips.
3. Can we tell what are the hardware (CPU make etc) and software (OS/firmware version, etc) that are being used in the device from the system setting or something?
4. I read somewhere that not all CPU chips can be upgraded to the latest OS. i.e. that any upgrade is determined by the CPU chip. Is it true?
5. As for custom ROM, is it also device dependable? Like is there a generic ROM for all devices?
For now these are the questions which are bugging me. Hope the gurus here can enlighten this Android newbie.
Sorry for the long winded post and thanks for any help.
Hmmm. Just check that it is upgradable to froyo and it has more than 500mhz cpu
Sent from my Nexus One using XDA App
if you are looking for a tablet just get an ipad. the android tablets i see floating around are just 1.5 or 1.6. even if you get a tablet that can do 2.2 (froyo)... i dont see how that can be any better than an ipad.
i just feel that 2.2 isnt meant to be in tablet form. if you can wait... wait for 3.0 before you decide. the main deterrent here is the maximum resolution for android (854 x 480 or something), and that the apps were made with phones in mind.
im very happy with my nexus one... i just cant imagine having a tablet running android as of the moment unless its very very cheap ($200 or so).
i for one will get an ipad next month. my nexus one with wifi tether + the basic wifi ipad will be gadget heaven. looking to get an ipad primarily for reading magazines (zinio) and comic books. android does not have zinio yet. the android comic viewer (ACV) i use on my nexus is ok... but not great. then theres the games. games on android are still so so with less variety and choices.
as a phone the android is great! better than the iphone (yes im an apple user through and through) even. but as a tablet... not quite yet.
Hp is going to release a tablet so is samsung with 2.2
Sent from my Nexus One using XDA App
Hopefully start seeing some of these 2.2 tablets in the 3rd Quarter...

[Q] Are we depended on Viewsonic or Android?

New to Android. But long time user of Linux/RH/Fedora. Are there “distro's” on Android? Can users easily add/remove software with a RPM type management system? In Linux if you don't like TnT you would just uninstall it. Viewsonic g tablet seems to be ok if you manually change a few things. I'm assuming that this is generally a temporary problem due to Viewsonic being behind in their updates. But what I would like to know is there going to be any long term “distro” type leadership going forward? When the new Android Tablet OS is released will it work with most hardware (Viewsonic) like a Linux distro or are we depended on Viewsonic. If Viewsonic let us down can we divorce them and go directly to Android or someone else for automatic updates? Thinking about buying. Can wait for Flash update hopefully in December. Don't see screen as a problem, basically the same as most laptops/netbooks. Can add market manually till it become official with new OS.
.
Sears - Save $5 off $50 with code SEARS5OFF50 at cart
Android is not like normal distros.
Being primarily an OS aimed at mobile devices (IE phones) with limited memory and proprietary layouts and internal set-ups, all drivers can not be provided in one overall install. Confliction between drivers would be an issue as well. Also look at many phones (like the nexus one) the Firmware controlling the cellular radio also controls the camera and encoding of videos and images. There is some common ground, but one ROM will not work on all devices without tweaking for the perticular device. CyanogenMOD ROM is a good example, it works on many devices but you must install the proper version for the device you have.
Also remember that we do not have Root on these devices out of the box, 99% of the time we must find an exploit to gain full access to the device. The Nexus one and the G tablet are the only devices I know of off hand without locked down bootloaders. Cellular carriers want the devices looked down so the users can not use the device in ways that the carriers do not want. (like free tethering)
We are dependant on the manufacturer often times to release source code for the device so Devs can rip out the proper drivers and framework for the device. Often times drivers cross over between android versions making updating easier for the ROM devs.
If you want a device that you can truly tinker with, stick to devices that Google has as Developer models. The old G1 the Nexus One and the upcoming Nexus S. Maybe they will release a Dev tablet as well.
The N900 is more open in that regard as far as being like a true Linux, though the future of that branch seems uncertain. It will defiantly be more niche.
Thanks for the reply. I guess I was thinking Android was Linux lite. Not sure where I stand on a tablet now. Think I want a Linux pc in a tablet form. Fedora on a tablet would be fine for me. Like you say tablets with MeeGo (Intel/Nokia/Linux Foundation) may or may not appear any time soon. Have to wait and see what happens.
tktim said:
Thanks for the reply. I guess I was thinking Android was Linux lite. Not sure where I stand on a tablet now. Think I want a Linux pc in a tablet form. Fedora on a tablet would be fine for me. Like you say tablets with MeeGo (Intel/Nokia/Linux Foundation) may or may not appear any time soon. Have to wait and see what happens.
Click to expand...
Click to collapse
Android is running on top of Linux, and given programs compiled for ARM you can install about anything, but there's no X... Framebuffer stuff could potentially work..
But no, if you're looking for a typical Linux desktop environment, this isn't the place to look. Although some of the dual boot Windows/Android tablets makes me wonder how difficult it would be to get it Linux/Android.
Thanks for the additional information.

Which phone best for testing apps

Hi
I am on Verizon. What android phone is best to get to test apps I write for android ?
Is Galaxy S4 good for this ?
Also, how old an android phone would it still be ok to use for testing ? Any way to get cheap devices for testing other than looking on ebay and craigslist?
Thanks.
Well, it all depends... You need to know a couple things first: which os version is mostly used, and what type of app will you develop?
For the first question, you should look into statistics. Gingerbread (API 10) and Jelly Bean (API 17) have more market share, in second place Ice Cream Sandwich (API 14). Thankfully Android SDK allows you to develop for a range of devices by selecting minimum SDK version and target SDK version. What device is good for testing? Any device you plan to support, actually.
The second question us more like a filter for you to decide which devices will you support. For example, if you plan to develop a picture editing app, designing it for small screen devices won't look nice, doesn't it? Hence, most of GB devices are off the table. Devices sporting big screens are almost all running ICS+.
Also, there are ways to enforce certain hardware requirements but that's a little more advanced (AndroidManifest.xml modification), so that's a whole new class.
Hope I have shed some light into your decision. Press thanks if you've found this useful. Happy coding!
Sent from my GT-S5830M using Tapatalk 2
Unfortunately, there is no right answer. Like dbarrera said, it depends on what you're looking to do. In general, the more devices you test your app on, the better. Using many differently configured AVD's can help in testing across multiple android version, screen sizes, etc.

Qualcomm TOQ: too weak to run Android Wear ROMs I guess...

So, a "number" of OEMs are using Qualcomm SOCs for their Android Wear devices.
So my guess would be that Qualcomm TOQ is a "reference platform" for Android Wear.
Perhaps there may be ROMs released.... or leaked given that OEMs surely have them already.
No source code for now....
I'm guessing the kernel will be the more or less usual Android variant of the Linux kernel, perhaps with fewer drivers/features. And it's ARM of course.
How similar to standard Android on the higher level ?
I'm still pretty new to smart-watches. I haven't looked at the preview SDK yet.
EDIT: Uses an STM micro, too weak I'd guess to run Android (Wear variant).
EDIT: Looking now, and wondering if the code will even be open sourced ? Google may want to have more control this time around. Google, and the HW OEMs, might even put in roadblocks to custom ROMs even if the source is open, including the usual device locking of course.
http://developer.android.com/wear/preview/start.html :
Caution: Do not install apps on the Android Wear emulator. The system does not support traditional Android apps and the result of running such apps is unpredictable.
Click to expand...
Click to collapse
LOL. Time to try some of my apps and see what happens.
EDIT2: My app UI works !, although the UI is very squished. Looks almost like normal Android (from the app/dev point of view, Launcher or whatever UI is very different). I'm sure a whole bunch of APIs don't work and some will never work.
hm they use their cpus, why not the displays?
mirasol displays seem to be the perfekt ones
http://www.qualcomm.com/mirasol/technology
I really doubt that the toq can run google wear. It is using a 200mhz non snapdragon soc.
yerand said:
I really doubt that the toq can run google wear. It is using a 200mhz non snapdragon soc.
Click to expand...
Click to collapse
Is there a teardown of it somewhere ?
I really think the android wear platform is going to be locked down. I even doubt google will allow oem customization beyond maybe some skinning. Wearables is too fragile of a market to allow the amount of freedom we have on android phones/tablets. So, that means it'll probably have specific hardware requirements and such that prevent it from running on devices that weren't intended to run it. Even if it were remotely possible it wouldn't work very well. Look at other porting projects like Windows phone to android devices and sense for non-htc devices.
I'm leaning towards Google treating "Android Wear" the same as "Android Phone/Tablet".
Google has never hesitated to be open with the "basic" code to run Nexus devices. Open source is good for them.
That's the low level stuff that they build upon and REALLY protect with closed source and licensing requirements: Google Play, GMail, etc.
It's in their interest for everybody to be build the compatible low level.
I don't think Google has committed on the matter publicly yet, funny.
mikereidis said:
Is there a teardown of it somewhere ?
Click to expand...
Click to collapse
I was looking up a part number after tearing down one and found theTech Insights report: http://www.techinsights.com/uploade...ts/Wearable-Wellness_Survey_Sample_Report.pdf
Fencesitter said:
I was looking up a part number after tearing down one and found theTech Insights report: http://www.techinsights.com/uploade...ts/Wearable-Wellness_Survey_Sample_Report.pdf
Click to expand...
Click to collapse
Thanks ! I thought there was only one teardown and it cost $1250 to see.
So, STMicroelectronics STM32F207IGH6 ARM Cortex-M3 32-Bit Microcontroller...
Not a Qualcomm SOC/CPU. And only 16 MB of RAM ???
I don't think this will ever run Wear.
I guess it's just an early prototype, of Mirasol among other things.
mikereidis said:
Thanks ! I thought there was only one teardown and it cost $1250 to see.
Click to expand...
Click to collapse
Which company was that?
Let me say for the purposes of CYA that I found the Tech Insights link merely by searching for the term "wcn2243 data sheet" Which is one on of the smaller chips on the Toq.
Fencesitter said:
Which company was that?
Let me say for the purposes of CYA that I found the Tech Insights link merely by searching for the term "wcn2243 data sheet" Which is one on of the smaller chips on the Toq.
Click to expand...
Click to collapse
Same company, more detailed report, including some die photos. Advertised for $1250 here: http://www.techinsights.com/reports...market-reports/Report-Profile/?ReportKey=9830
You linked to a legitimate sample report, linked from this page: http://www.techinsights.com/teardown.com/teardown-sample-reports/
I looked at the firmware for the 1st Sony smartwatch and could see several of the hardware components and some proprietary RTOS. Sony supposedly "opened" the watch, but it's just a toy OS last I looked. They weren't releasing anywhere near enough code to replicate stock.
Anyway, the TOQ parts list seems somewhat reasonably similar; there's probably just a few common designs out there. But things may be changing if the new watches will run an actual variant of Android; ARM based micro-controllers being replaced with I guess more powerful "SOCs", not that it's too easy to distinguish a SOC from a micro...
...Now I'm wondering what's in the Chromecast I just got, LOL... Google is going more deeply embedded now.

Millions of phones and tablets are obsolete because of sofware. Is there a way around?

Hi everyone.
Every year millions of phones and tablets are produced. Because hardware makers don't worry about updating them, those devices are often dumped. However, lots of them are very capable machines.
As I've read these forums for years, I've seen a lot of work from a lot of people trying to bring those forgotten devices to life again by making unofficial ROMs with tons of customization, new features, and great efforts like LineageOS and PostmarketOS. However, those lack the resources to bring an updated OS for the majority of those binned and obsolete phones.
If I'm not wrong, the biggest issue about replacing the original OS on those devices are the bootloaders and drivers/blobs for the large amount of different hardware configurations. There are multiple workarounds, shims, ports that solve those problems for one or other device.
It might be quite naive, but i'd like to ask a question I've been thinking about lately. AFAIK, if I have the blobs/drivers for a camera, wifi, bluetooth, GPS or other "peripheral" for a devices' original ROM running Android 4.4, I can make it work on AOSP 4.4. I know this might be crazy, but:
As long as I have the blobs for a certain chipset and display/touch, why can't we use a VM running a nano version of AOSP that matches the devices' original ROM that bridges the device IO to the main ROM?
As an example, imagine wifi. I could network bridge AOSP 9 to a VM running AOSP 4, which would then have the drivers so network would work. The same for bluetooth or camera or GPS, maybe? Is this absolutely unfeasible?
Thank you for your time!
wasserprojekt said:
Hi everyone.
Every year millions of phones and tablets are produced. Because hardware makers don't worry about updating them, those devices are often dumped. However, lots of them are very capable machines.
As I've read these forums for years, I've seen a lot of work from a lot of people trying to bring those forgotten devices to life again by making unofficial ROMs with tons of customization, new features, and great efforts like LineageOS and PostmarketOS. However, those lack the resources to bring an updated OS for the majority of those binned and obsolete phones.
If I'm not wrong, the biggest issue about replacing the original OS on those devices are the bootloaders and drivers/blobs for the large amount of different hardware configurations. There are multiple workarounds, shims, ports that solve those problems for one or other device.
It might be quite naive, but i'd like to ask a question I've been thinking about lately. AFAIK, if I have the blobs/drivers for a camera, wifi, bluetooth, GPS or other "peripheral" for a devices' original ROM running Android 4.4, I can make it work on AOSP 4.4. I know this might be crazy, but:
As long as I have the blobs for a certain chipset and display/touch, why can't we use a VM running a nano version of AOSP that matches the devices' original ROM that bridges the device IO to the main ROM?
As an example, imagine wifi. I could network bridge AOSP 9 to a VM running AOSP 4, which would then have the drivers so network would work. The same for bluetooth or camera or GPS, maybe? Is this absolutely unfeasible?
Thank you for your time!
Click to expand...
Click to collapse
That's sort of what project treble is.
Project Treble
The Android 8.0 release includes Project Treble, a major re-architect of the Android OS framework designed to make it easier, faster, and less costly for manufacturers to update devices to a new version of Android. Treble is for all new devices launching with Android 8.0 and beyond.
forum.xda-developers.com
I was reading about it and it seems like treble is not very seccessful. I imagine Google isn't very interested on this, as they want phones to be sold every year. Anyway, I was asking about this specific method of making phones and tablets compatible with today's OS or, who knows, even linux.
wasserprojekt said:
I was reading about it and it seems like treble is not very seccessful. I imagine Google isn't very interested on this, as they want phones to be sold every year. Anyway, I was asking about this specific method of making phones and tablets compatible with today's OS or, who knows, even linux.
Click to expand...
Click to collapse
Yes and the only way it might work is trebel. Because treble handles lot of the problems involved with booting newer androids on older systems.
You can run linux on older Androids or even Windows XP.
How to install a Linux desktop on your Android device
Get even more from your Android device by running a desktop OS! Lots of options including Debian (no root), Ubuntu, and Kali Linux.
www.androidauthority.com
Running Windows XP on Android
No rooting or custom modifications needed, we’re going to do this with stock Android and a few free (but high-quality) apps.
centerorbit.medium.com
Also, it's not that the OS gets deprecated, it's that the applications like Google Play services which become heavier as years go by.
Degoogled-Android on my Android ICS phone worked fine till it's screen got busted. With Google Play services, it was impossible to install any app since its paltry 400MB storage was extended/
Thanks for your answers!
Running other OSes via VNC is just meant to use the devices as mere thin clients, and that was not the objective.
The Project Treble will never be as widespread as it should be, because Google is obviously not interested in making phones last longer (they want more devices to be sold). Of course I was not talking about devices 10 years old, more about 5yrs. They have specs good enough to run contemporary Android and most of non-entertainment apps.
The obstacles to being able to do this are artificial. The problem is there are no drivers and project Treble does not address this in any meaningful way. Manufacturers aren't interested in this too because they want to sell more chips. So the only way it came to my mind it could work was by running a very light VM with an older Android for which the components' drivers were available. Of course main components would still have to be compatible with newer Android, such as the SOC. But things such as wi-fi, camera... could be bridged from a VM, I believe.
Not sure, but I'd guess the low-level interface would have to be outside the VM.
That is, to be able to run the VM you'd have to have some drivers already in place. I'm also not sure everything can be virtualized. For example, desktop VMs couldn't so easily passthru PCIe or USB to VMs, at least in the past.
There's some EU push to make fixing and servicing some non-phone devices easier, and to mandate labeling phones (and other devices) with repairability scores. Maybe eventually they could mandate, under certain conditions, the logical separation of hardware and software?
Well, after a long time, for those who where curious about this thread: the project Halium is exactly what was in my mind. If I'm not wrong, it basically consists in a minimal Android rom running on a Virtual Machine which then interfaces with any Linux distro, effectively giving the phone the ability to run a (more or less) updated version of Linux kernel and, therefore, many Linux distros. https://docs.halium.org/en/latest/project/Scope.html
hkjo said:
Not sure, but I'd guess the low-level interface would have to be outside the VM.
That is, to be able to run the VM you'd have to have some drivers already in place. I'm also not sure everything can be virtualized. For example, desktop VMs couldn't so easily passthru PCIe or USB to VMs, at least in the past.
There's some EU push to make fixing and servicing some non-phone devices easier, and to mandate labeling phones (and other devices) with repairability scores. Maybe eventually they could mandate, under certain conditions, the logical separation of hardware and software?
Click to expand...
Click to collapse
You are right, and I believe Halium just works on phones which are minimally supported by Linux kernel drivers (like basic SoCs). But all those other hardware parts, like GPS, Wi-Fi, Camera... can be brought to life this way, I think.
Thanks for your insight!

Categories

Resources