
Android SDK is now proprietary - Fletch137
http://blogs.fsfe.org/torsten.grote/2013/01/03/android-sdk-is-now-proprietary-replicant-to-the-rescue/
======
fpgeek
Hold on a minute.

While the Android SDK terms have changed over the years (most notably with the
recent "anti-fragmentation" clause), that's not what the post is talking
about. Instead, the post is identifying the Android SDK as non-free because
you have to agree to Google's Terms and Conditions in order to use it at all.
That's absolutely correct, however...

As someone who downloaded the original SDK in 2007, I can tell you that this
was true from the beginning. Sadly the Wayback Machine is having trouble
retrieving their first crawl of the terms (February 2009), but here's a crawl
from January 2010 that shows that the offending clause has been there for at
least 3 years:
[http://web.archive.org/web/20100111025451/http://developer.a...](http://web.archive.org/web/20100111025451/http://developer.android.com/intl/ja/sdk/terms.html)

A more accurate title would be: Google's Android SDK has always been
proprietary, but I only just noticed.

Edit: Based on the date at the bottom of the wayback page, the linked version
of the agreement dates back to April 2009.

~~~
taeric
The point may be that agreeing to their terms and conditions previously did
not result in one losing any rights.

Not sure, though.

~~~
fpgeek
One of the problematic sections others in this thread have mentioned dates
back to at least April 2009:

"3.3 Except to the extent required by applicable third party licenses, you may
not 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. Except to the extent required by applicable third party
licenses, you may not 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."

Here are some more rights you were giving up back then:

"4.3 You agree that if you use the SDK to develop applications for general
public users, you will protect the privacy and legal rights of those users. If
the users provide you with user names, passwords, or other login information
or personal information, your must make the users aware that the information
will be available to your application, and you must provide legally adequate
privacy notice and protection for those users. If your application stores
personal or sensitive information provided by users, it must do so securely.
If the user provides your application with Google Account information, your
application may only use that information to access the user's Google Account
when, and for the limited purposes for which, the user has given you
permission to do so.

4.4 You agree that you will not engage in any activity with the SDK, including
the development or distribution of an application, that interferes with,
disrupts, damages, or accesses in an unauthorized manner the servers,
networks, or other properties or services of any third party including, but
not limited to, Google or any mobile communications carrier."

At first glance, I don't think 4.3 or 4.4 is unreasonable (3.3 is more
complicated), but those terms are clearly non-free. Free means free to use for
any purpose (including trying to invade people's privacy or taking down cell
networks) because different people will reasonably disagree about what
purposes are and aren't legitimate.

------
codeflo
At first I thought this is hyperbole, but there's an anti-forking clause in
the license agreement:

> "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."

IANAL, but this seems to be designed to prevent projects like the Kindle Fire
from building their own ecosystem on Google's code. Good for Google I guess,
but no longer in the spirit of open source.

~~~
vibrunazo
We have been through this many times before here. This is meant to prevent
forks that break compatibility. Like that chinese company that made their
"own" phone OS. That was just a fork of Android, but not perfectly compatible
with the Android SDK. It causes fragmentation in the sense that it forces
developers to rewrite apps for it because there are differences in the SDK.

Amazon, Cyanogen, OUYA etc are all fine.

~~~
lnanek2
The whole point of free software, though, is that you can fork it and
customize and use it as you like. If someone wants to fork Android to run on
stoves, and they have to break compatibility to do that, if it was free
software it would support and allow that. Instead you aren't even allowed to
use the SDK or let developers use the SDK if you do so. You can't really claim
Android is open or free anymore now, just that it uses a few free pieces,
which are being taken away wherever possible.

~~~
drzaiusapelord
>The whole point of free software, though, is that you can fork it and
customize and use it as you like.

No one is stopping you from writing your own SDK. Reverse engineer the API and
off you go. Fork your own android. Make your own play store. Its not a
violation of "freedom" because something is inconvenient.

Its like when people complain about Linus ignoring their patches. Sorry, but
its still free software, its just done under terms you don't appreciate. Fork
it if its such a huge problem for you.

~~~
raganwald
Your argument doesn't make sense to me. You're replying to a post that says
the SDK is not free. Writing your own SDK if you don't like it is agreeing
that the SDK is not free.

