Giter Site home page Giter Site logo

connectiq-apps's Introduction

/connectiq-apps

A collection of Connect IQ apps and libraries

Purpose

This repo is officially maintained by the Garmin Connect IQ team, containing a small set of reference examples and monkey barrel code libraries. It is our hope that this repository will extend the resources available to our developers to help them build exciting new content!

What's in the Repo?

Audio Content Provider Apps : Special apps that are used directly by the device media player to acquire and play audio content.

Barrels : Monkey Barrels are a way for developers to create custom Monkey C libraries containing source code and resource information that can be easily shared across Connect IQ Projects. To find out more about Monkey Barrels, please see the Shareable Libraries chapter in the Programmer's Guide.

Data Fields : Apps that run within the native activities that allow developers to compute values based off of the current activity, such as running, biking, etc.

Device Apps : More capable than the other app types, device apps can implement third party activities and provide additional functionality that is not otherwise addressed by the other available app types.

Watch Faces : Low power apps that replace the main watch face and are the home screen on wearable devices.

Widgets : At-a-glance apps that are readily accessible from the watch face or device home screen. Widgets automatically close after a period of inactivity

To find out more about the Connect IQ Application Types type please see the Application Types chapter in the Programmer's Guide.

Other Useful Info

Forums:

The Connect IQ forum provides access to our community of amazing developers, as well as the ear of the Connect IQ team, and includes several spaces for interaction:

Please be sure to refer to the forum rules when using the general forums and the bug reports forum rules when posting to the bug reports forum.

Helpful Links:

If you would like to get in touch with the Connect IQ team directly, you may do so by emailing [email protected].

Thank you!

-The Connect IQ Team

connectiq-apps's People

Contributors

1mnj1 avatar alphamonkeyconnectiq avatar brandonconnectiq avatar bruno-garcia avatar cedricdelpoux avatar codeferricode avatar codyjung avatar colemanconnectiq avatar harrychin avatar kenconnectiq avatar kyleconnectiq avatar martijncuppens avatar murchu27 avatar pryhoda avatar raulbcs avatar samuelmr avatar travisconnectiq avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

connectiq-apps's Issues

MonkeyMusic: Album art and progress in seconds shows on simulator but not watch

I'm testing this app out and when I run it in the simulator, I can see the album art for my mp3 file and it also shows the progress of the song in seconds on the playback screen.

When I send the app to my device though, it just shows a genric placeholder album art icon and the current progress doesn't appear.

Does anyone know why this might be the case? My device is a Garmin 945 if that makes a difference.

How to use Media::ActiveContent

Hello, I'm just looking to start music at a position and not at the beginning I feel like I should use ActiveContent but I have only errors. Thank you in advance.

Strava Widget does not build

I'm trying to build this in Eclipse using the latest version of the SDK and the Eclipse plug-in.

The app fails to build with these errors-

BUILD: ERROR: /Users/sunilsh/workspace/connectiq-apps/widgets/strava-api/source/StravaLogin.mc:46:  Undefined symbol "ClientSecret" detected.
BUILD: ERROR: /Users/sunilsh/workspace/connectiq-apps/widgets/strava-api/source/StravaLogin.mc:46:  Undefined symbol "ClientId" detected.
BUILD: ERROR: /Users/sunilsh/workspace/connectiq-apps/widgets/strava-api/source/StravaLogin.mc:82:  Undefined symbol "ClientId" detected.

disc-golf-android app crashed

disc-golf-android app crashed when I clicked 'Select a Device' button on 'Setup Players' page:

10/25 15:37:47: Launching app
$ adb push /Volumes/Data/projects/connectiq-apps/apps/disc-golf/disc-golf-android/app/build/outputs/apk/app-debug.apk /data/local/tmp/com.garmin.android.apps.samples.disgolf
$ adb shell pm install -r "/data/local/tmp/com.garmin.android.apps.samples.disgolf"
pkg: /data/local/tmp/com.garmin.android.apps.samples.disgolf
Success

