Peter Serwylo 4d11c97d51 Cleanup misc TODO's that are floating around (swap and general f-droid)
`SwapService`: Remove unneccesary TODO's and unused constant. Also
added other TODO's there which will need to be done before swap is
stable. Can make them into issues in gitlab, but will leave there for
now.

`SwapWorkflowActivity`: Clarified TODO's, fixed issue with cancelling
swap when in the "connecting" state (before it would not show the
right view again, now it goes back to the first view).

`WifiQrView`: Make scanning of QR code initiated by `SwapActivity`.
This is because the activity is actually the one who is able to listen
for a response anyway.

`BluetoothFinder`: Cleaned up TODO's in  but didn't actually address
them.

`BluetoothPeer`: Removed TODO about fingerprints, because TOFO is
probably the way to go with Bluetooth anyhow.

`BonjourFinder`: Remove dead code, prevent NPE by using final local
variable rather than member variable (the member variable gets set
to null in a different thread).

`BonjourPeer`: Fix bug with prompting other device to swap back.

`BluetoothDownloader`: Fix typo in comment.

`Downloader`: Removed TODO that was left over from a refactor, and
was never actually correct. The code after refactoring was broken
because it created an `InputStream` which was never closed. Now it
doesn't do that, because it was fixed in an earlier commit in this
branch.

`HttpDownloader`: Remove TODO, but clarify that the downloader does
not follow 30x redirects.
2015-07-27 17:19:51 +10:00
2014-12-11 13:50:05 +01:00
2015-05-15 00:25:44 +02:00
2015-04-29 22:16:14 +02:00
2015-05-18 23:08:32 +02:00
2013-04-12 14:45:48 +01:00

F-Droid Client

Client for F-Droid, the Free Software repository system for Android.

Building from source with Gradle

Once you have checked out the version you wish to build, install gradle on your system and run:

git submodule update --init
gradle build

Android Studio

From Android Studio: File -> Import Project -> Select the cloned top folder

Building from source with Ant

The only required tools are the Android SDK and Apache Ant.

Once you have checked out the version you wish to build, run:

git submodule update --init
cd F-Droid
./ant-prepare.sh # This runs 'android update' on the libs and the main project
ant clean release

Direct download

You can download the application directly from our site or browse it in the repo.

Contributing

You are welcome to submit Merge Requests via the Gitlab web interface. You can also follow our Issue tracker and our Forums.

Translating

The res/values-* dirs are kept up to date automatically via MediaWiki's Translate Extension. See our translation page if you would like to contribute.

Running the test suite

FDroid client includes a embedded Android Test Project for running tests. It is in the test/ subfolder. To run the tests from the command line, do:

git submodule update --init
./ant-prepare.sh # This runs 'android update' on the libs and the main project
ant clean emma debug install test

You can also run the tests in Eclipse. Here's how:

  1. Choose File -> Import -> Android -> Existing Android Code Into Workspace for the fdroidclient/ directory.
  2. Choose File -> Import -> Android -> Existing Android Code Into Workspace for the fdroidclient/test/ directory
  3. If fdroid-test has errors, right-click on it, select Properties, the Java Build Path, then click on the Projects tab.
  4. Click on the Add... button and select fdroidclient/
  5. Right-click on the fdroid-test project, then Run As... -> Android JUnit Test

Troubleshooting

When building F-Droid, the following error may occur:

Invalid file: extern/UniversalImageLoader/library/build.xml

Check the output of the ./ant-prepare.sh command. This error is often accompanied by the following message:

Error: The project either has no target set or the target is invalid. Please provide a --target to the 'android update' command.

The most likely cause of this is that your installed Android SDK is missing the target version specified by one of the dependencies. For example, at the time of writing this, UniversalImageLoader uses the "android-16" target API, however the default install of the Android SDK will usually only install the latest version ("android-20" as of writing). So you will have to install missings "android-xx" targets via the SDK manager. To get a list of already installed SDK targets, run:

$ android list targets

To get a list of targets used by fdroidclient libs, run:

$ for i in $(grep "android.library.reference" project.properties | cut -f2 -d'='); do
grep ^target $i/project.properties | cut -f2 -d'=';
done | sort | uniq | paste -s -d',' -

to install missing or all needed targets, for example "android-16" and "android-7" run:

$ android update sdk -u -t "android-16,android-7"

NOTE: While it may be tempting to add "--target=android-19" to the ant-prepare.sh script, it is not the correct solution. Although it may work, it can cause strange bugs at runtime.

License

This program is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Some icons are from the Material Design Icon set (https://github.com/google/material-design-icons) released under an Attribution 4.0 International license (http://creativecommons.org/licenses/by/4.0/)

Description
No description provided
Readme GPL-3.0 46 MiB
Languages
Java 98.5%
Shell 0.6%
Python 0.6%
AIDL 0.2%
HTML 0.1%