summaryrefslogtreecommitdiffstats
path: root/android-mobile
AgeCommit message (Collapse)Author
2020-03-08usb-serial-for-android: Implement timeout-handlingGravatar Christof Arnosti
Since the Android USB stack and subsequently the usb-serial-for-android driver have problems with read-timeouts, the read-timeout is now implemented in AndroidSerial.java. Also, DC_STATUS_TIMEOUT is returned if there are less bytes returned than expected. Different chipsets seem to behave differently with usb-serial-for-android. On CP210x the read blocks until there is some data here, but on FTDI the chip seems to return whatever is currently in the buffer (so 0 bytes if the buffer is empty). This different behaviour should be mitigated by the changes by this commit. Signed-off-by: Christof Arnosti <charno@charno.ch>
2020-03-07usb-serial-for-android: add PID/VIDsGravatar Christof Arnosti
Signed-off-by: Christof Arnosti <charno@charno.ch> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-03-07usb-serial-for-android: ImplementationGravatar Christof Arnosti
Implement the libdivecomputer API in Java and create C/JNI translation layer. [Dirk Hohndel: whitespace harmonization - yes, some of this is Java, this still makes it much easier to read for me; also changed the FTDI conditional compilation to make sure we can still use that for mobile-on-desktop if necessary] Signed-off-by: Christof Arnosti <charno@charno.ch> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-03-07usb-serial-for-android: add dependencyGravatar Christof Arnosti
Signed-off-by: Christof Arnosti <charno@charno.ch> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-21Android: bundle default font for use in OnePlus devicesGravatar Dirk Hohndel
This is working around a Qt Bug https://bugreports.qt.io/browse/QTBUG-69494 which prevents correct rendering of the OnePlus fonts. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-21Android: update the target SDK Version to 28Gravatar Dirk Hohndel
This is required by the play store starting November. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-07-18Android: newer version of Gradle pluginGravatar Jan Mulder
Using more recent versions of the Android NDK results in a build failure saying something like "No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android". Mips support went away after Android NDK, Revision r17c, and we are using r18b at this moment. Too old Gradle stuff gets confused by this. The solution is simple. Use a newer version of the Gradle plugin. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2019-04-25Update (and fix) device mobile ID's for Scubapro dive computersGravatar Linus Torvalds
I'm not sure this is actually relevant for anything any more, but this adds the USB device ID's for the Scubapro G2 Console and HUD versions. It also fixes things to use the proper vendor name (a bit too much cut-and-paste, where the code said "Suunto" instead of "Scubapro"). The real device ID changes are in libdivecomputer, this is just the Android xml list for recognized USB devices that likely nobody really uses. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2018-12-30Android build: set newer versions and parameterize ANDROID_PLATFORMGravatar Jan Mulder
Hard coding desired ANDROID_PLATFORM on multiple places is simply bad. Fix this. Further, set the variables to a much newer state. CAVEAT: this will likely break android build, so be careful on bisecting. All fixed in next, related commits. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-12Android build: use our own gradle build specGravatar Jan Mulder
At this point in time there seems something wrong with jcenter that is used to download all Android build artifacts from. It simply does not find the needed stuff on there and our build fails. Its unclear if this is a temporary issue at jcenter, or its just an intended change. This fix is a bit of a hack. It provides our own gradle build spec instead of the one that is provided from Qt (which is pulled in using androiddeployqt). Added is a working download link to maven, and a newer com.android.tools.build:gradle is used compared to Qt. All this makes Travis happy again. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-08-12Use hex USB VID/PIDGravatar Dirk Hohndel
Except of course that the Android intent does give us these values in decimal. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-11Whitespace cleanup, extra braces, and null checksGravatar Dirk Hohndel
Thanks to Lubomir for the review. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-11Android: fix function signature in java codeGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-11Android: only handle Intents after the app is initializedGravatar Dirk Hohndel
The old code happened to work because this function only got called if the app was already running, but the correct thing to do is to always wait until we have first called back from C++ code, indicating that the app is indeed fully initialized. This way we only process the Intent in one place in the Java code. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-11Android: add another FTDI product id to recognized IDsGravatar Dirk Hohndel
We don't know for sure if this is Aqualung specific, though. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-11Android: add callback from IntentGravatar Dirk Hohndel
Right now all this does is add the device string to the log. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-11Android: add Java class to receive IntentsGravatar Dirk Hohndel
We want to be able to respond to a USB device being plugged in. This simply logs the information we get from the device. Sadly the really useful getProductName and getManufacturerName require API level 21 (so Android 5.0 or newer) and we still have a couple hundred users on 4.1-4.4. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-19Android: set target API level to 26Gravatar Dirk Hohndel
This doesn't affect the minimum we support, but a target level of at least 26 will be required starting in August in order to be able to upload to the Google app store. This is equivalent to targeting Android 8.0. Google plans to bump this target API level every year. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-02Android: add Atomics Aquatics Cobalt as deviceGravatar Dirk Hohndel
This way plugging in a Cobalt should pop up a question if the user wants to open Subsurface-mobile. Unfortunately, this, too, fails on my Android devices, so I can't test it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-01-29Correct the ftdi pid for Cressi devicesGravatar Anton Lundin
Way back in time there was a copy paste error in the Cressi pid. This corrects it. Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-28android: Add new usb vid/pid's to manifestGravatar Anton Lundin
This adds vid/pid of the recently added usb devices. * EON Steel core * Scubapro G2 * Scubapro Aladin Square Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-17mobile: black and white backgrounds on startingGravatar Jan Mulder
This very simple commit has a long story. See the mailing list subject "mobile: android splash screen (and issue 513) opacity weirdness". There is even more. I found the following deccription on Internet: https://falsinsoft.blogspot.nl/2017/07/qml-show-android-native-splash-screen.html and tried to implement this with the potentially nice Qt functionality (since 5.8) to manually get rid of the splash screen. Unfortunately, this does not work. Notice that there are subtile differences in the here found internet page, and the method originally implemented in commit 04e994b575. This fix is as mimimalistic as it can be. Just do not set black but white for the initial background. Unfortunately, there is still a small position change of the icon. It is known why, but solving is left as an exercise to the reader. Fixes: #513 Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-03Android: add Suunto EON Steel as deviceGravatar Dirk Hohndel
This way plugging in an EON Steel should pop up a question if the user wants to open Subsurface-mobile. Unfortunately, the download doesn't work, yet, and worse, if the phone goes to sleep while an EON Steel is plugged in, this appears to trigger a hard crash on the EON Steel. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-29Subsurface-mobile on Android: add USB intent filterGravatar Dirk Hohndel
With this a few FTDI based dive computers should be visible from the app. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-27Android build: remove references to ministro stuffGravatar Jan Mulder
First, Ministro (an app to help installing Qt dependencies on the mobile platform) is not needed in Subsurface context, as all dependencies are part of the distribution. Secondly, it breaks the build as the strings (removed here) are also defined in Qt, and apparently the Gradle build is detecting this double define. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-04-06QML UI: support extreme widescreen Android devicesGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-02-06android: Rework build.shGravatar Anton Lundin
This reworks build.sh for proper argument parsing and variable quoting. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-06-22Qt 5.7 requires at least Android SdkVersion 16Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-04-21Fix Android keyboard issue as recommended by KirigamiGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-03-05Android build: pass in build nrGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-03-05Android build: automate setting the right version numberGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-01-19Subsurface-mobile on Android: change the splash screen methodologyGravatar Dirk Hohndel
This is based on post by Ben Laud https://medium.com/@benlaud/complete-guide-to-make-a-splash-screen-for-your-qml-android-application-567ca3bc70af It creates a theme that uses a splash drawable that Android will show immediately when the application is launched. And then starts the QML application with visibility set to false adn only makes it visible (and replace the splash screen) once initialization is finished. We still get a little flicker with the switch from splash to start page to dive list, but over all the experience is hugely improved. And the bug that the splash screen stays around when starting Subsurface-mobile in landscape also appears to be fixed. Fixes #994 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-12-30Subsurface-mobile: add title to splashGravatar Rick Walsh
Add "Subsurface-mobile" to base of splash screen Signed-off-by: Rick Walsh <rickmwalsh@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-12-29Subsurface-mobile: capitalization of app nameGravatar Rick Walsh
We call the app Subsurface-mobile most of the time, let's do so for the app name too Signed-off-by: Rick Walsh <rickmwalsh@gmail.com> ../android-mobile/res/drawable-xhdpi/subsurface_mobile_splash.9.png ../android-mobile/res/drawable-xxhdpi/subsurface_mobile_splash.9.png ../android-mobile/res/drawable-xxxhdpi/subsurface_mobile_splash.9.png Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-12-29Subsurface-mobile: Add 9-patch splash imagesGravatar Rick Walsh
Adds 9-patch splash images, so that will not be distorted on different sized and oriented displays. Created with guidance from https://software.intel.com/en-us/xdk/articles/android-splash-screens-using- nine-patch-png Signed-off-by: Rick Walsh <rickmwalsh@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-12-28Add splash screen for android-mobileGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-07-16Use a different package for the mobile appGravatar Anton Lundin
Now we produce two different android apps, and to be able to have both installed at once, we need to put them in different packages. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-07-09Add different icon for mobile appGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>