$ adb shell am start -n "com.garmin.android.apps.samples.disgolf/com.garmin.android.apps.samples.disgolf.CourseSetupActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Client not ready yet..Waiting for process to come online
Connected to process 7428 on device sony-d6603-BH909E0W1L
I/art: Late-enabling -Xcheck:jni
I/art: Debugger is no longer active
W/System: ClassLoader referenced unknown path: /data/app/com.garmin.android.apps.samples.disgolf-2/lib/arm
W/ResourceType: Found multiple library tables, ignoring...
I/InstantRun: Instant Run Runtime started. Android package is com.garmin.android.apps.samples.disgolf, real application class is null.
I/System.out: engineVerify
W/System: ClassLoader referenced unknown path: /data/app/com.garmin.android.apps.samples.disgolf-2/lib/arm
D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
I/Adreno-EGL: <qeglDrvAPI_eglInitialize:379>: EGL 1.4 QUALCOMM build: Nondeterministic_AU_msm8974_LA.BF.1.1.3_RB1__release_AU (I741a3d36ca)
OpenGL ES Shader Compiler Version: E031.29.00.00
Build Date: 04/04/16 Mon
Local Branch: mybranch19053788
Remote Branch: quic/LA.BF.1.1.3_rb1.12
Local Patches: NONE
Reconstruct Branch: NOTHING
I/OpenGLRenderer: Initialized EGL, version 1.4
I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@43f52d5 time:309092864
W/IInputConnectionWrapper: beginBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getSelectedText on inactive InputConnection
W/IInputConnectionWrapper: endBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper: getTextAfterCursor on inactive InputConnection
W/IInputConnectionWrapper: beginBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getSelectedText on inactive InputConnection
W/IInputConnectionWrapper: endBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper: getTextAfterCursor on inactive InputConnection
W/IInputConnectionWrapper: beginBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getSelectedText on inactive InputConnection
W/IInputConnectionWrapper: endBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper: getTextAfterCursor on inactive InputConnection
W/IInputConnectionWrapper: beginBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getSelectedText on inactive InputConnection
I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@43f52d5 time:309104039
W/IInputConnectionWrapper: endBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper: getTextAfterCursor on inactive InputConnection
I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@43f52d5 time:309104709
W/IInputConnectionWrapper: beginBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getSelectedText on inactive InputConnection
W/IInputConnectionWrapper: endBatchEdit on inactive InputConnection
W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper: getTextAfterCursor on inactive InputConnection
I/Timeline: Timeline: Activity_launch_request id:com.garmin.android.apps.samples.disgolf time:309127477
I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@4e24d34 time:309127751
I/Timeline: Timeline: Activity_launch_request id:com.garmin.android.apps.samples.disgolf time:309137499
D/SendRoundToDeviceActivity: sdk is ready
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.garmin.android.apps.samples.disgolf, PID: 7428
java.lang.NullPointerException: name == null
at android.os.Parcel.readException(Parcel.java:1636)
at android.os.Parcel.readException(Parcel.java:1579)
at com.garmin.android.apps.connectmobile.connectiq.IConnectIQService$Stub$Proxy.registerApp(IConnectIQService.java:380)
at com.garmin.android.connectiq.ConnectIQDeviceStrategy.registerForRemoteAppEvents(ConnectIQDeviceStrategy.java:297)
at com.garmin.android.connectiq.ConnectIQ.registerForAppEvents(ConnectIQ.java:603)
at com.garmin.android.apps.samples.disgolf.SendRoundToDeviceActivity.registerWithDevice(SendRoundToDeviceActivity.java:211)
at com.garmin.android.apps.samples.disgolf.SendRoundToDeviceActivity.populateDeviceList(SendRoundToDeviceActivity.java:167)
at com.garmin.android.apps.samples.disgolf.SendRoundToDeviceActivity.onSdkReady(SendRoundToDeviceActivity.java:366)
at com.garmin.android.connectiq.ConnectIQDeviceStrategy$1.onServiceConnected(ConnectIQDeviceStrategy.java:44)
at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1227)
at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1244)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:234)
at android.app.ActivityThread.main(ActivityThread.java:5526)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:102)
Application terminated.

I am running Android 6.0.1 on Sony Z3 and have Garmin Connect Mobile installed.

Any idea?

How to use Media.AlbumArt

I would like to recover and display the cover which is in the mp3 file but I can't understand how I should do it.

Namaste app not working anymore

  • Import namaste app into Eclipse ;
  • Run it (whatever the watch you may select);
  • Push start activity;
  • you get an exception:

(null)
Unhandled Exception
UnexpectedTypeException: Expected String/Object/Array/Dictionary, given null
accelCallback in C:\Users\ludovic.reenaers\Documents\SCRIPTS\projects\connectiq-apps\apps
amaste.\source\NamasteModel.mc:136

Windows 10
Garmin SDK 2.4.5
Eclipse IDE for Java Developers
Version: Oxygen.3a Release (4.7.3a)
Build id: 20180405-1200

That's a pitty I was about to finally succeed doing a fit contribution which I failed for weeks !!!
No Decent documentation, No decent tutorial, No functionnal App sample... I think I'm gonna give up ;(

MonkeyMusic don't work

It may be me but I can't get MonkeyMusic to work. I wanted to have an example to develop mine for podcast management but I can't find the sync either on the simulator or my fenix 6X pro.
The server is running fine though.

Build a MonkeyC plugin for a decent IDE

Dear Garmin,

Please build a MonkeyC plugin for a decent IDE, Visual Studio Code, Atom, whatever you feel like targeting, just please please let me build apps with humanity and decency, don't make me use Eclipse.

I thank you.

Can't install Eclipse Plug-in

Eclipse gives me the following delightful error:

Unable to read repository at https://developer.garmin.com/downloads/connect-iq/eclipse/compositeContent.xml.
Unable to read repository at https://developer.garmin.com/downloads/connect-iq/eclipse/compositeContent.xml.
peer not authenticated

