The Android SDK Is No Longer Free Software
New submitter tian2992 writes "The new terms for the Android SDK now include phrases such as 'you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK' among other non-Free-software-friendly terms, as noted by FSF Europe's Torsten Grote. Replicant, a free fork of Android, announced the release of Replicant SDK 4.0 based on the latest sources of the Android SDK without the new terms."
Right?
it is still more open than the iOS SDK, Blackberry and WP
All of a sudden a new market opens for Ubuntu Mobile ;-)
Seriously, does that impact anyone? The thing is available for free anyway...
Write boring code, not shiny code!
Google has long been willing to compromise on their "do no evil" mantra and is probably under huge pressure from successful incumbent phone device manufacturers to create barriers to entry in the market. This is common with any market where goods or services start to become commoditized.
Helping with organizational effectiveness is our job.
I don't know why the summary concentrated on the copy provisions. Here is the complete clause #3.2. Emphasis is mine:
3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
So what are the practical implications of this? Can someone explain it to me? Is this going to affect, say, CyanogenMod?
If Android is no longer FLOSS, it has no advantage over iOS and is generally slower on most devices.
Java & Dalvik were always a bad idea anyway, since the VM is slow even with JIT. A faster VM might be revm, which only need 4 cycles per bytecode.
love my iCrap but for the last few years it seemed like Apple was taking some code out of Android for iOS
Seems they are following Sun/Oracle's footsteps with java.
Except they have been doing it for years...
http://gnu.wildebeest.org/blog/mjw/2009/11/14/trusting-companies-with-your-code/
Luckily there is IcedTea: http://icedtea.classpath.org/
The Android platform has some fragmentation problems and there's been endless bitching about them on Slashdot. This change is part of a number of changes made to limit the problem. The section following the summary's quote spells it out:
"3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK."
tl;dr - you got what you asked for.
This looks like it only covers the SDK for now. We will see if this happens to android as a whole.
I was initially not sure if anyone would use Ubuntu on their phone. Now I am looking forward to the images for nexus devices in the next few weeks.
Likely due to Amazon. Amazon forked off of 2.3 and is staying on it so now if anybody wants to make an app that will run on the first successful android tablet (The only other one with any traction is the Nexus7 I believe) they need to target 2.3. Google is closed out of the Kindles entirely so they probably don't want Amazon or anybody else making a new fork off of 4.2 for the next generation of Kindles.
Me too?
Make your own SDK.
Lots of people focus on GPL and don't realize this obligation when using LGPL libraries. LGPL allows you to use your own non-GPL terms, only on condition your own terms do not prohibit reverse engineering or modification by the user.
Does Android SDK link to any LGPL libraries?
It impacts people who care about principle the software they use is based upon.
Unfortunately for people who do care about principle, the vast majority of people buying electronics for individual use have shown that they do not care about principle, and only products targeted to the vast majority benefit from the sort of economies of scale seen in mass-market products.
I may not reverse-engineer the Android SDK?
Fuck Google and fuck Android. You know what? Fuck all you fandroids too.
You seem like a sensible person. Where can I subscribe to your newsletter?
If they did that Android would be forked. People who cared would move to the fork
And lose all the non-free applications that one relies on, because those are unlikely to be made available for the fork. Not very many people are going to want to buy and carry two phones, one for only applications distributed as free software and one for only applications in categories not conducive to the free software model, and pay for cellular voice and data service on both. So between the status quo and carrying two phones, where should the line be drawn?
I just checked the wayback machine and the SDK terms haven't changed much in years. Here's a link to the 2010 terms for the SDK:
http://web.archive.org/web/20100724144708/http://developer.android.com/sdk/terms.html
Pretty much the same as the current SDK agreement. The parts under proprietary license you can't mess with, the parts under open source licenses you can do what you want with. I can't see that anything has changed with the latest version of the agreement.
If you look, a lot of their apps are coming out of beta stage as well, with licenses and prices changing.
-Alex. http://bit.ly/1iVPtfA
First: IANAL
What scares me about this license change is that Google is attempting to prevent, apparently in perpetuity, those agreeing to the license terms from doing anything involving fragmentation of Android (web links? Mentioning on Slashdot comments?), or from promoting a software development kit "derived from the SDK" - that presumably includes older, legitimate forks.
I didn't even realise that it was legal (or at least, enforceable) to prevent someone from doing something completely unrelated to the licensed material at issue in a one-sided license agreement. Like preventing people from doing things that "may cause or result in the fragmentation of android". That would be like the license requirement requiring users not to hop on one leg for the rest of their lives as a result of agreeing.
Hopefully the definition of "SDK" in the first section of the license [1.1: "The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons)..."] is specific enough to not apply to derived works of the Apache-licensed source of the SDK in AOSP's repo's.
Some people do, some don't.
The question is whether enough do to create economies of scale. I bought a Dell netbook because it was a 10" laptop that could run Ubuntu. But the economies of scale for netbooks ended up disappearing between when I bought it and now, and I don't know what I'll replace it with once it finally bites the dust.
Yes I am paranoid, but: The only reason they would not want you to look whats really inside would be that you would not like what you find in there.
with BLACKJACK! and HOOKERS!
If the SDK can no longer run on an Android device, as Bill_the_Engineer pointed out, it still loses one major advantage over iOS, as a tablet with a keyboard is no longer enough to make and test quick fixes to an application, as Anonymous Coward pointed out.
Users don't care about Free Software at all.
In fact, users don't care about software at all as long at it works.
Few days ago I got idea, that one of the most popular app for android is just trojan/spyware. I did some research. I tried to find more info about creators, only to find out that I am probably right. Then I found thread with same idea (about same software), posted many months ago. I read user replies. They just posted things "if you don't like it don't use it" or "do you have windows? microsoft knows all about you". There wasn't a single explaination about the idea that this software is trojan/spyware. People just don't care. They got something for free, so they use it.
There is only a small group of people who really care, some of them are here, on Slashdot. But this is elite, insignificant group of users.
No reverse engineering means you aren't allowed to discover the interface that a conforming SDK must meet.
So google is slowly closing it up, they snoop on me, their phone is full of malware and it's fragmented. Sounds like a real winner!
At least with all the other platforms you know where you stand. With Android it seems you never know when Google will up and change anything. If I were a developer or hardware company that would concern me.
...on general computing going on. If you can't load this onto a 'handset' what is there stopping google from broadening what is defined as a handset as to restrict developers to specific closed development platforms. We are back to paying 10000 for an intellec8 dev station; living in the nintendo and sony world...
i am so very tired....
On second thought, forget the SDK!
I may have completely misunderstood what this is about, but you can actually build the SDK from the Android source available through repo/git. You do not need to agree to any license terms beforehand to do this. Does this not work around the entire issue that TFA is complaining about ?
If not, kindly elaborate.
I know Google aren't bound by these license terms, but it still seems hippocratic that they would choose to break them:
https://play.google.com/store/apps/details?id=com.aide.ui
Frankly they should be sponsoring AIDE not trying to block them with legalise. You don't see Microsoft saying you are not allowed to run Visual Studio on Windows???
because its hard , when (i) you believe so strongly in the open source/ free software movement..whatever they are dividing us into today.
along comes google makeing contributions and basically being in the right place at the right time- later when i was looking at it from where "google was golden" i was a fanboy, but time goes along and i had problems with them in several areas --ie AOSP and android, and google play , but in dealing with them firsthand and watching others do the same i have come to the conclusion that google "is" the microsoft of old--but they are a wiolf in sheeps clothing because they hide behind the veneer of open source, FOSS, rtc etc
they are another company sucking the movement dry
maybe i am wrong
but maybe.....just maybe im a little bit right
fanboyism is so highschool--grow up and open your eyes
It would be fairly simple to retain binary compatibility with AOSP or the last version of it. The same way the Cyanogenmod does not need special apps.
Until Google tweaks Google Play Store not to run at all on AOSP.
Then why isn't it distributed such that the proprietary parts and freely licensed parts are more easily separable? VirtualBox since 4.0, for example, has been distributing the proprietary parts as plug-ins.
Since when do app developers typically need to "modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK"?
Say an application developer carries a tablet on which he uses AIDE to make and test small changes to an application while on the road. As Bill_the_Engineer pointed out, that's prohibited to the extent that AIDE contains any SDK component: "You may not [...] load any part of the SDK onto a mobile handset or any other hardware device except a personal computer."
Then check out revm, it is a better VM anyway.
This move seems totally contrary to Google's corporate ethos thus far. They must know this is going to piss off a significant number of loyal customers. I'm REALLY hoping this isn't the first sign of Google joining the same rights-bully club that Microsoft and Apple are big members of.
Just a thought but I'm wondering if this change might be (the first part of) a bitter pill Google chose to swallow, say as a prerequisite of Hollywood/MPAA/RIAA to get the same level of access to the DRM inner sanctum that Apple and Microsoft already have.
You mean hippahcrissie.
It's simple, it's a contradiction!!! OMG
Posts like this are really starting to annoy me.
Actually some people do care. They're called people who read slashdot. And the people who read slashdot don't really give a shit that 99% of the population does not give a shit. Do you know why? Because we are smarter, more educated and have longer attention spans.
And they also have a more insular, mostly online social circle that is childishly offended that other people dare disagree with them.
Perhaps this is to protect Android from another Aliyun OS incident.
http://www.zdnet.com/the-acergooglealibaba-tussle-its-not-about-open-android-7000004312/
How does the Android SDK's license compare to the iOS or Windows Phone SDKs? Is there a cross compiling issue where the iOS or WP SDK's are saying they'll compile to Android, and the Android SDK being formerly Free software means it's not being treated as it should?
iOS and WP are compared to Android constantly. Above posters have mentioned Ubuntu Mobile more than the actual market competitors, but as we learned yesterday Ubuntu Mobile is Android.
As we know from Trusting trust, the Android SDK has become less trustworthy, but fortunately Android is still Linux.
Andy Rubin (Co-founder of Android before Google bought it, and current VP of Mobile) posted this a few months ago in relation to Aluyin OS. https://plus.google.com/112599748506977857728/posts/hRcCi5xgayg (which links to the official Android blog: http://officialandroid.blogspot.com.au/2012/09/the-benefits-importance-of-compatibility.html).
It sounds like this modification of the SDK might be another move toward Google defending against this Aluyin OS-style modification of Android. While Android is commonly cited as being "fragmented" due to the %'s of handsets that have older versions of Android on them (see the Development Dashboard); what these links talk about is a very serious, more dangerous style of fragmentation. Currently all Android apps are forward compatible with future versions and most are backward compatible (unless the develop chooses to use a new API and not include any graceful degradation in their app for older versions). But Google's flavor of Android is also sideways-compatible with the likes of Amazon such that if you write an app intended for the play store and later decide to distribute it to an Amazon-flavored device (via their app store or other various means), you can do this.
The implications of allowing such activities to continue are that Android could turn into a true wild-west of operating systems. From a technical standpoint, a budding Chinese developer modifies some core Android source code which work with the apps being developed by his company, but suddenly break every other app developed for their flavor of the Android OS -- and then suddenly developers for that hypothetical OS can no longer pick up their app and take it to Google's (/Amazon's) flavor of Android without resorting to hacks and workarounds. Suddenly that Android Development dashboard needs to represent that data in more than 2 dimensions - and Google's got a world of new problems to deal with.
See this Architecture Diagram for some further context. Basically the various Android OEM's and custom ROM developers such as Cyanogenmod should only really be modifying the blue bits and maybe some of the green (I'm sure ROM developers would argue on the red bits, but in a perfect world..). Seems like Google is trying to stop the messing with of the yellow "Android runtime" section.
Does this mean that I can create internal software the way the company wants it for a price to be more productive vs it's competetor?
Those same users do care about those features, they just often don't care to take time to figure it out for themselves.
When they want to use their phone on another network, or in another country, then they either bug a friend like *me* (who does take a general interest in such things) or take it to a shop that can make it work.
If phones become more locked down, then even the shop won't be able to do it. People will be even more pissed off with their devices. They'll also see a lack of features as many phones have incorporated stuff that was first only available on 3rd-party hacks/tweaks. No third-party, less innovation.
Maybe the general public doesn't need the latest uber-tweaked ROM, but the offshoots that come from such things are still quite popular.
Well, you can always read the documentation. Or look at the code it's supposed to link up against.
I hope you burn in hell, and go to prison, for your "intellectual property" crimes! You do *not* "own" that information, because that is physically impossible and ridiculous nonsense! Fuck you!
This is exactly the type of clause that Sun put in the Java SDK and Oracle tried to argue gave them copyright on the Java APIs. Now they are trying to prevent someone else doing exactly what they did to Sun... It will look great in court when your primary defense is quotes from the offense's previous case. i.e. Ignore these terms - they have already been found to be unenforceable.
Regards
-Jeremy
with open source projects that change their terms for the worse..... how relevant is xfree86 these days?
E.g. [two convertible tablets priced at roughly $750]? (you didn't say anything about price being the same as netbooks)
Will they last two and a half times as long as a netbook would or otherwise provide two and a half times the value? Demonstrate to me that this is the case and I'm sold.
Buy a larger bag? The difference between 10" and 12" is barely noticeable when you already need a bag to carry something around. It's not like it's a phone.
Beyond a certain size, a larger bag becomes a magnet for people who want to steal the valuable laptop computer inside.
I don't think Google cares much about "write and test code while riding public transit" as a use case.
Do you mean that Google doesn't care about people who want to spend their time while riding public transit to do something productive? If so, that's more an indictment of car culture. Or do you mean that Google doesn't care about people who choose programming as a productive hobby? If so, then how did Mr. Page and Mr. Brin start programming?
I'm beginning to think that the causative factor behind this misquotation is a rather peculiar mental illness.
It's not, "Do no evil."
It's "Don't be evil."
The implications of this distinction are left as an exercise to the reader.
Those who advocate genocide deserve every protection afforded by law, and none afforded by common human decency.
I seem to remember at least one netbook maker running TV commercials claiming that a netbook fit on a crowded airplane better than a full-size laptop did.
Google is violating it if the SDK includes any Linux, Freetype, or other gpl software. Last I checked the emulators run Linux and other software GPL software. They can't put additional restrictions on it as they do not own it.
Yes that is a violation of the GPL. I have no idea who modded me down to 0, but it is a fact you can't make Linux non GPL. Yes, you can include non GPL software with a Linux distro but you can't make the whole thing including linux non GPL.
If it includes the kernel then there needs to be 2 seperate licenses or Google needs to use another kernel.
http://saveie6.com/
Larry Page better remember what happened to Sun. Sun used to rule the world. Now look at them. Err, you can't they're dead. It's getting hard to tell the difference between control freak Google over Android versus Control freak Sun over Java.
When all you have is a hammer, every problem starts to look like a thumb.
Still no. The fact that an emulator is capable of running GPL software does not make it GPL. That's absurd.
Google want to cash in on Kindle HD ... this is the paperwork to ensure that Amazon coughs up some greenbacks
Have you ran it? It is the full blown linux kernel plus freetype fonts and other things. It is not just capable, but it actually includes images and even source code. I can boot 4 or 5 phones up. That is Linux it boots.
I thought you all would be upset that they are violating the license? Not attacking me as a troll.
If I wanted to be a troll I could go on quoting the real Bill Gates saying it is viral if you put an include statement. However, it is copyleft or LGPL the last I looked so you can still link to it and make it proprietary. But the kernel, glibc, and others are a no no.
http://saveie6.com/
Hi I'm the lead developer of the Replicant project, who just released the Replicant 4.0 SDK.
First, it's nice to see such a coverage of what we're doing, though I'd like to point out some misunderstandings that would need to be corrected:
* The Android SDK has apparently always been covered by this restrictive overall license. We just learned about it a couple days ago.
The main changes that has actually been added recently (as far as we remember) are:
* That the user is now requested to accept these terms before downloading the SDK and by refusing them, it isn't possible to get the Android SDK. Since these terms are very restrictive, we believe that anyone should be free to develop software for the Android platform without having to comply with such restrictions and that's why we decided to release a Replicant SDK.
* That all the individual plug-ins from Google are covered by these terms, removing any clear distinction between what's free and what's not among these plug-ins. The Replicant SDK won't check for software updates or plug-ins from Google and already comes with an usable emulator.
As for the files in the Android SDK itself, you can check their license in the various NOTICE files. For what we've seen, all the software mentioned in those files is released under a free software license, thus they are still free software. Keep in mind that Android uses a lot of 3rd party software for which Google is not the copyright holder and thus can't license the way it wants. Applying a restrictive license to the whole software package seems much like a borderline practice, though I'm not a lawyer and I'll let competent people judge if there is a license infringement or not. There is also a statement, when listing the restrictions on that overall non-free license, regarding other licenses that may apply: "Except to the extent required by applicable third party licenses". To my understanding, it means that those restrictions don't apply to the free software in the SDK package.
However, it remains possible that non-free software is present in the Android SDK package (we haven't checked each file particularly) and we thought it would be safer to release a Replicant SDK package. We never stated that the Android SDK was no longer free software, it is more complex than that.
Our Replicant SDK package was built from the Replicant 4.0 source tree and contains free software only (if you find any non-free piece in it, please let us know), it is not released under any particular license: check each component's license from the NOTICE files. Replicant uses the same codebase as CyanogenMod with some little modifications that are specific to our free system. The Replicant SDK is thus fully compatibly with any other Android distribution: you can use the Replicant SDK to develop software for another Android distribution.
Whoa! I am not attacking you as a troll. I'm merely pointing out that you have some bad information about this. Take it easy.
If running Linux under an emulator violates the GPL then Microsoft, VMware and a host of other companies are in deep trouble -- a lot of companies do that and it's OK.
What you run under an emulator is not an intrinsic part of an emulator itself. They are completely separate. This is perfectly legal under the GPL.
Even if someone happens to make GPL'd programs available with their emulator, they are still completely separate entities. From what I understand, there is no actual GPL code inside the SDK's code and that's what counts.
why do you choose to develop for android instead of ios?
So that revenue from sales of the Android application can be put toward the four-figure startup cost of iOS application development. And because unlike Android, which has the Xperia Play, JXD S5100, Archos GamePad, and Ouya, iOS has no device that comes with physical buttons.
when they allowed people to edit and modify their core code willy nilly. really, linux is terribly fragmented, as is BSD, which is why they are such utter failures in the market place (aside from a few billion smart phones, a couple million routers, millions of web servers, search engines, and other minor applications that few people use or care about)
If someone could mention what the letters SDK stand for, I might understand better.
(Otherwise I'll be forced to look it up.)
Tracy Johnson
Old fashioned text games hosted below:
http://empire.openmpe.com/
BT
Ah wait, you have a PC and can develop for Android on the PC? So what did your development PC cost?
If you're posting to Slashdot, then you far more likely than not already own a desktop or laptop computer, meaning that the computer you already own is a sunk cost now. This Wikipedia article cites a Net Applications report that Mac OS X has a usage share of 7.05 percent, compared to 91.58 percent for Windows. (The remaining amount is mostly GNU/Linux.) So it's far more likely that a randomly chosen general-purpose computer user's sunk cost is a PC than a Mac, which means the probability that one will end up having to buy a new computer is greater for iOS than for Android. Here are the prices for each of the four possibilities:
iOs devices have no hardware buttons? I ony have two of them, an iPhone and an iPad, both have ... 4 buttons. What exactly is your point about those buttons anyway?
I will grant that I was not precise enough. I was referring to hardware buttons for the application's use. The volume down button, volume up button, standby button, and home button are reserved for use by the system, not by the application. They cannot be reasonably reassigned as, for example, jump and fire buttons in an application. If an application puts jump and fire buttons on the touch screen, how can the player feel them to press them while looking at the action in the middle of the screen?
Both development platforms allow you to simulate/emulate the target platform.
How accurate is this simulation? For example, if something compiles and runs on the development computer, will it run on the target device at roughly the same speed? Otherwise, a developer could end up submitting something that crashes on the device or runs unacceptably slowly on the device. I guess I just have bad experiences from back when NES emulators were inaccurate about edge cases of the hardware and publicly distributed homebrew game ROMs relied on defects in the emulators of the time.
I doubt a PC owner will suddenly feel the urge to develop for iOS.
I agree, and noh8rz10's question can be considered answered.
Android devices span a far greater number of form factors, [...] screen size
As I understand it, an application is expected to support the non-retina iPhone 3GS, retina iPhone 4/4S, iPhone 5, non-retina iPad 1/2, retina iPad 3/4, and iPad mini. That's six different kinds of screen. If your application's layout is flexible enough for all these, it's probably flexible enough for Android's layout model.
performance
Apple still sells its older iPhone 3GS as an entry-level phone. Compare its performance to that of an iPhone 5.
http://rationalwiki.org/wiki/No_True_Scotsman
That is all. Thanks.