Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.5.1 #374

Merged
merged 233 commits into from
Feb 11, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
233 commits
Select commit Hold shift + click to select a range
0232a2a
Merge pull request #357 from dronekit/release-1.5.0
m4gr3d Nov 25, 2015
2439e21
Add mission speed control in ServiceApp. Added Client api to pauseMis…
Nov 28, 2015
88eb04e
Moved mission speed to GenericMavLinkDrone. Added javadocs
Nov 30, 2015
f4ea03b
Merge pull request #358 from dronekit/add_mission_speed_control
m4gr3d Nov 30, 2015
b492b1f
Fixes Vagrantfile to allow Sphinx docs to build
hamishwillee Dec 1, 2015
dfc6d02
Add links to source and releases on github in additional resources page
hamishwillee Dec 1, 2015
0796420
Merge pull request #361 from hamishwillee/hgw_add_source_resources
m4gr3d Dec 1, 2015
903c01e
Merge pull request #359 from hamishwillee/hgw_fix_vagrant_sphinx
m4gr3d Dec 1, 2015
170271c
bumped gradle wrapper version.
m4gr3d Dec 4, 2015
926744b
bumped version for beta 1.
m4gr3d Dec 4, 2015
3b81548
client library version bump.
m4gr3d Dec 4, 2015
bc526e5
Added solo spline record message.
m4gr3d Dec 8, 2015
186683e
Added support for the solo spline play message.
m4gr3d Dec 9, 2015
20a3e01
Added solo spline point tlv packet.
m4gr3d Dec 9, 2015
9d1a900
Added solo spline playback status tlv packet.
m4gr3d Dec 9, 2015
13c7f93
added solo spline path settings tlv packet.
m4gr3d Dec 9, 2015
c60f3c8
added solo spline path status tlv packet.
m4gr3d Dec 9, 2015
d4148b5
updated the travis ci configuration file.
m4gr3d Dec 9, 2015
a6cc400
disabled predexing for ci builds.
m4gr3d Dec 9, 2015
f52c74d
updated travis configuration file.
m4gr3d Dec 9, 2015
cb77a45
Merge pull request #2 from 3drobotics/mp_cable_cam
m4gr3d Dec 9, 2015
99024d4
Added inspect TLV messages
Dec 11, 2015
d814c8a
Merge pull request #1 from 3drobotics/release-1.5.1.beta.1
m4gr3d Dec 13, 2015
45d84f2
Merge branches 'develop' and 'release-1.5.1' of ssh://github.com/3dro…
m4gr3d Dec 13, 2015
7dc468e
versions bump.
m4gr3d Dec 13, 2015
c1616d4
cleaned up starter app gradle build file.
m4gr3d Dec 13, 2015
2a6e3a8
adding support for 'solo' connection type.
m4gr3d Dec 17, 2015
68ad357
Moved mavlink connections handling within the MavLinkClient class.
m4gr3d Dec 17, 2015
52ce493
Made the data link stream generic.
m4gr3d Dec 17, 2015
392b854
Augmented the capability of the Drone object.
m4gr3d Dec 17, 2015
f259d63
droneshare upload functionality removal.
m4gr3d Dec 17, 2015
67c45fa
removal of unused jar libraries.
m4gr3d Dec 17, 2015
0bde9d2
Merge branches 'connection_model_cleanup' and 'droneshare_cleanup' of…
m4gr3d Dec 17, 2015
e143e66
Added definition for vehicle id.
m4gr3d Dec 17, 2015
0e0b61e
Finish abstraction of the DroneManager datalink layer.
m4gr3d Dec 17, 2015
b918d6e
code cleanup
m4gr3d Dec 17, 2015
0c4a189
code cleanup
m4gr3d Dec 17, 2015
57abdbc
added wifi connection util class.
m4gr3d Dec 17, 2015
d208419
Merge branches 'droneshare_cleanup' and 'in_app_network_connection' o…
m4gr3d Dec 17, 2015
7b85f17
upgraded the sdk and build tools.
m4gr3d Dec 17, 2015
e9186df
completed first implementation draft for in-app wifi connection.
m4gr3d Dec 18, 2015
3bbc904
bug fix.
m4gr3d Dec 18, 2015
b669ce7
code cleanup.
m4gr3d Dec 18, 2015
1a9ff6f
travis ci configuration update.
m4gr3d Dec 18, 2015
1ceab33
bug fix.
m4gr3d Dec 18, 2015
4a38421
implementation cleanup.
m4gr3d Dec 18, 2015
a8b3639
implementation cleanup.
m4gr3d Dec 18, 2015
1fa8e3a
added backward compatibility support.
m4gr3d Dec 18, 2015
37a37bf
Merge pull request #4 from 3drobotics/droneshare_cleanup
m4gr3d Dec 18, 2015
9322235
backward compatibility support implementation cleanup.
m4gr3d Dec 18, 2015
843c8b1
bug fixes.
m4gr3d Dec 18, 2015
5298af3
bug fixes.
m4gr3d Dec 18, 2015
f58bd4d
Merge pull request #6 from 3drobotics/in_app_network_connection
m4gr3d Dec 18, 2015
b4f87b6
Merge branches 'connection_model_cleanup' and 'develop' of ssh://gith…
m4gr3d Dec 18, 2015
f090cae
merge cleanup.
m4gr3d Dec 18, 2015
1b90a41
merge cleanup.
m4gr3d Dec 18, 2015
de94e3d
class refactoring.
m4gr3d Dec 18, 2015
5144f74
class refactoring.
m4gr3d Dec 18, 2015
f5868a1
class refactoring.
m4gr3d Dec 18, 2015
1c06215
constructor visibility fix.
m4gr3d Dec 18, 2015
7a92c97
downgrade the gradle distribution version.
m4gr3d Dec 18, 2015
4a2ea18
Added new TLV message parser for updated shotManager
Dec 18, 2015
36d6115
Merge pull request #3 from 3drobotics/release-1.5.1.beta.2
m4gr3d Dec 18, 2015
0307fa4
Merge pull request #9 from 3drobotics/release-1.5.1.beta.3
m4gr3d Dec 19, 2015
2f7bc39
Merge branches 'develop' and 'release-1.5.1' of ssh://github.com/3dro…
m4gr3d Dec 19, 2015
05f86e2
version bump for beta 3
m4gr3d Dec 19, 2015
76b4268
gradle build config cleanup.
m4gr3d Dec 19, 2015
b1a2410
Merge pull request #10 from 3drobotics/release-1.5.1.beta.3
m4gr3d Dec 20, 2015
65d6e18
bug fixes.
m4gr3d Dec 20, 2015
f88f10e
Merge pull request #11 from 3drobotics/release-1.5.1.beta.4
m4gr3d Dec 21, 2015
bfd3660
Added 'fabric.properties' to the gitignore list.
m4gr3d Dec 21, 2015
342966e
upgraded gradle library plugins.
m4gr3d Dec 21, 2015
40ec55e
update travis ci conf file to disable predexing.
m4gr3d Dec 21, 2015
df55c5a
bumped gradle distribution version.
m4gr3d Dec 21, 2015
4bcb245
fixed mavlink library dependency resolution.
m4gr3d Dec 21, 2015
9d63537
upgraded the gradle tools plugin to version 1.5.0
m4gr3d Dec 21, 2015
5568f12
travis ci configuration update.
m4gr3d Dec 21, 2015
3bbf04d
Merge pull request #13 from 3drobotics/project_setup_cleanup
m4gr3d Dec 21, 2015
83bd97b
Merge branches 'develop' and 'release-1.5.1' of ssh://github.com/3dro…
m4gr3d Dec 21, 2015
0171c67
updated version code generation.
m4gr3d Dec 21, 2015
969c6db
updated version name method.
m4gr3d Dec 21, 2015
da57ff2
updated projects definition.
m4gr3d Dec 21, 2015
c099f3b
fixed path to mavlink project jar task.
m4gr3d Dec 21, 2015
5bad2b3
path fix.
m4gr3d Dec 21, 2015
7122e4d
Merge pull request #14 from 3drobotics/project_setup_cleanup
m4gr3d Dec 21, 2015
112bf0c
Merge branches 'develop' and 'release-1.5.1' of ssh://github.com/3dro…
m4gr3d Dec 21, 2015
e305228
fixed issue with mavlink jar file generation.
m4gr3d Dec 21, 2015
139b36f
travis ci configuration file update.
m4gr3d Dec 21, 2015
4710ec9
travis ci configuration file update.
m4gr3d Dec 21, 2015
2891cc7
Merge pull request #15 from 3drobotics/project_setup_cleanup
m4gr3d Dec 21, 2015
c4521e1
Merge branches 'develop' and 'release-1.5.1' of github.com:3drobotics…
m4gr3d Dec 21, 2015
1981941
Merge branches 'develop' and 'new_shots' of github.com:3drobotics/dro…
m4gr3d Dec 23, 2015
8a9fc00
Merge branches 'new_shots' and 'release-1.5.1' of github.com:3droboti…
m4gr3d Dec 23, 2015
ff409f5
version bump for beta 5.
m4gr3d Dec 24, 2015
06bf40f
update gradle tools plugin.
m4gr3d Dec 27, 2015
3d75cbc
Merge pull request #17 from 3drobotics/instant_run_support
m4gr3d Dec 27, 2015
156a721
Merge pull request #16 from 3drobotics/release-1.5.1.beta.5
m4gr3d Dec 27, 2015
ddd167d
Merge branches 'develop' and 'release-1.5.1' of github.com:3drobotics…
m4gr3d Dec 27, 2015
888f784
Merge branch 'release-1.5.1' of github.com:3drobotics/dronekit-androi…
m4gr3d Dec 28, 2015
4322d78
added support for `SoloFollowOptionsV2` packet.
m4gr3d Dec 29, 2015
7bd3e98
Added latLng addition with distance in meters helper method
Dec 30, 2015
4899d06
Merge pull request #19 from 3drobotics/latlng_distance_sum
m4gr3d Dec 30, 2015
3091b73
Added default constructor for follow v2 options
Dec 30, 2015
58134d9
Fixed issues pointed out by the code review.
m4gr3d Dec 30, 2015
b302bee
Merge branch 'follow_free_look_support' of github.com:3drobotics/dron…
m4gr3d Dec 30, 2015
1ecc71e
Merge pull request #18 from 3drobotics/follow_free_look_support
Dec 30, 2015
4d32433
version bump for build 6.
m4gr3d Dec 30, 2015
edf5997
Merge pull request #20 from 3drobotics/release-1.5.1.beta.6
m4gr3d Dec 30, 2015
3d05046
Merge branches 'new_shots' and 'release-1.5.1' of github.com:3droboti…
m4gr3d Dec 30, 2015
d3a71b8
added `alpha` build type.
m4gr3d Dec 31, 2015
cf527f3
Merge branches 'new_shots' and 'release-1.5.1' of github.com:3droboti…
m4gr3d Dec 31, 2015
46cd149
updated ig shots tlv packets.
m4gr3d Jan 2, 2016
98927c2
move the inspect tlv packets within the `sitescan` package.
m4gr3d Jan 2, 2016
ed5762a
added tlv packets for the site scan scan and survey shots.
m4gr3d Jan 3, 2016
3dd7cff
Attempt to connect to wifi without password if wifi config is saved o…
Jan 6, 2016
5663571
Fixed connection code
Jan 6, 2016
42fc054
Merge branches 'connect_to_config_wifi' and 'release-1.5.1' of https:…
Jan 6, 2016
0ef2c69
Updated connect to already configured wifi network
Jan 7, 2016
25affdf
Merge pull request #22 from 3drobotics/connect_to_config_wifi
m4gr3d Jan 7, 2016
3dfd431
Merge pull request #12 from 3drobotics/release-1.5.1
m4gr3d Jan 7, 2016
77275f1
Merge branches 'develop' and 'new_shots' of github.com:3drobotics/dro…
m4gr3d Jan 7, 2016
076300c
Merge branches 'connection_model_cleanup' and 'develop' of github.com…
m4gr3d Jan 7, 2016
1479bc4
Merge pull request #23 from 3drobotics/connection_model_cleanup
m4gr3d Jan 7, 2016
92cebba
Merge branches 'develop' and 'ig_shots' of github.com:3drobotics/dron…
m4gr3d Jan 7, 2016
4b58f9e
Add null pointer check for drone object
Jan 8, 2016
4f9c4ff
Merge pull request #24 from 3drobotics/fix_npe
m4gr3d Jan 8, 2016
48bff90
Added mpcc shot type
Jan 8, 2016
3cd667c
Merge pull request #25 from 3drobotics/update_mpcc_shot_type
m4gr3d Jan 8, 2016
2bef8ea
Modified MPCC apis to reflect shotManager changes
Jan 11, 2016
f13d51a
Added new geotag algorithm.
m4gr3d Jan 12, 2016
35c92d9
Merge branches 'develop' and 'ig_shots' of github.com:3drobotics/dron…
m4gr3d Jan 12, 2016
9c279cc
Removed used of the `getLocalIp()` for non-sitl builds.
m4gr3d Jan 12, 2016
5179903
Fixed jira ticket: https://3drsolo.atlassian.net/browse/DRON-30.
m4gr3d Jan 13, 2016
d188f5e
Unit test bug fix.
m4gr3d Jan 13, 2016
7a97111
Merge pull request #27 from 3drobotics/fix_dron-30_fails_to_reconnect
n0k Jan 13, 2016
db539ad
Merge branches 'develop' and 'ig_shots' of github.com:3drobotics/dron…
m4gr3d Jan 13, 2016
0c3301e
Move the geotagging logic within the `GeoTagUtils` class.
m4gr3d Jan 13, 2016
8814d36
Merge branches 'develop' and 'update_mpcc_apis' of https://github.com…
Jan 14, 2016
756bf5b
updated the ig shot ids.
m4gr3d Jan 16, 2016
0e8f8f4
updated javadocs.
m4gr3d Jan 16, 2016
8476541
Merge pull request #26 from 3drobotics/update_mpcc_apis
m4gr3d Jan 16, 2016
e1b0e85
Merge remote-tracking branch 'origin'
Jan 16, 2016
f1338c8
version bump for 7th beta release.
m4gr3d Jan 16, 2016
51d26fd
Merge pull request #28 from 3drobotics/release-1.5.1.beta.7
m4gr3d Jan 17, 2016
a09522d
Merge branches 'develop' and 'ig_shots' of github.com:3drobotics/dron…
m4gr3d Jan 17, 2016
05ea415
added utility method to the Parameters class.
m4gr3d Jan 18, 2016
eebf09c
gradle build files cleanup.
m4gr3d Jan 18, 2016
de4e96f
travis configuration update.
m4gr3d Jan 18, 2016
b3c21d3
Merge pull request #29 from 3drobotics/gradle_cleanup
m4gr3d Jan 18, 2016
a95a7c4
Merge branches 'develop' and 'ig_shots' of github.com:3drobotics/dron…
m4gr3d Jan 18, 2016
563b8f9
Merge remote-tracking branch 'origin'
Jan 19, 2016
7701bfb
DRON-22 (Combine MathUtils in ClientLib and MathUtil in ServiceApp)
Jan 19, 2016
80e160b
DRON-22 (Combine MathUtils in ClientLib and MathUtil in ServiceApp)
Jan 19, 2016
cefd40d
Merge branch 'dron_22' of https://github.com/3drobotics/dronekit-andr…
Jan 20, 2016
4409f75
Merge pull request #31 from 3drobotics/dron_22
m4gr3d Jan 20, 2016
4ba3699
Added constants for auto point and free look in MPCC
Jan 20, 2016
2d0b8e2
DRON-29 (Fix `ControlApi#pauseAtCurrentLocation()` implementation)
Jan 20, 2016
7c5d8e1
Merge pull request #32 from 3drobotics/constants_for_mpcc_camera
n0k Jan 20, 2016
f37baba
DRON-29 (Fix `ControlApi#pauseAtCurrentLocation()` implementation)
Jan 20, 2016
e49e469
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 20, 2016
05da235
code cleanup.
m4gr3d Jan 21, 2016
94aebf8
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 20, 2016
09e7fe3
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 21, 2016
6701075
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 21, 2016
c8e0048
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 21, 2016
398be0c
Updated gradle build tools to alpha5
Jan 21, 2016
d440015
DRON-18 (Validate GPS location before usage)
Jan 21, 2016
aea26f6
Downgrade gradle plugin to 1.5.0 and remove unavailable dexInProcess
Jan 21, 2016
2792ae2
Revert "Downgrade gradle plugin to 1.5.0 and remove unavailable dexIn…
Jan 21, 2016
3135b50
Revert "Revert "Downgrade gradle plugin to 1.5.0 and remove unavailab…
Jan 21, 2016
4dd5525
Merge pull request #35 from 3drobotics/update_gradle_tools_plugin
m4gr3d Jan 23, 2016
6d1276a
added event to geotagged media information.
m4gr3d Jan 23, 2016
fa90332
Merge branches 'develop' and 'ig_shots' of github.com:3drobotics/dron…
m4gr3d Jan 23, 2016
c873459
added synchronous method for tlog parsing.
m4gr3d Jan 23, 2016
1be1f90
Merge pull request #37 from 3drobotics/ig_shots
m4gr3d Jan 23, 2016
ef9d6ef
version bump for beta 8 release.
m4gr3d Jan 23, 2016
72150ee
Update Sentek Multi-Spectral camera files to support all 3 sensor var…
Jan 23, 2016
4ad76b7
Modified TxPower Api to accept a String countryCode instead of boolean
Jan 25, 2016
56506c6
Ensure backwards compatibility for tx power compliance
Jan 25, 2016
e7ee4cc
Updated per comments
Jan 26, 2016
d05ff45
Update MPCC spline packet according to ShotManager change
Jan 26, 2016
3a3b9bf
Updated javadocs
Jan 26, 2016
5b23c31
Merge pull request #39 from 3drobotics/update_mpcc_spline_packet
m4gr3d Jan 27, 2016
3258a47
DRON-18 (Validate GPS location before usage)
Jan 21, 2016
d40be09
Merge branch 'validate_gps' of https://github.com/3drobotics/dronekit…
Jan 27, 2016
b511c01
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 21, 2016
93d2b65
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 27, 2016
2ceb535
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 27, 2016
e7b006c
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 27, 2016
85478f6
Merge branches 'develop' and 'release-1.5.1.beta.8' of github.com:3dr…
m4gr3d Jan 27, 2016
4e00cbb
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 27, 2016
b55a75a
Merge branch 'vehicle_brake' of https://github.com/3drobotics/droneki…
Jan 27, 2016
8485d8c
Merge branch 'validate_gps' of https://github.com/3drobotics/dronekit…
Jan 27, 2016
11a18ce
Merge branch 'validate_gps' of https://github.com/3drobotics/dronekit…
Jan 27, 2016
abef06d
Version increase for the hotfix release for release 1.5.0.
m4gr3d Jan 27, 2016
eee3c75
Added default value for the firmware version number.
m4gr3d Jan 27, 2016
9482ce5
Added enum for countries the client supports for tx power compliance
Jan 27, 2016
cf38b6c
Merge pull request #41 from 3drobotics/vehicle_brake
m4gr3d Jan 27, 2016
84a5401
Merge pull request #42 from 3drobotics/validate_gps
m4gr3d Jan 27, 2016
67f834c
Merge branches 'APP-2075_useCountryForTxPower' and 'develop' of https…
Jan 27, 2016
7f52106
Merge pull request #38 from 3drobotics/APP-2075_useCountryForTxPower
m4gr3d Jan 28, 2016
33e5681
Merge pull request #43 from 3drobotics/develop
Jan 28, 2016
77f6072
Ensure Follow V2 Options packet is given correct message type
Jan 28, 2016
eb0561f
Merge pull request #44 from 3drobotics/APP-2261_fixFollowV2Options
m4gr3d Jan 29, 2016
9b94636
Merge pull request #371 from poli0048/develop
m4gr3d Jan 29, 2016
4105fd8
Merge pull request #40 from 3drobotics/release-1.5.1.beta.8
Jan 29, 2016
5dc386b
Update version to 1.5.1.beta.9
Jan 29, 2016
ac2e7fa
Merge pull request #45 from 3drobotics/release-1.5.1.beta.9
Feb 1, 2016
f1419db
Added default value for the firmware version number.
m4gr3d Feb 1, 2016
dba4af3
Add missing class imports.
m4gr3d Feb 1, 2016
33ddc3a
Added alphaRelease build variant
Feb 2, 2016
71191aa
Merge pull request #47 from 3drobotics/add_alpha_release_build
m4gr3d Feb 2, 2016
af9e1a7
Update copyright range to 2015-2016
hamishwillee Feb 3, 2016
2b7b08b
Merge pull request #372 from hamishwillee/hgw_update_readme
m4gr3d Feb 4, 2016
371f689
Added negative test case for vehicle version parsing
Feb 4, 2016
fa8e222
Merge pull request #46 from 3drobotics/hotfix_1.5.1
m4gr3d Feb 4, 2016
f323ea2
Merge branch 'develop' of github.com:dronekit/dronekit-android into d…
m4gr3d Feb 4, 2016
2861795
Updated version to 1.5.1.beta.10
Feb 4, 2016
2890cca
Merge pull request #49 from 3drobotics/release-1.5.1
Feb 4, 2016
58a8d6a
Added API 21 check before casting variable to NetworkCallback
Feb 8, 2016
fc2a415
Merge pull request #51 from 3drobotics/bug_fix
m4gr3d Feb 8, 2016
7b37432
Updated to version 1.5.1.beta.11
Feb 9, 2016
4748674
Merge pull request #53 from 3drobotics/release-1.5.1.beta.11
Feb 9, 2016
92fdcfa
Reduce the foreground notification priority to hide it from the statu…
m4gr3d Feb 10, 2016
bb7bdd8
Reduce the priority for the foreground notification to hide it from t…
m4gr3d Feb 11, 2016
f5a0723
Merge pull request #55 from 3drobotics/hide_foreground_notifcation
Feb 11, 2016
3584ed6
version bump for release 1.5.1
m4gr3d Feb 11, 2016
5de9286
Merge pull request #57 from 3drobotics/release-1.5.1
m4gr3d Feb 11, 2016
4052003
Update travis ci build script
m4gr3d Feb 11, 2016
23aa25b
Update travis ci build script
m4gr3d Feb 11, 2016
03a52cd
Update travis ci build script
m4gr3d Feb 11, 2016
b5198d1
Update travis ci build script
m4gr3d Feb 11, 2016
0597a41
Update travis ci build script
m4gr3d Feb 11, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,6 @@ crashlytics.properties