Semicircles flipping coordinates

Running the following code (using Semicircles)

var myLocation1 = new Position.Location({
  :latitude => 38.856147,
  :longitude => -94.800953,
  :format => :degrees});
var mySC1 = new Semicircles.Coordinate(myLocation1);
System.println(myLocation1.toRadians());
System.println(mySC1.toRadians());

outputs

[0.678168, -1.654589]
[-0.678168, 1.654589]

Note that the signs of the coordinates are flipped. Is this somehow intentional?

It seems that the sign-flipping is consistent: in my tests negative values are always turned positive and vice versa.

building the watch golf app gives a bunch of errors

All I did is cloned and built exactly as it is and I get this, is there something I am overlooking?

ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:89,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:105,16: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:108,24: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:110,24: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:116,16: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:117,16: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:118,16: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:119,16: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:120,16: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:127,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:128,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQApp.mc:25: Cannot override '$.Toybox.Application.AppBase.onStart' with a different number of parameters.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQApp.mc:29: Cannot override '$.Toybox.Application.AppBase.onStop' with a different number of parameters.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQView.mc:101,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQView.mc:102,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQView.mc:121,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/HoleView.mc:52,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/HoleView.mc:53,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/HoleView.mc:58,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/HoleView.mc:59,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:45,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:46,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:83,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:85,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:89,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:90,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/SaveRoundView.mc:47,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/SaveRoundView.mc:51,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:50,12: Cannot find symbol ':setText' on type '$.Toybox.WatchUi.Drawable'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:51,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:53,12: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:56,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:57,8: Cannot find symbol ':setText' on type 'PolyType<Null or $.Toybox.WatchUi.Drawable>'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:63,16: Cannot find symbol ':setText' on type '$.Toybox.WatchUi.Drawable'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:65,16: Cannot find symbol ':setText' on type '$.Toybox.WatchUi.Drawable'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:69,16: Cannot find symbol ':setText' on type '$.Toybox.WatchUi.Drawable'.
ERROR: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:71,16: Cannot find symbol ':setText' on type '$.Toybox.WatchUi.Drawable'.
WARNING: fenix6xpro: The app name should reference a string resource using @Strings.AppName
WARNING: fenix6xpro: The launcher icon should reference a Drawable resource using @Drawables.LauncherIcon
WARNING: fenix6xpro: The launcher icon (61x43) isn't compatible with the specified launcher icon size of the device 'fenix6xpro' (40x40). Image will be scaled to the target size.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Course.mc:41,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Course.mc:52,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Course.mc:61,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Course.mc:71,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Course.mc:96,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Course.mc:127,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/CourseView.mc:35: Class 'CourseView' does not initialize its super class 'View'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQApp.mc:22: Class 'DiscGolfIQApp' does not initialize its super class 'AppBase'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQView.mc:28: Class 'DiscGolfIQView' does not initialize its super class 'View'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQView.mc:77,16: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/DiscGolfIQView.mc:121,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/HoleView.mc:29: Class 'HoleView' does not initialize its super class 'View'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:37,12: Cannot determine if container assignment is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:51,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:52,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:57,8: Cannot determine if container assignment is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:64,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:89,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:101,12: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/Player.mc:104,16: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:32: Class 'RoundView' does not initialize its super class 'View'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/RoundView.mc:225: Class 'RoundViewCommListener' does not initialize its super class 'ConnectionListener'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/SaveRoundView.mc:28: Class 'SaveRoundView' does not initialize its super class 'View'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/SaveRoundView.mc:51,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:29: Class 'ScorePicker' does not initialize its super class 'View'.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:126,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/ScorePicker.mc:127,8: Cannot determine if container access is using container type.
WARNING: fenix6xpro: /home/lunkwill/projects/disc-golf-iq/source/zDiscGolfBehaviorDelegate.mc:28: Class 'DiscGolfBehaviorDelegate' does not initialize its super class 'BehaviorDelegate'.

Delegate used with ProgressBar is invalid

The NamasteController code pushes a ProgressBar in several locations, but the delegate that is provided is a reference to self. In this case self does not extend BehaviorDelegate and does not implement onBack, so I expect bad behavior. If you press back while the ProgressBar is visible, you will see that the application crashes with a 'Symbol Not Found Exception'.

I believe the simplest solution is to pass a reference to a delegate that handles onBack by calling System.exit() or NamasteController.onExit().

AntPlusHeartRateSensor proximity pairing

I'm not sure on ant protocol, but don't you have to close and reopen the channel when a MSG_CODE_EVENT_RX_SEARCH_TIMEOUT happens so it then opens with a new Ant.DeviceConfig to use the new threshold?

Provide Ski app

Could you please provide the source code for the Ski app?

I am curious how you wrote the logic to count runs and would like to extend it for a backcountry ski app where it is still tracking GPS on up

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.