Skip to content
This repository
branch: master

Merge category-hierarchy--respect-display-order (#223) into master

Category hierarchy: Respect display order

Because of the inherently unordered nature of JSON objects, we couldn't
respect the display order of the category hierarchy. This switches the
hierarchy response to a new endpoint that uses arrays to specify the
order of the children. This removes the need to perform a
lexicographical sort on the children before displaying them in the list.
latest commit f063f16f40
Marc Zych marczych authored April 23, 2014
Octocat-spinner-32 App Merge remote-tracking branch 'origin/master' into category-hierarchy-… April 23, 2014
Octocat-spinner-32 PlayStoreResources Add flat white notification icon March 03, 2014
Octocat-spinner-32 scripts Add scripts directory November 12, 2013
Octocat-spinner-32 .gitattributes Mark jar files as binary to prevent gradle dependency bug September 17, 2013
Octocat-spinner-32 .gitignore Merge proguard (#171) into master December 12, 2013
Octocat-spinner-32 Add CLA September 16, 2013
Octocat-spinner-32 LICENSE Update licensing April 04, 2012
Octocat-spinner-32 Add CLA September 16, 2013
Octocat-spinner-32 Go through TODOs and clean up style August 28, 2013
Octocat-spinner-32 build.gradle Gradle build! August 09, 2013
Octocat-spinner-32 formatting.xml Formatting profiles for AOSP and iFixit coding standards November 29, 2012
Octocat-spinner-32 build.gradle: Refactor of productFlavors February 24, 2014
Octocat-spinner-32 settings.gradle Gradle build! August 09, 2013

Official iFixit Android App v2.0.0

This app is a native Android version of the iFixit website including:

  • Device hierarchy browsing
  • Answers and guide lists for devices
  • Guide view
  • Media manager integration: viewing and uploading of images
  • Guide lists for favorites, featured, and teardowns
  • Guide creation and editing


Start by cloning the repo:

git clone

Copy to This contains all of the values necessary to build the app in debug mode. To build the app in release mode, update the necessary keystore information and symlink App/sites/{siteName}/keystore to your keystore like so:

ln -s /path/to/keystore App/sites/ifixit/keystore

Open build.gradle in your IDE of choice or build it on the command line by invoking gradle commands such as gradle installIfixitDebug.


All of the app's content comes from iFixit's public API.

The app is built on many open source libraries such as:

The complete list of dependencies can be found in the build.gradle file.


We have a small development team, and don't have the resources to implement all of the features we would like to ourselves. We'd love help! If there is any feature you would contribute, fork our code and hack away!

Got an awesome feature idea that we don't have an API to support yet? Post the request on iFixit Meta and we'll add it to our to-do list.

Before your code can be accepted into the project you must also sign the Individual Contributor License Agreement (CLA).


This source code is licensed under the GPLv3. Any submissions to this project must also be licensed under GPLv3. The contents of this software are subject to the terms of the GNU General Public License (the "License"). You may not use this software except in compliance with this License. You can obtain a copy of the license at See the License for the specific language governing permissions and limitations under the License.


All iFixit trademarks contained herein are NOT licensed for use by any third-parties. Their inclusion in this open source software is only for their eventual replacement if you distribute the application.

That is, the trademarks are protected, but the code itself is under an open license. You can use the trademarks individually, but not for any sort of distribution.

Copyright (c) 2013 iFixit

Something went wrong with that request. Please try again.