top | item 5007801

(no title)

vibrunazo | 13 years ago

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.

discuss

order

lnanek2|13 years ago

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|13 years ago

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

DannyBee|13 years ago

Actually, this is false entirely.

The SDK sources are still Apache2, and you can build your own SDK with them if you wanted.

You just can't take the Google-built SDK binaries (except as allowed by a third party license, such as Apache 2), or non-open source pieces, and use them to do it.

darkarmani|13 years ago

Why can't you compile from source that is under Apache 2?

codeflo|13 years ago

I'm sure that's a good thing for the Android ecosystem. I'm not against that on priciple (that is to say, I'm not an open-source zealot). I'm just saying that a having single entity with the sole right to change the API is essentially the definition of a closed system.

revscat|13 years ago

I'm sure there are justifications for this clause, but that doesn't change the fact that you can no longer fork the code, and that API changes are under the control of a single entity.

This is almost the textbook definition of closed software.

DannyBee|13 years ago

You can fork the open source parts of the code, even the open source parts of the SDK code. The SDK code is not the same as the SDK download.

Zigurd|13 years ago

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

I don't see a distinction between what Aliyun is doing and what Amazon, OPhone, and Cyanogen are doing. Aliyun was, after all, accused of making Android apps available for Aliyun without the developers' OK. So Aliyun is as compatible as Kindle Fire.

There might be some reason Aliyun is different, but, so far, nobody has actually shown such a difference.

What's bad about this is that Google is putting a fence around code they have made available under the Apache license.