The next bit about Linus makes no sense at all. We are not talking about
Google ignoring your fork of Android or your fork of the SDK, we're talking
about being prohibited from forking the SDK or using it to fork Android.

The SDK is not free. It is not inconvenient to fork it, it is prohibited.
Android may be free by your definition, but the SDK is not.

------
hexagonc
Android SDK != Android. Not saying whether this move by Google is good or bad,
just pointing out an important difference. You can still fork the Android
source code to your heart's content, you just have to write your own toolchain
for building and developing with it.

~~~
codeflo
Maybe you can, but the way the license is written, you essentially agree not
to ever do that:

> "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."

Now, IANAL and maybe that doesn't mean what I think it means. To me it sounds
like you're signing a non-compete agreement just by downloading the SDK.

~~~
tarkin2
What if you fork it, and do NOT call the project anything related to Android?

That way, you won't be fragmenting Android - you'll be creating something new.

Then, should Android even stagnate, someone could take the source and create a
new mobile platform, similar to, but not a different version of, Android.

What is and what is not a fragmentation of Android seems to be the key here.

~~~
simonh
> What if you fork it, and do NOT call the project anything related to
> Android?

It says you can't distribute any modified versions of the SDK. What you choose
to call such modifications isn't addressed and isn't relevant, you just can't
do it.

~~~
tarkin2
SDK != Source. And it's the source I'm concerned about.

------
lnanek2
Another interesting step in this direction is that Google stopped listing
third party SDK add-ons in the Android SDK manager. They have to be added
manually as a URL now, which means far, far fewer developers will ever use a
third party SDK add-on.

It's sad, but I think it really hurt Google that they pushed tablets so hard
and so long and pretty much failed at that market where amazon kicked ass. So
business reasons seem to have forced them to kill Android as open and free.
Reminds me a lot of this recent post about all the platforms closing up to try
to squeeze more money out of mobile as web revenues dry up:
[http://techcrunch.com/2012/12/29/unnatural-acts-and-the-
rise...](http://techcrunch.com/2012/12/29/unnatural-acts-and-the-rise-of-
mobile/)

Google's bread and butter has always been web ads, and it is losing that with
the mobile revolution. Now amazon came along and customized Android, and took
a large share of the mobile money that Google was expecting. I do really hate
the new Google Play. It is constantly showing books and movies and music in my
face when I want apps and app search results directly. You can tell they are
being pressured to deliver revenue at the cost of user experiences and pushed
out a poor man's clone of amazon business model.

~~~
vetinari
Not true. I recently installed Android SDK on a new computer and the SDK
manager had bunch of third-party repositories already added. Heck, the
hardware acceleration of the emulator under Windows requires Intel's
repository for the HAXM installation and x86 images.

------
ecopoesis
Very amusing. Didn't Google just fight, and win, a court case with Oracle
about forking Java into the Android SDK?

So it's not OK for Oracle to prevent Java fragmentation, but it is OK for
Google to prevent Android fragmentation.

Apparently "don't be evil" is more nuanced then I thought.

~~~
Dylan16807
Uh I think you got the words "SDK" and "API" mixed up.

Also preventing fragmentation is a goal, not an action. Oracle did legally
abusive things, google hasn't.

~~~
ecopoesis
Both Oracle and Google are trying to protect their IP from fragmentation.
Google changing the SDK license is just as much of a action as Oracle suing
Google over their copying of the API. We're just earlier in the process with
Android.

~~~
Dylan16807
They are definitely both 100% 'actions'. But google is just being less-sharey
with stuff that isn't even part of android. While oracle was trying to claim
code that wasn't even theirs.

------
yock
I wonder if that's why we're seeing stories like this?
[http://www.foxbusiness.com/technology/2013/01/03/samsung-
con...](http://www.foxbusiness.com/technology/2013/01/03/samsung-confirms-
plan-to-begin-inching-away-from-android/)

Samsung has amassed quite a history, in a very short amount of time, of
heavily customizing Android for their devices. That might at least partially
explain why they seem willing to gamble on their own in-house OS rather than
continue with Android.