# Vagrant
.vagrant/

# Fabric (crashlytics)
fabric.properties
22 changes: 15 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,27 @@ android:
components:
- platform-tools
- tools

# The BuildTools version used by your project
- build-tools-23.0.2

# The SDK version used to compile your project
- android-23

# Additional components
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
- extra-android-support

licenses:
- 'android-sdk-license-.+'

before_script:
- echo yes | android update sdk -u -a -t tools
- echo yes | android update sdk -u -a -t build-tools-22.0.1
- echo yes | android update sdk -u -a -t android-22
- echo yes | android update sdk -u -a -t extra-google-m2repository
- echo yes | android update sdk -u -a -t extra-android-m2repository
- echo yes | android update sdk -u -a -t extra-android-support,extra-google-google_play_services
- export GRADLE_OPTS="-XX:MaxPermSize=2048m -Xmx1536m"

script: ./gradlew clean build
script: ./gradlew cleanJar clean testDevDebug assembleDevDebug -PdisablePreDex

after_success:
- chmod a+x .utility/push-docs-to-gh-pages.sh
- .utility/push-docs-to-gh-pages.sh
Expand Down
22 changes: 11 additions & 11 deletions ClientLib/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apply plugin: 'com.android.library'

ext {
VERSION_MAJOR = 2
VERSION_MINOR = 7
VERSION_MINOR = 8
VERSION_PATCH = 0
VERSION_SUFFIX = "release"

Expand All @@ -15,12 +15,12 @@ ext {
}

android {
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION
compileSdkVersion android_build_sdk_version
buildToolsVersion android_build_tools_version

defaultConfig {
minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION)
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION)
minSdkVersion android_build_min_sdk_version
targetSdkVersion android_build_target_sdk_version
versionCode PUBLISH_VERSION_CODE
versionName PUBLISH_VERSION
}
Expand Down Expand Up @@ -55,13 +55,13 @@ android {
}

