[Q] Chipset optimization incentives for developers - Android Q&A, Help & Troubleshooting

Hi all,
First time posting, I’ve been digging through the search but am unable to find a thread covering this topic (apologies if I missed something). I’m interested in finding out more about how chipset manufacturers incentivize developers to optimize for their platforms. I’m thinking specifically about programs like NVIDIA’s TegraZone or Qualcomm’s Game Command, where apps (games in these instances) are optimized or exclusive to the chipsets. The company sites have a lot of developer resources, but are pretty cagey about specific incentive programs. If anyone has experience with this sort of thing and could answer any of the questions below it would be greatly appreciated.
-Is there financial compensation involved? Is development being funded (partially or fully) by these providers?
-Are they offering development resources beyond what’s widely available on their developer portals? Are they providing hands-on support from engineers or devs?
-Is it a merely a function of the extra visibility garnered through the programs?
It seems like optimizing for a specific chipset would be tough given time and resource constraints, so I’m interested in learning more about what goes into the decision to do so. Do the have different programs targeting large and small developers? I’m especially interested to hear from anyone that could elaborate with personal experience or specific examples.
Thanks!

Anybody have experience with this?

Related

[Q] Android vs. Linux/OS Development Resources

Hi guys. I hope this is the right place for this question. I'd rather have put it in the development forum, since I expect more devs frequent it than here, but I'm not sure it would be appropriate.
I will be writing a paper for an Operating Systems class looking at the Android OS. Specifically, I intend to compare it with Linux, giving consideration to the optimizations that were made for developing it as a mobile platform. I would like to also incorporate some analysis of the source code. This would likely include compiling a kernel from the source and probably installing some variant of it. I do not have any experience with OS/ROM development but I do have a decent amount of programming experience.
I would like to know if anyone has any favorite resources on the web, or even print, on this topic that would qualify as "academic." Unfortunately, this means forums and wikis are out. As far as I can tell, resources on this topic are scarce—or maybe I'm just not looking in the right place. I would appreciate any input I can get.
Thanks in advance!
bump
10 char
You could browse around here: http://developer.android.com/resources/index.html.
Android is Linux with Google's user space running on top of it. If you're just doing OS-level comparisons, it should be a pretty short report.
Google adds a very small number of things to the kernel, like wake-locks, but those are (allegedly) getting phased out in favor of "native" constructs.
I guess it would be more appropriate to say I'm interested in OS engineering rather than development for the OS, dealing particularly with the kernel.
Are there no major modifications done to the Linux kernel in such respects as scheduling, memory management, paging algorithms, I/O, etc. to optimize for mobile devices? I can't seem to find much that actually discusses how these are implemented in Android. For example, I am aware that there are apps that allow us to change the scheduler: are these just toggles for stock Linux code implementations?
There are a bunch of device drivers, obviously, but the only real kernel changes have to do with something called "wake-locks", which are a specialized form of locking that allow applications to prevent the phone from going to sleep. And one of the Linux kernel guys has demonstrated how an existing construct can be used to the same effect. Google has tried (with varying degrees of enthusiasm) to try and get their stuff integrated back into the kernel because anything _not_ in the kernel is a lot more work to maintain.
Right now, the kernel ARM maintainers are working on improving device management on ARM (currently, there's not much reuse, resulting in a dozen or so different drivers for some common IP blocks), which is a cause near-and-dear to Google's (well, Google's-phone-making-partner's) heart, so Google is probably going to try to avoid doing anything seriously incompatible.
Thanks for the info. I guess Android will have to sit this one out then.

[Q] Do you also develop for iOS? Why choose Android?

I can't seem to find much on this, so I thought I'd ask the question. I personally use a Samsung Galaxy Nexus and was a previous owner of a Galaxy S1. I also sport an Apple Macbook Pro and I love the computer.
There's been a constant "reminder" from various articles how developing for iOS appeals to the developer more than doing so for Android.
This topic has spawned countless of times, and with the recent intro of Instagram to Android, that topic has been re-written once more to show why iOS is "dominant" among developers compared to Android. Article HERE.
Thing is, with all this talk about developing for iOS being better, I find myself asking "if that were true, then why do developers still develop for Android? If that were true, Instagram wouldn't even bother coming to Android...especially since it's free."
So what would make developers for Instagram want to make an app for Android when according to these articles:
Developing on Android is "harder" because it has to adapt to countless hardwares
Android developers make less than iOS developers
Do you develop for both iOS and Android? What's your take? What actually entices you to want to work on the Android platform?
It would be nice if a developer who works on both platforms can give some insights. Please no fanboy or anti-apple talk here...I am sure many of you Android users like me, would have had your friends who are iPhone users bring up such a topic on how they've read that developing for iOS is better, and you can't explain to them why people still make apps for Android cause there's little material online to covers that topic. I'm genuinely curious to know from a developer's perspective
Developers want to get their program out to as many people as possible so they develop for platforms where the customers are at. The two biggest phone operating systems right now are iOS and Android.
Developers choose iOS first because their is a lot less device diversity with iOS devices so developing an app is probably easier. It has also been shown that there is more money to be made selling iOS apps than Android apps which could be due to the fact that people who are on a tight budget may see an Android device as a better deal or may have a carrier that doesn't even sell the iPhone. Piracy is an issue on both platforms but it could be argued that Android is easier to pirate on since apks can be sideloaded without rooting where as iPhones have to be jailbroken. But sideloading apks is used for legit reasons as well, like testing betas, nightlies and other apps that aren't distributed through App Stores.
Android apps have to account for multiple screen resolutions, ratios, and densities. Most regular apps scale just fine. Games seem to be where there are the most issues and I really wish Google would address the issues. It seems each GPU type needs its own support (PowerVR, Nvidia, Adreno, etc). I really wish Google would implement something like DirectX so games can be played on any GPU with enough power. iOS has the advantage here because only a single GPU type is used, PowerVR I believe, so all games can be optimized for it. Couple that with the fact that iOS tends to bring in more money and this is why the game developers usually favor it over Android.
Thanks for the insight. I figured gaming would be difficult for developers but didn't understand why, I just naturally assumed that "if the app seems more complicated, it naturally equates to more complications making it run on various hardwares".
Am I right to say then that when tech reviewers write about how Developers favor iOS to Android, it's mostly pertaining to gaming?
What about non-gaming apps? Is reaching as many people as possible the only incentive to go Android? Take Whatsapp, or Instagram that recently came out...it's free on Android, it also has to deal with multiple hardwares (though now I'm assuming it's actually not as tough as it sounds to accomplish if the app's fairly simple)...is there an incentive for developers to create an Android App...cause the guys at Instagram or Whatsapp could have gone "Well there's nothing here for me, I'll just stick to iOS"...because from what I see, it looks like opening it to the Android market meant having to stress their servers with a sudden influx of users, which mean spending more money to maintain them so it doesn't slow down too much...it seems like a lose-lose situation from where I'm standing. =\
I guess for some apps, google ads are what keeps them going...like Draw Something. I do wonder though how Whatsapp and Instagram manages its upkeep when it doesnt have ads...and if the answer is that they use the money earned from iOS to manage their expansion, is it really worth it if the goal is just branding purposes.
If there is a market to reach developers will develop. Web developers had to put up with the terrible non standard supporting ie6 for years. It was a real pain to develop for but had a large user base that couldnt just be ignored. Android is the same way, developers go where they can reach the consumer. Luckily android its nowhere near as bad as ie6 was.
Sent from my Touchpad using Tapatalk
spunker88 said:
If there is a market to reach developers will develop. Web developers had to put up with the terrible non standard supporting ie6 for years. It was a real pain to develop for but had a large user base that couldnt just be ignored. Android is the same way, developers go where they can reach the consumer. Luckily android its nowhere near as bad as ie6 was.
Sent from my Touchpad using Tapatalk
Click to expand...
Click to collapse
Thanks for the input! From your take, it seems like developers make apps for Android not because they want to, but they have to.
Do you or any of the developers reading this, can testify that there are some ups to developing on Android as compared to iOS.
Please use the Q&A Forum for questions &
Read the Forum Rules Ref Posting
Moving to Q&A
lufc said:
Please use the Q&A Forum for questions &
Read the Forum Rules Ref Posting
Moving to Q&A
Click to expand...
Click to collapse
Hi, sorry the topic may be [Q] but it's meant to generate comments and thoughts pertaining to the Android platform as per the sub header for Android General
Could it please be sent back to Android General? The Q&A section seems to be a place for people to post technical questions they need help solving.
Anyway, anyone else able to share their thoughts? Do you develop for both iOS and Android? It seems so far that people prefer to develop for iOS and lesser for Android, but they do it cause they have to as a means of reaching to the masses, but not really because they want to.
Anyone beg to differ? Do you have a reason why you actually prefer developing for Android over iOS?
Hi,
I'm a web developer, and when I decided to try mobile development, I made the choice to develop only for Android, for various reasons, but mainly because I'm not a fan of the Apple ecosystem.
This is not fanboyism here, I'm not bashing Apple, they make great products. But I prefer a fragmented ecosystem, with various companies, various devices, various app markets, etc. because this is a great source of opportunities. I also like the fact that android is open-source, leaving the availability to study the source code and hack around.
As for the difficulty to develop for various devices, I'd say that I'm used to it, being a web developer. Web devs are used to cope with various browsers (some of them being pretty old) and different screen sizes. See for example the mediaqueri.es site (cannot post link since I'm a new user)
thibaultj said:
Hi,
I'm a web developer, and when I decided to try mobile development, I made the choice to develop only for Android, for various reasons, but mainly because I'm not a fan of the Apple ecosystem.
This is not fanboyism here, I'm not bashing Apple, they make great products. But I prefer a fragmented ecosystem, with various companies, various devices, various app markets, etc. because this is a great source of opportunities. I also like the fact that android is open-source, leaving the availability to study the source code and hack around.
As for the difficulty to develop for various devices, I'd say that I'm used to it, being a web developer. Web devs are used to cope with various browsers (some of them being pretty old) and different screen sizes. See for example the mediaqueri.es site (cannot post link since I'm a new user)
Click to expand...
Click to collapse
Thanks for your 2 cents! Am I right to assume that in fact, having to deal with different hardwares and screen sizes are actually a norm among developers before iOS came along? In other words, yes, Apple is right to say criticize that other platforms are harder to work with compared to iOS but that's because iOS is the exception among developing platforms where it's system is easier to work with?
spunker88 said:
I really wish Google would implement something like DirectX so games can be played on any GPU with enough power.
Click to expand...
Click to collapse
But Android and iOS already have something like DirectX - OpenGL ES 1.1 and 2.0.
The_R said:
But Android and iOS already have something like DirectX - OpenGL ES 1.1 and 2.0.
Click to expand...
Click to collapse
Thanks for the additional input...if there always is a direct standard like Open GL in both iOS and Android, what's the difficult part about manufacturing games for Android?
iOS required Apple computer to install their development environment. And You must pay 99$ per year for being the official iOS developer..
ayen1234 said:
iOS required Apple computer to install their development environment. And You must pay 99$ per year for being the official iOS developer..
Click to expand...
Click to collapse
I'd actually say that it is worth it.
yeahyeahright said:
Thanks for the additional input...if there always is a direct standard like Open GL in both iOS and Android, what's the difficult part about manufacturing games for Android?
Click to expand...
Click to collapse
I think its large number of the types of Android devices. It really isn't as simple as just supporting different screen sizes. Doing that is actually a really simple task using OpenGL.
With my own games I've experienced that what generally works on my test device won't necessarily work the same way on someone else's. For example, some devices support textures of any size while some devices have a constraint of the texture size being a power of 2. On many of my games which need multitouch, I've experienced that it doesn't always work the same on all devices either. On some it is downright broken while on other it just works fine.
There are many such other issues which you'd be aware of only after experiencing them.
The reason for this is the different hardware and the different software implementations that each phone manufacturer brings in. Even if the game "works" on a wide range of devices, there is always a different feel that you get when playing on a different device because of the hardware variations. You might get a good frame rate on a high end phone but have you tried playing it on a low end one? I've seen games from even the big publishers working fine on a high end phone but it just is completely glitchy on a low end one.
Now for a small developer with limited resources it can get really hard to test on and support as many devices as possible. This is one of the main reasons I feel that it can get really hard to develop games on Android. It just requires more effort if the developer wants to guarantee a good experience on a wide range of devices.
The other factor as stated before is that the iOS platform is more uniform. And moreover there are more people who are apparently willing to pay for your game on iOS than on Android. With one of my own games I've experienced that I've made more money in the last 10 days by selling it on the iOS App store than on Android in the last one year with ad revenues.
I actually started developing games on Android initially and one of the really big disappointments for me has been that I am not able to sell my games on the market(now Google Play) because Google checkout for merchants is only available in a few countries. This was the main reason for me to consider moving over to iOS. I think I could sell on a different market like the Amazon App store if I really wanted though.
Inspite of all that I'd say that Android is a great platform.
Wow thanks a lot for the insight! It's great to understand it from a developer's POV, especially one who works on both platforms.
I realise people do comment a lot about Android users less committed to pay for an app, I wonder why...I don't think it's due to their budget, my guess is that their afraid it may not work well on their devices...to that I think Google could really push hard and promote it's 15 minutes refund policy which I think a lot of users are not aware of....I use the 15 minute window a lot and it helps me to decide if something is worth my time buying or not.
I guess the "openness" of Android has allowed phone manufacturers to get really creative with their products (Touchwiz, Sense, Dual Screens, Qwerty Keypads etc) but at the same time, makes it harder for a developer to create stuff, probably even harder than creating stuff on a Windows Desktop.
Do any of you think that having "game settings" like you get on a Windows PC will help change this experience? Either one where the user gets to tweak the graphics (low, med, high) and performance, or perhaps one where the game will adjust graphics to the "recommended setting based on your hardware"? Is this even possible on Android or it's more complicated than you'd get on Windows?
yeahyeahright said:
Do any of you think that having "game settings" like you get on a Windows PC will help change this experience? Either one where the user gets to tweak the graphics (low, med, high) and performance, or perhaps one where the game will adjust graphics to the "recommended setting based on your hardware"? Is this even possible on Android or it's more complicated than you'd get on Windows?
Click to expand...
Click to collapse
Yeah, I have actually seen a few games that do that, and it does help. But it also requires some extra time and effort on the developer's part.
In some of my games too, I've added some simple settings in order to change the control schemes, so that if one of them doesn't work for you, you could choose the other one. Graphically, though, my games are really simple.
yeahyeahright said:
Thanks for your 2 cents! Am I right to assume that in fact, having to deal with different hardwares and screen sizes are actually a norm among developers before iOS came along? In other words, yes, Apple is right to say criticize that other platforms are harder to work with compared to iOS but that's because iOS is the exception among developing platforms where it's system is easier to work with?
Click to expand...
Click to collapse
Having to deal with different hardwares started to be a thing of the past, with the explosion of web apps. One platform for all, what a dream! Then came smartphones and tablets, and developing for a native platfrom became cool again.
Anyway, building for the web is still the only way to reach anyone with an internet access. The only problem with web apps is that it's harder to monetize. But the web's decentralized architecture is not a bug, it's a feature. That is what guarantees it's freedom and independance. You don't have such guarantees on a centralized market managed by a single company, whose first goal is profit.
Well, this post was slightly off-topic, sorry about that.
Thanks both of you for the really good insight. I guess Android is great as a supposedly "open" phone os, it certainly has a lot of hurdles to clear in order to please and entice developers the way iOS does, I'm not certain it can get there, but I do think they do make an effort, like the just upgraded emulator which shows Google's commitment to better developed apps (talk about timing!).
I'm certainly happy with my Android phone and from what I've read about the negative results developers gain from working on Android than on iOS, I take my hat off to those that stick around on this platform and try to make things happen. *clap*
=)
I choose Android for one reason. It's much cheaper. Only 25$ one time. iOS is 99$ every year

What language should i learn to have the highest chance of working remotely

This question has been on my mind for some time.
I'm a Business Informatics student (first year) and was wondering what language should i learn for my specific goals. In the second year i will get introduced to c and c++ and in the third year to php and frond-end scripting languages and UI design.
My question, in accordance with my specific goals , is : what language would give me the highest chance to work remotely (internationally) for a USA/AUS/Canadian employer as a junior with no formal work experience? I'm refering to stable employment as a remote contractor for a company.
It is important to note that i live in Eastern Europe. I've done some reasearch on the legal part and concluded it will not be a problem as i do not plan to live in the USA and will be contracting or making my own limited company, i also plan (not set in stone) to work only for a few years [until that experience and savings will afford me the means to maybe start my own company (not limited) here]
I had two options in mind : php and java (android-eclipse).
PHP because is the only language i've seen job ads for hiring junior devs internationally and i understand it takes less time to learn and be employable, though my perception is that the maket is saturated with php developers ...
I expect the field will be even more saturated until i will get enough experience to enter it. Another disadvatage is the low pay in comparison to desktop development (also apperent in my country).
In my view, the advantages of php are that you can work independently on a product , going through all the development cycles independently (alone) and thus the probability that i can work remotely is higher as i do not need to be part of an office team.
I do not want to use java (asides from android development) for just that reason. It's mostly used by big companies that use big teams and will only accept experience contractors provided by consulting firms.
My perceptions about android development is that there is more demand than supply on this market , you can , again go through the development cycles alone and that it has a higher entry barrier (java is harder and is harder to become a java dev. without formal education, it takes more time to learn etc.), making it less saturated.
The data i have from 2012 suggests a huge demand for mobile devs , though it does not differentiate between technologies and i do not know if the data is still valid today , as the mobile market is a volatile one.
A thing i do not know is if it's practiced by app developing companies/employers in general to hire junior devs remotely , long-term and i wonder about the future of apps.:
How much math would i need to know to be a android developer ? I assume it's mostly used in 3D and physics engine , though i do not know if the future will become 3d oriented as far as games go. I'm not a big fan of math, so i need to know how much math will i be getting into. I plan to do mostly 2d development (if that's possible).
The last questions are about time and experience.
How much time will it require for me to become an employable (remote) entry-level php developer and likewise a entry level android developer?
How much difference is between chances of employment as a entry level php dev vs an entry level android dev for employers using those technologies?
I'm scared that the companies that usually hire android devs want people who already had some formal job for some time (1-2-3 years) [it's that way for java], like i said the only (very few) jobs that accepted entry-level people remotely where php jobs.
You are welcome to suggest any language, but please discuss the reasoning .
Sorry for the amount of info and questions, but this has been on my mind for some time now and i decided , based on some lurking and recommandations that this is the place that can help me in this regard.
Thanks in advance.

Need Android Accessory Design Schematics

I am a product designer looking to develop new phone case accessories for the Android market. I have been working as part of a small startup for a few months. We have mostly been concentrating on Apple products thus far; mainly because of their popularity and availability of online design guides (schematic drawings provided by Apple).
We are looking to develop more Android phones because we've had a lot of requests to expand our line. My issues is that I cannot find any reliable and accurate schematics or 3D CAD for ANY Android phones that are currently available. :-/
Can anyone point me in the right direction of where to find measurements, drawings, accurate CAD (not for rendering only) models? Where do companies get their information from? Is it worth giving Samsung a phone call or email?
Any help is appreciated! Thanks

I want to create a digital project which will work within Google, Yelp, Glassdoor and other platforms.

The idea is based on optimizing the interaction between users and sites' support. This is necessary for users to work for the platforms and for the platforms to work for the users.
At the moment, the most important thing that worries me is the way to optimize the user's communication with the sites. Yelp/Google/Glassdoor/etc have a huge audience and it's impossible to cover all this flow of users and their opinions or reports only by internal instruments.
Profit for the user: to pay money and not waste time on solving your specific (or not so) problem.
Profit for sites: the effectiveness of solving external issues + templating requests according to the criteria of the site itself.
So, if someone likes the idea, please share your fascinating experience communicating with the support of one or another site.

Categories

Resources