Git Product home page Git Product logo

sapelli's People

Contributors

benelliott avatar gulbalasalamov avatar jdevoo avatar julia-altenbuchner avatar michalis-vitos avatar mstevens83 avatar periclesjr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sapelli's Issues

AsyncTaskWithWaitingDialog.java line 57

in uk.ac.ucl.excites.sapelli.collector.util.AsyncTaskWithWaitingDialog.onPostExecute

  • Number of crashes: 1
  • Impacted devices: 1

There's a lot more information about this crash on crashlytics.com:
https://fabric.io/ucl-excites/android/apps/uk.ac.ucl.excites.sapelli.collector/issues/560d1387f5d3a7f76b77b362

BUILD_INFO
Built by mstevens on 2014-08-21 15:32:41 BST using master branch, revision 8f32c1d with changes

SAPELLI_DEVICE_ID_CRC32
1685678441 and 4136949986

Use new Android Camera API

Since Android 5.0 a new Camera API (android.hardware.camera2) was introduced (http://developer.android.com/about/versions/android-5.0.html#Media) and the old one (android.hardware.camera) was deprecated.

While the old API still works on 5.0(+) devices we now have a shit load of deprecation warnings in the code (notably in the CameraController).

It would thus be good start using the new API on supporting devices and only use the deprecated API (with added warning suppression) on pre-5.0 devices (there is no support library to use the new API on those).
Using the new API may (perhaps) also allow for an easy way to resolve #36, #31 and #61 which are unresolved camera-related crashes.

java.lang.NullPointerException in android.widget.Spinner

java.lang.NullPointerException
at android.widget.Spinner$DialogPopup.dismiss(Spinner.java:844)
at android.widget.Spinner$DialogPopup.onClick(Spinner.java:878)
at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:934)
at android.widget.AdapterView.performItemClick(AdapterView.java:301)
at android.widget.AbsListView.performItemClick(AbsListView.java:1280)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:3071)
at android.widget.AbsListView$1.run(AbsListView.java:3971)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4867)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
at dalvik.system.NativeStart.main(NativeStart.java)

Sane CSV export support

Currently CSV export support is implemented in a hackish way. It doesn't play nice with composite columns like LocationColumn. This needs a proper & clean solution, which should also pave the way for storage in (relational) databases where composite columns would lead to similar problems.

Receiver Type

When I slide the send data button the receiver type options do not always appear and as a 1st time user I would be lost as to what to do here. After several attempts I realise that appears on some occasions and not on others

GPS logic draining a lot of battery

The way that GPS is currently working drains a lot of battery and in some occasions the phones were out of battery after 3-4 hours. Maybe we should provide alternative GPS strategies that could be defined at the project level (XML attribute).

Loading new project

Project loading issues:

  • tag and content are deprecated. Use UI to configure data transmission.

I'm not exactly sure what this means but could hazard a guess. However many users will have no idea what a UI is or Transmission tag. Needs a more lay person description of what happened. E.g. Transmission tab would be better.

Way to generate test records

Prototype:
List generateSynteticRecords(Schema schema, int numberOfRecords, Location centrePoint, float radius)

Dropbox priority list or white list

There should be a way (attribute at XML) to define which files should be prioritized for upload through Dropbox and which files should not be uploaded at all.

"Could not find method org.apache.commons.codec.binary.Hex.encodeHexString"

Android includes an outdated version (1.2) of commons-codec as an internal library. This library is not exposed in the Android SDK so app developers who want to rely on commons-codec need to treat it as an addition dependency and include it in the APK of their app. However, at runtime Android will always favour its internal version of the library which causes trouble when app code tries to call methods that don't exist in that outdated version but do exist in the version the developer expected to be using.

We have this problem because in SQLiteBlobColumn we call a commons-codec method that was introduced in v1.4.
This causes dalvikvm to throw this error (which strangely did not crash the app though, possibly because we caught the exception):

Could not find method org.apache.commons.codec.binary.Hex.encodeHexString

Improvements to SVG support

We have support for SVG(Z) since ec61559, but it may need further improvements in the future.
Currently we use Matthias' own fork of the svg-android library (mstevens83/svg-android@a1a613b). This library has fairly limited support for SVG features but runs fast.
Matthias has also experimented with the AndroidSVG library (https://code.google.com/p/androidsvg) which has extensive support for SVG features but runs much slower. So far Matthias' attempts to optimise it but have been unsuccessful...
In the future we may want to switch to AndroidSVG to have more comprehensive support for SVG features. But we may need to wait until the creator (or we) manages to speed it up. Alternatively we could try to compensate its slowness by pre-loading decision tree images and caching them or the View objects that hold them.
It is also noteworthy that AndroidSVG does not seem to support scaling which not maintain aspect ratio (or at least not in the way we've tried to use it, i.e. with ScaleType.FIT_XY), while Matthias' fork of svg-android does. However, now that we switched to drawables for the buttons, this type of scaling may no longer be needed at all.

BaseActivity.java line 236

in uk.ac.ucl.excites.sapelli.collector.activities.BaseActivity.showDialog

  • Number of crashes: 1
  • Impacted devices: 1

There's a lot more information about this crash on crashlytics.com:
https://fabric.io/ucl-excites/android/apps/uk.ac.ucl.excites.sapelli.collector/issues/5606448ef5d3a7f76b55a1ad

BUILD_INFO
Built on 2015-06-19T11:28:54+01:00 by mstevens using master branch, revision 5411155 without changes
SAPELLI_DEVICE_ID_CRC32
280547591 (= Xcover1)
VERSION_INFO
Sapelli Collector v2.0.0-beta-15 [versionCode: 30369; release]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.