dependencies {
compile 'com.android.support:support-v4:22.2.1'
compile 'com.google.android.gms:play-services-base:7.3.0'
compile "com.android.support:support-v4:${support_lib_version}"
compile "com.google.android.gms:play-services-base:${play_services_version}"

compile project(':dependencyLibs:Mavlink')
compile files('libs/Mavlink.jar')
compile project(':Mavlink')
releaseCompile files('libs/Mavlink.jar')
}

assemble.dependsOn ':dependencyLibs:Mavlink:jar'
assemble.dependsOn ':Mavlink:jar'

apply from: "${rootDir}/release_android_library.gradle"
apply from: "../release_android_library.gradle"
129 changes: 85 additions & 44 deletions ClientLib/src/main/java/com/o3dr/android/client/Drone.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,14 @@
import com.o3dr.android.client.apis.MissionApi;
import com.o3dr.android.client.apis.VehicleApi;
import com.o3dr.android.client.interfaces.DroneListener;
import com.o3dr.android.client.utils.TxPowerComplianceCountries;
import com.o3dr.services.android.lib.coordinate.LatLong;
import com.o3dr.services.android.lib.drone.attribute.AttributeEvent;
import com.o3dr.services.android.lib.drone.attribute.AttributeType;
import com.o3dr.services.android.lib.drone.calibration.magnetometer.MagnetometerCalibrationStatus;
import com.o3dr.services.android.lib.drone.companion.solo.SoloAttributes;
import com.o3dr.services.android.lib.drone.companion.solo.SoloEventExtras;
import com.o3dr.services.android.lib.drone.companion.solo.SoloEvents;
import com.o3dr.services.android.lib.drone.connection.ConnectionParameter;
import com.o3dr.services.android.lib.drone.connection.ConnectionResult;
import com.o3dr.services.android.lib.drone.mission.Mission;
Expand Down Expand Up @@ -132,17 +135,19 @@ void init(ControlTower controlTower, Handler handler) {
this.droneObserver = new DroneObserver(this);
}

