Showing posts with label Android. Show all posts
Showing posts with label Android. Show all posts

Monday, March 10, 2014

Breaking the Prism #002 - Alternative app store for Android

In last article from Breaking the Prism series I presented idea of alternative ROMs for Android. Today I will discuss next step - breaking free form proprietary app stores.

Currently, there are two main application stores for Android. One is given by default with most of Android powered phones: Google Play. It is official application shop for Android and it is managed by Google itself. Second store is called Amazon Appstore. As you can expect, it is owned by Amazon.

What is the problem with those appstores? They are heavily interested about what are you installing. You need account to be able to install applications, even free. To be honest, I'm not even sure how much information exactly user is sharing with app store. But it seems way too much.

Of course, anyone can develop own application and install it on any supported phone. This application will be packaged into .apk file, which could be distributed freely. So if you find any particularly interesting app packaged into .apk, you can install it (with usual risk factor for installing apps from internet) on your device.

If you are interested in application which is not only available via mentioned stores, and this application is also FOSS, it is pretty big chance that it is also available through F-Droid. F-Droid is kind of app store. It is quite similar for example to Debian apt system. It means, that F-Droid is app that manages different software repositories, allow user to install software from those repositories, and track updates. It don't even have user accounts system.

How to install F-Droid? You need to enable installation from unknown sources on your device. Then you need to go to F-Droid website and download its .apk. After installation you are free to browse through repository and install any software you will find there. When you want to install something, F-Droid firs will download .apk and then will try to install it. Note that you will still have enabled installation from unknown sources.

There is one cool feature that F-Droid has. You can add other software repositories, so more software will appear in software browser. So lets add Guardian Project repositories. Doing it pretty easy. You need to go through Menu > Manage Repos > New Repository and input https://guardianproject.info/repo/ there. Then just Menu > Update and voilĂ , you have access to several new cool apps. I will describe some of them in later articles.

I hope that this simple description will help with considering picking application distribution channel for Android. Stay vigilant!

Tuesday, January 14, 2014

Breaking the Prism #001 - Why do we need custom Android ROMs?

Currently, we have three major operating systems for smartphones: iOS, Android and Windows Phone. We also have BlackBerry and Firefox OS, but I'm not considering them as big players for purpose of this article. Windows and iOS are strictly proprietary systems and Android is generally open source with some additional problematic bonuses.

Lets start with Windows Phone and iOS. Those both systems are closely related to desktop operating systems Windows and OS X. All of those systems (mobile and desktop), are closed source and proprietary. Basically it means, that when you are using them, you are believing that companies working behind them, are honest, technically almost perfect and very responsive with bug fixing. You have to believe, because there is no cheap/legal way to examine and audit code by you or independent experts or communities. But should you believe?

I have pretty big issues with trust to companies. Especially when it comes to them handling my data and personal information. And a smartphone is a great storage and generator for such information. E-mails, browsing history, calls history, SMS, instant messaging, photos, geoinformation, videos, and generic files. Combined with rumors that NSA or other agencies are working with companies to put camera or other backdoors into such devices I have no trust for them.

Android from Google lays half way between trust and no trust scale. Core Android system is based on Linux kernel with code written in Java, C and C++. It has open source license that allows to examine code and add own modifications. The problem is that when you are buying device with Android, you are also receiving additional software packages with questionable behavior.

By questionable behavior I mean situation, that we don't know what each part of software is doing in background, where it is storing data and if it sends data to third parties. I call this type of programs "crapware". Usually it is added by phone manufacturer, sometimes by telecom operator, and no one knows how often by government agencies. Also, Google applications which are coming often with Android are not wanted by everyone because of privacy concerns.

Fortunately, often there is possibility to easily switch to clean Android system. And I don't mean compilation and installation form sources. I mean using custom ROMs dedicated to this purpose. Currently there are at lest two ROMs which are aspiring to do it in good way. Replicant and CyanogenMod. 

Replicant project aims to provide complete clean Android experience and replacement of proprietary drivers for various hardware components. CyanogenMod on the other hand tries to build optimally working, clean and very customizable Android system. By looking at those projects from free software perspective, Replicant wins. But since not everything working great on this ROM, practical approach shows that CyanogenMod might be better for non technical end user.

I think, that if your Android phone or tablet is officially supported by Replicant or CyanogenMod you should strongly consider switching to them. You can still install every crapware you like later ;). If your device is not officially supported, you can still try to find unofficial ports. For example, I'm using SmoothieJB based on CyanogenMod for my SGS Plus.

For today, if I would consider buying phone, I probably would buy Galaxy Nexus since it has good support by both mentioned ROMs. In next articles I will try to show alternatives to popular proprietary Android apps so we can try to fight with biggest surveillance programs since ever. Stay vigilant.