tgardner / cordova-pebble Goto Github PK
View Code? Open in Web Editor NEWCordova Pebble plugin
Cordova Pebble plugin
I am trying to figure out when the plugin is loaded. I tried tying it to the ready event on the document, but calling Pebble gives me an error. When I call the methods after the page is loaded (say, by pushing a button) everything works fine. Is there a particular event that tells me the interface is available and ready to use?
Sometimes I get this crash report from Firebase (after my Android app has stopped abnormally):
java.lang.RuntimeException:
Error receiving broadcast Intent { act=com.getpebble.action.PEBBLE_CONNECTED flg=0x10 launchParam=MultiScreenLaunchParams { mDisplayId=0 mFlags=0 } bqHint=1 (has extras) } in net.trentgardner.cordova.pebble.PebblePlugin$1@80c4a70 at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1195)
It seems that the exception happens when I try to connect my Pebble to the phone, and the app is already running. Although it doesn't happen always, rather rare... I thought I should mention it, maybe you'll have a solution. :-)
I have managed to successfully build my app in Xcode, stripping out the unnecessary architectures.
The development version is installed and started normally on my device, Pebble functions all working.
However, the TestFlight (AppStore) version I've successfully built and uploaded to AppStore Connect will crash upon start. I got no error messages from Apple when uploading, so I was hoping everything will be OK, but I had to face the sudden crash... no idea what could go wrong. :-/
Do you have any clues maybe? THANKS!! :-)
I got the following error messages from Apple when trying to submit my app (using this Pebble plugin):
ERROR 1: Invalid Binary Architecture - iOS 3.0 introduced support for multiple binary architectures. If your binary is built for multiple architectures, your Info.plist must have a MinimumOSVersion key with a value of at least 3.0. Additionally, if your app is intended to support earlier iPhone and iPod touch models, your app must contain at least an armv6 binary; "thin" armv7-only binaries will not be accepted unless the armv7 required device capability is also present in the Info.plist UIRequiredDeviceCapabilities key or the MinimumOSVersion key has a value of 4.3 or higher.
Specifically, we found the following unsupported architectures in your binary:
x86_64
i386
For more information, see Technical Q&A QA1707 at: http://developer.apple.com/iphone/library/qa/qa2010/qa1707.html.
ERROR 2: Invalid Segment Alignment - The app binary at 'Mental Painter.app/Frameworks/PebbleKit.framework/PebbleKit' does not have proper segment alignment. Try rebuilding the app with the latest Xcode version.
ERROR 3: Invalid Encryption Info - The binary is invalid. The encryption info in the LC_ENCRYPTION_INFO load command is either missing or invalid, or the binary is already encrypted. This binary does not seem to have been built with Apple's linker.
When I don't use your Pebble plugin, I get no error messages.
(About ERROR #1: I specified the minimum OS version as 8.0, but I still get this error message...)
Can you do something about it? I hope so... :-)
I know there is a workaround using Xcode, but I'd like to include this plugin in my PhoneGap Build project. It works in developer mode, but the AppStore still rejects it. If you know any workaround for PhoneGap Build, please share! Thanks! :-)
If the app is running (or is in the background) and I turn OFF Bluetooth, the app always crashes... Firebase always reports this error:
File: LoadedApk.java
Exception message:
java.lang.RuntimeException: Error receiving broadcast Intent { act=com.getpebble.action.PEBBLE_DISCONNECTED flg=0x10 (has extras) } in net.trentgardner.cordova.pebble.PebblePlugin$2@4a51049 at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_52226(LoadedApk.java:1329)
On iOS 10.3 it's working well... :-)
But on iOS 11.2 I just can't connect to the watch... The Pebble object is OK, and I can even set the AppUUID with no errors. But the onConnect event just wouldn't fire.
It might be just some settings on my iPad mini 2, I'm not sure.
Could you please test the connection on an iOS 11 device?
I got this message from the app review team:
"We are unable to post your app to the App Store at this time because your app has not been authorized by the accessory manufacturer to work with the MFi accessory."
Unfortunately the company Pebble doesn't exists anymore. :-( It has been acquired by Fitbit years ago, and they stopped supporting it. It means developers can't get their apps whitelisted for MFi anymore.
Do I have to drop Pebble watch support for iOS completely?? :-( Or is there a workaround for this?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.