~~~
spiralpolitik
Could you blame them ? The writing started to appear on the wall when Google
started selling the Nexus 7 and 10 at cost making 90% remaining Android
tablets (including most of Samsung's tablet line) dead in the water with the
Nexus 4 being another nail in that coffin.

~~~
cma
Umm, the Nexus 10 is made by Samsung...

~~~
wmf
For now. What if Google chooses a different OEM for the Nexus 10 II? The Nexus
business model basically means one winner (chosen by Google) and N losers.

~~~
DannyBee
N losers, like Samsung lost with the Galaxy S3? (Or the S2, or motorola lost
with the droid, or ...)

~~~
wmf
The full Nexus business model (where the Nexus is sold at cost so regular
Android phones look overpriced) just went into effect. If the Galaxy S4 is
$500 and the Nexus 5 is $350 but they have similar specs, Samsung could be in
serious trouble.

------
mikehotel
From the terms and conditions:

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.

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.

3.5 Use, reproduction and distribution of components of the SDK licensed under
an open source software license are governed solely by the terms of that open
source software license and not this License Agreement.

------
happywolf
Sorry to sound like a troll. But I am always confused by this movement on free
software. Make no mistake: I totally respect choices of certain individuals
whom contribute to free software like Linux, they have made the software a
better place, just like those philanthropists out there whom make the world a
little bit less cruel. However for those who decide not to, I don't see the
reason to demand for anything, even in this case Google which may have changed
its decisions. All effort will need money, and I really don't see there is
free lunch in this world. Am I missing anything?

------
yk
" 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;"

The part about not being allowed to reverse engineer seems to be the part of
the license, which is most against free software principles. So IANAL, but
actually understanding what a software does is, IMHO, the core of FOSS.

------
TallGuyShort
As far as I can tell, Android has always been proprietary except for the parts
they were required to release under the GPL (like the kernel). Their GUI
libraries were closed source (at least when I was tinkering with Android), and
clauses like this have been in their terms for a long time. Sure, they look
more open than Apple, but Android is a long way from being as open as the
desktop Linux distros and BSD systems.

~~~
rst
Not correct. AOSP source code has always included full source for
android.view. _, android.widget._ , and so forth. Which are, by the way,
Apache-licensed, not GPL. If you'd like to look for yourself, it's here:

<https://github.com/android/platform_frameworks_base>

in the "core/java" subdirectory.

In recent releases (4.x, a/k/a ICS and later), some of the low-level GPU
drivers are included as binary blobs, but the GUI libraries built on top of
them remain, at the very least, source-available.

------
jpalomaki
At least I'm having problems accessing the site. Page from Google Cache:
[http://webcache.googleusercontent.com/search?q=cache:LPBhLpm...](http://webcache.googleusercontent.com/search?q=cache:LPBhLpmlOa8J:blogs.fsfe.org/torsten.grote/2013/01/03/android-
sdk-is-now-proprietary-replicant-to-the-rescue/&hl=en&tbo=d&gl=fi&strip=1)

------
aioprisan
so if you build something based on Android and want to expose some
functionality to that system but customize it, you can't do it on top of the
Android SDK?

------
JohnFromBuffalo
>ActivityManager.isUserAMonkey() >>Log.WTF()

------
neya
Oh boy, I can't wait to see how this would be purposefully re-written and
bastardized by TechCrunch (or by MG Seigler himself) saying how iOS is much
better in the end, because both of some random reason.

------
olleicua
All the more reason to back Ubuntu on phones.

------
barraponto
What does this mean for Cordova/PhoneGap?

------
capo
Google's blogpost about vendor compatability:
[http://officialandroid.blogspot.com/2012/09/the-benefits-
imp...](http://officialandroid.blogspot.com/2012/09/the-benefits-importance-
of-compatibility.html)

------
btian
What bullshit. Does requiring users to agree to GPL or LGPL license make a
software non-free?

~~~
curiousdannii
Users of GPL/LGPL don't have to agree to anything. Only _distributors_ of
GPL/LGPL software do.

~~~
reidrac
Yes, that's true.

Most people misunderstand the license, being my favourite:

[http://www.gnu.org/licenses/gpl-
faq.html#GPLRequireSourcePos...](http://www.gnu.org/licenses/gpl-
faq.html#GPLRequireSourcePostedPublic)

EDIT: just in case... "You are not required to accept this License in order to
receive or run a copy of the Program.", point 9 of the GPLv3:
<http://www.gnu.org/licenses/gpl.html>

~~~
btian
You guys are right, I was wrong. As others have pointed out, Android SDK has
never been free software and Android SDK != Android