Context getContext(){
Context getContext() {
return this.context;
}

synchronized void start() {
if (!serviceMgr.isTowerConnected())
if (!serviceMgr.isTowerConnected()) {
throw new IllegalStateException("Service manager must be connected.");
}

IDroneApi droneApi = droneApiRef.get();
if (isStarted(droneApi))
if (isStarted(droneApi)) {
return;
}

try {
droneApi = serviceMgr.get3drServices().registerDroneApi(this.apiListener, serviceMgr.getApplicationId());
Expand All @@ -151,8 +156,9 @@ synchronized void start() {
throw new IllegalStateException("Unable to retrieve a valid drone handle.");
}

if (asyncScheduler == null || asyncScheduler.isShutdown())
if (asyncScheduler == null || asyncScheduler.isShutdown()) {
asyncScheduler = Executors.newFixedThreadPool(1);
}

addAttributesObserver(droneApi, this.droneObserver);
resetFlightTimer();
Expand Down Expand Up @@ -185,16 +191,17 @@ synchronized void destroy() {
private void checkForGroundCollision() {
Speed speed = getAttribute(AttributeType.SPEED);
Altitude altitude = getAttribute(AttributeType.ALTITUDE);
if (speed == null || altitude == null)
if (speed == null || altitude == null) {
return;
}

double verticalSpeed = speed.getVerticalSpeed();
double altitudeValue = altitude.getAltitude();

boolean isCollisionImminent = altitudeValue
+ (verticalSpeed * COLLISION_SECONDS_BEFORE_COLLISION) < 0
&& verticalSpeed < COLLISION_DANGEROUS_SPEED_METERS_PER_SECOND
&& altitudeValue > COLLISION_SAFE_ALTITUDE_METERS;
+ (verticalSpeed * COLLISION_SECONDS_BEFORE_COLLISION) < 0
&& verticalSpeed < COLLISION_DANGEROUS_SPEED_METERS_PER_SECOND
&& altitudeValue > COLLISION_SAFE_ALTITUDE_METERS;

Bundle extrasBundle = new Bundle(1);
extrasBundle.putBoolean(EXTRA_IS_GROUND_COLLISION_IMMINENT, isCollisionImminent);
Expand All @@ -214,8 +221,9 @@ public double getSpeedParameter() {
Parameters params = getAttribute(AttributeType.PARAMETERS);
if (params != null) {
Parameter speedParam = params.getParameter("WPNAV_SPEED");
if (speedParam != null)
if (speedParam != null) {
return speedParam.getValue();
}
}

return 0;
Expand All @@ -227,8 +235,9 @@ public double getSpeedParameter() {
* @param action Runnabl that will be executed.
*/
public void post(Runnable action) {
if (handler == null || action == null)
if (handler == null || action == null) {
return;
}

handler.post(action);
}
Expand Down Expand Up @@ -262,8 +271,9 @@ public long getFlightTime() {

public <T extends Parcelable> T getAttribute(String type) {
final IDroneApi droneApi = droneApiRef.get();
if (!isStarted(droneApi) || type == null)
if (!isStarted(droneApi) || type == null) {
return this.getAttributeDefaultValue(type);
}

T attribute = null;
Bundle carrier = null;
Expand All @@ -277,7 +287,7 @@ public <T extends Parcelable> T getAttribute(String type) {
try {
carrier.setClassLoader(contextClassLoader);
attribute = carrier.getParcelable(type);
}catch(Exception e){
} catch (Exception e) {
Log.e(TAG, e.getMessage(), e);
}
}
Expand All @@ -287,8 +297,9 @@ public <T extends Parcelable> T getAttribute(String type) {

public <T extends Parcelable> void getAttributeAsync(final String attributeType,
final OnAttributeRetrievedCallback<T> callback) {
if (callback == null)
if (callback == null) {
throw new IllegalArgumentException("Callback must be non-null.");
}

final IDroneApi droneApi = droneApiRef.get();
if (!isStarted(droneApi)) {
Expand All @@ -309,19 +320,21 @@ public void run() {
handler.post(new Runnable() {
@Override
public void run() {
if (attribute == null)
if (attribute == null) {
callback.onRetrievalFailed();
else
} else {
callback.onRetrievalSucceed(attribute);
}
}
});
}
});
}

private <T extends Parcelable> T getAttributeDefaultValue(String attributeType) {
if (attributeType == null)
if (attributeType == null) {
return null;
}

switch (attributeType) {
case AttributeType.ALTITUDE:
Expand Down Expand Up @@ -475,7 +488,7 @@ private boolean isStarted(IDroneApi droneApi) {
return droneApi != null && droneApi.asBinder().pingBinder();
}

public boolean isStarted(){
public boolean isStarted() {
return isStarted(droneApiRef.get());
}

Expand All @@ -491,11 +504,13 @@ public ConnectionParameter getConnectionParameter() {

public <T extends MissionItem> void buildMissionItemsAsync(final MissionItem.ComplexItem<T>[] missionItems,
final OnMissionItemsBuiltCallback<T> callback) {
if (callback == null)
if (callback == null) {
throw new IllegalArgumentException("Callback must be non-null.");
}

if (missionItems == null || missionItems.length == 0)
if (missionItems == null || missionItems.length == 0) {
return;
}

asyncScheduler.execute(new Runnable() {
@Override
Expand All @@ -514,11 +529,13 @@ public void run() {
}

public void registerDroneListener(DroneListener listener) {
if (listener == null)
if (listener == null) {
return;
}

if (!droneListeners.contains(listener))
if (!droneListeners.contains(listener)) {
droneListeners.add(listener);
}
}

private void addAttributesObserver(IDroneApi droneApi, IObserver observer) {
Expand Down Expand Up @@ -554,8 +571,9 @@ public void removeMavlinkObserver(MavlinkObserver observer) {
}

public void unregisterDroneListener(DroneListener listener) {
if (listener == null)
if (listener == null) {
return;
}

droneListeners.remove(listener);
}
Expand Down Expand Up @@ -689,13 +707,14 @@ public void loadWaypoints() {
MissionApi.getApi(this).loadWaypoints();
}

public Handler getHandler(){
public Handler getHandler() {
return handler;
}

void notifyDroneConnectionFailed(final ConnectionResult result) {
if (droneListeners.isEmpty())
if (droneListeners.isEmpty()) {
return;
}

handler.post(new Runnable() {
@Override
Expand All @@ -708,38 +727,59 @@ public void run() {

void notifyAttributeUpdated(final String attributeEvent, final Bundle extras) {
//Update the bundle classloader
if (extras != null)
if (extras != null) {
extras.setClassLoader(contextClassLoader);
}

if (AttributeEvent.STATE_UPDATED.equals(attributeEvent)) {
getAttributeAsync(AttributeType.STATE, new OnAttributeRetrievedCallback<State>() {
@Override
public void onRetrievalSucceed(State state) {
if (state.isFlying())
resetFlightTimer();
else
stopTimer();
}
switch (attributeEvent) {
case AttributeEvent.STATE_UPDATED:
getAttributeAsync(AttributeType.STATE, new OnAttributeRetrievedCallback<State>() {
@Override
public void onRetrievalSucceed(State state) {
if (state.isFlying()) {
resetFlightTimer();
} else {
stopTimer();
}
}

@Override
public void onRetrievalFailed() {
stopTimer();
}
});
} else if (AttributeEvent.SPEED_UPDATED.equals(attributeEvent)) {
checkForGroundCollision();
@Override
public void onRetrievalFailed() {
stopTimer();
}
});
break;

case AttributeEvent.SPEED_UPDATED:
checkForGroundCollision();
break;

//TODO remove this when deprecated methods are deleted in 3.0
// This ensures that the api is backwards compatible
case SoloEvents.SOLO_TX_POWER_COMPLIANCE_COUNTRY_UPDATED:
String compliantCountry = extras.getString(SoloEventExtras.EXTRA_SOLO_TX_POWER_COMPLIANT_COUNTRY);
final Bundle eventInfo = new Bundle(1);
boolean isEUCompliant = !TxPowerComplianceCountries.getDefaultCountry().name().equals(compliantCountry);
eventInfo.putBoolean(SoloEventExtras.EXTRA_SOLO_EU_TX_POWER_COMPLIANT, isEUCompliant);
sendEventToListeners(SoloEvents.SOLO_EU_TX_POWER_COMPLIANCE_UPDATED, eventInfo);
break;
}

if (droneListeners.isEmpty())
sendEventToListeners(attributeEvent, extras);
}

private void sendEventToListeners(final String attributeEvent, final Bundle extras) {
if (droneListeners.isEmpty()) {
return;
}

handler.post(new Runnable() {
@Override
public void run() {
for (DroneListener listener : droneListeners) {
try {
listener.onDroneEvent(attributeEvent, extras);
}catch(Exception e){
} catch (Exception e) {
Log.e(TAG, e.getMessage(), e);
}
}
Expand All @@ -748,8 +788,9 @@ public void run() {
}

void notifyDroneServiceInterrupted(final String errorMsg) {
if (droneListeners.isEmpty())
if (droneListeners.isEmpty()) {
return;
}

handler.post(new Runnable() {
@Override
Expand Down
Loading