The related spec change: https://github.com/w3c/payment-handler/pull/276
I uploaded two APKs for testing - https://drive.google.com/open?id=1yqzAOOkGh7om1YHYDnWI4bfQFt6R6CbT Test scenario 1. Install before.apk on Android device 2. Run browser and register PaymentHandler via https://rsolomakhin.github.io/pr/apps/origin/ 3. Install after.apk on Android device 4. Run browser and re-visit https://rsolomakhin.github.io/pr/apps/origin/ 5. Open inspector 6. Execute JS; (await (await navigator.serviceWorker.ready).paymentManager.instruments.get('instrument-key')).method 7. We can see “https://rsolomakhin.github.io” string. I already checked that it works well on Desktop platform(Mac, Linux).
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/91dc1b58f4af39e5cdbaac3d7121130ffa791b92 commit 91dc1b58f4af39e5cdbaac3d7121130ffa791b92 Author: Jinho Bang <jinho.bang@samsung.com> Date: Fri Apr 06 12:34:38 2018 PaymentHandler: Replace 'enabledMethods' array with 'method' string The related spec change: https://github.com/w3c/payment-handler/pull/276 Payment Handler feature is behind a flag: chrome://flags/#service-worker-payment-apps FYI, the original field type was `repeated string`, and the changed field type is `optional string`. So, if `enabledMethods` data is stored in a previous version, when reading the `method` field in a new version, the protobuf will read the first element of `enabledMethods`. Therefore, DB migration is not required. Bug: 828894 Change-Id: Ic5775768eaff9584517956f2984473e8b6a0a411 Reviewed-on: https://chromium-review.googlesource.com/986121 Reviewed-by: Rouslan Solomakhin <rouslan@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Jinho Bang <jinho.bang@samsung.com> Cr-Commit-Position: refs/heads/master@{#548750} [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentApp.java [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentAppBridge.java [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/chrome/browser/android/payments/service_worker_payment_app_bridge.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/components/payments/content/service_worker_payment_instrument.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/components/test/data/payments/alicepay.com/app1/index.js [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/components/test/data/payments/alicepay.com/app2/index.js [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/components/test/data/payments/bobpay.com/app1/index.js [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app.proto [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_database.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_database.h [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_installer.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_installer.h [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_provider_impl.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_provider_impl.h [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_app_provider_impl_unittest.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/browser/payments/payment_manager_unittest.cc [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/public/browser/payment_app_provider.h [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/content/test/data/payments/payment_app_invocation.html [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/third_party/WebKit/LayoutTests/http/tests/payments/payment-instruments.html [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/third_party/WebKit/Source/modules/payments/PaymentInstrument.idl [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/third_party/WebKit/Source/modules/payments/PaymentInstruments.cpp [modify] https://crrev.com/91dc1b58f4af39e5cdbaac3d7121130ffa791b92/third_party/WebKit/public/platform/modules/payments/payment_app.mojom
Comment 1 by jinho.b...@samsung.com
, Apr 4 2018