flutter_iap icon indicating copy to clipboard operation
flutter_iap copied to clipboard

FormatException during fetchProducts

Open Rockvole opened this issue 5 years ago • 2 comments

I added the print statement to see the response :

Launching lib/main.dart on Nexus 9 in debug mode...
Initializing gradle...
Resolving dependencies...
Running 'gradlew assembleDebug'...
Built build/app/outputs/apk/debug/app-debug.apk.
Installing build/app/outputs/apk/app.apk...
I/Choreographer(21684): Skipped 40 frames!  The application may be doing too much work on its main thread.
D/TTS     (21684): Language is not available - en_US
Syncing files to device Nexus 9...
D/BillingManager(21684): Creating Billing client.
D/BillingManager(21684): Starting setup.
D/BillingManager(21684): Setup finished. Response code: 0
D/BillingManager(21684): Setup successful. Querying inventory.
I/BillingManager(21684): Querying purchases elapsed time: 10ms
I/BillingManager(21684): Querying purchases and subscriptions elapsed time: 32ms
I/BillingManager(21684): Querying subscriptions result code: 0 res: 0
D/BillingManager(21684): Query inventory was successful.
I/flutter (21684): response={"status":"loaded","products":[{"localizedDescription":"Allows the installation of alternative keyboards created in the kbml 
I/flutter (21684): language.","localizedTitle":"Install custom keyboards (AAC Keyboard with friends)","price":"$6.99","priceLocale":"CAD","localizedPrice":"$6.99","productIdentifier":"com.rockvole.customize"}]}
E/flutter (21684): [ERROR:topaz/lib/tonic/logging/dart_error.cc(16)] Unhandled exception:
E/flutter (21684): FormatException: Control character in string (at character 126)
E/flutter (21684): ...ion":"Allows the installation of alternative keyboards created in the kbml 
E/flutter (21684):                                                                               ^
E/flutter (21684): 
E/flutter (21684): #0      _ChunkedJsonParser.fail (dart:convert/runtime/libconvert_patch.dart:1374:5)
E/flutter (21684): #1      _ChunkedJsonParser.parseString (dart:convert/runtime/libconvert_patch.dart:1047:16)
E/flutter (21684): #2      _ChunkedJsonParser.parse (dart:convert/runtime/libconvert_patch.dart:860:22)
E/flutter (21684): #3      _parseJson (dart:convert/runtime/libconvert_patch.dart:29:10)
E/flutter (21684): #4      JsonDecoder.convert (dart:convert/json.dart:542:36)
E/flutter (21684): #5      JsonCodec.decode (dart:convert/json.dart:169:41)
E/flutter (21684): #6      FlutterIap.stringToResponse (package:flutter_iap/flutter_iap.dart:38:45)
E/flutter (21684): #7      FlutterIap.fetchProducts (package:flutter_iap/flutter_iap.dart:21:12)
E/flutter (21684): <asynchronous suspension>
E/flutter (21684): #8      Globals.hasIAP (package:kbml_viewer/globals.dart:73:45)
E/flutter (21684): <asynchronous suspension>
E/flutter (21684): #9      _PreferencesAboutState.init (package:kbml_viewer/dialogs/about.dart:16:45)
E/flutter (21684): <asynchronous suspension>
E/flutter (21684): #10     _PreferencesAboutState.initState (package:kbml_viewer/dialogs/about.dart:26:5)
E/flutter (21684): #11     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3764:58)
E/flutter (21684): #12     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3630:5)
E/flutter (21684): #13     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #14     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #15     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4667:14)
E/flutter (21684): #16     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #17     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #18     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3666:16)
E/flutter (21684): #19     Element.rebuild (package:flutter/src/widgets/framework.dart:3508:5)
E/flutter (21684): #20     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3635:5)
E/flutter (21684): #21     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3630:5)
E/flutter (21684): #22     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #23     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #24     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4667:14)
E/flutter (21684): #25     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #26     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #27     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4667:14)
E/flutter (21684): #28     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #29     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #30     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4667:14)
E/flutter (21684): #31     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #32     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #33     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4667:14)
E/flutter (21684): #34     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #35     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #36     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3666:16)
E/flutter (21684): #37     Element.rebuild (package:flutter/src/widgets/framework.dart:3508:5)
E/flutter (21684): #38     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3635:5)
E/flutter (21684): #39     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3782:11)
E/flutter (21684): #40     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3630:5)
E/flutter (21684): #41     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2920:14)
E/flutter (21684): #42     Element.updateChild (package:flutter/src/widgets/framework.dart:2723:12)
E/flutter (21684): #43     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3666:16)
E/flutter (21684): #44   
Lost connection to device.

@ened

Rockvole avatar Jul 25 '18 02:07 Rockvole

I got rid of the error by reducing the length of the Managed Product description (localizedDescription) to 66 characters. Although the Google console says that 80 characters max is permitted.

Rockvole avatar Jul 25 '18 18:07 Rockvole

Maybe related to #28

JackAppDev avatar Jul 27 '18 18:07 JackAppDev