woocommerce / woocommerce-android

WooCommerce Android app
https://www.woocommerce.com/mobile
GNU General Public License v2.0
277 stars 135 forks source link

[Mobile Payments] Card reader manuals do not load in webview #6472

Closed joshheald closed 1 year ago

joshheald commented 2 years ago

Describe the bug When I open a card reader manual, a webview opens which goes to a white screen. The manual is downloaded, but not accessible in the app's webview, and it's not clear how to get to it.

To Reproduce Steps to reproduce the behavior:

  1. Open the app for a store eligible for IPP
  2. Open Menu > ⚙️ > In-Person Payments
  3. Tap one of the card reader manual rows
  4. A webview will open which starts off as a black screen, then goes to a white screen. The manual is not visible.

N.B. If I use the More > Open in Chrome option, that goes to a white screen in Chrome. From there, I can tap Chrome’s More > Downloads and find the downloaded files there, but it’s not particularly obvious…

I also get a warning that the connection is not secure, and that may be the root cause. The URL we’re using is https://stripe.com/files/docs/terminal/c2xbt_product_sheet.pdf, so it may be that the TLS that Stripe are using does not meet the standards required for display in a webview? I’m not sure about that though, because it definitely downloads the file.

Expected behavior The manual will open in the app's webview, and be readable there.

Mobile Environment Please include:

WordPress Environment

``` ### WordPress Environment ### WordPress address (URL): https://pointlessdivision.wpcomstaging.com Site address (URL): https://pointlessdivision.wpcomstaging.com WC Version: 6.4.1 REST API Version: ✔ 6.4.1 WC Blocks Version: ✔ 7.2.2 Action Scheduler Version: ✔ 3.4.0 WC Admin Version: ✔ 3.3.2 Log Directory Writable: ✔ WP Version: 5.9.3 WP Multisite: – WP Memory Limit: 512 MB WP Debug Mode: ✔ WP Cron: ✔ Language: en_US External object cache: ✔ ### Server Environment ### Server Info: nginx PHP Version: 7.4.29 PHP Post Max Size: 2 GB PHP Time Limit: 1200 PHP Max Input Vars: 6144 cURL Version: 7.82.0 OpenSSL/1.1.1n SUHOSIN Installed: – MySQL Version: 5.5.5-10.4.24-MariaDB-log Max Upload Size: 2 GB Default Timezone is UTC: ✔ fsockopen/cURL: ✔ SoapClient: ✔ DOMDocument: ✔ GZip: ✔ Multibyte String: ✔ Remote Post: ✔ Remote Get: ✔ ### Database ### WC Database Version: 6.4.1 WC Database Prefix: wp_ Total Database Size: 12.30MB Database Data Size: 10.68MB Database Index Size: 1.62MB wp_woocommerce_sessions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_woocommerce_order_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_order_itemmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_actionscheduler_actions: Data: 1.02MB + Index: 0.13MB + Engine InnoDB wp_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_actionscheduler_logs: Data: 0.05MB + Index: 0.03MB + Engine InnoDB wp_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_comments: Data: 0.02MB + Index: 0.09MB + Engine InnoDB wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_mailchimp_carts: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_mailchimp_jobs: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_options: Data: 2.30MB + Index: 0.06MB + Engine InnoDB wp_postmeta: Data: 6.08MB + Index: 0.16MB + Engine InnoDB wp_posts: Data: 0.33MB + Index: 0.06MB + Engine InnoDB wp_taxjar_record_queue: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_termmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_term_relationships: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_usermeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_wc_admin_notes: Data: 0.06MB + Index: 0.00MB + Engine InnoDB wp_wc_admin_note_actions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wc_customer_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_order_product_lookup: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_wc_order_stats: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_wc_order_tax_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_product_attributes_lookup: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wc_product_meta_lookup: Data: 0.02MB + Index: 0.09MB + Engine InnoDB wp_wc_rate_limits: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wc_reserved_stock: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB ### Post Type Counts ### amp_validated_url: 5 attachment: 37 jetpack_migration: 2 jp_img_sitemap: 4 jp_sitemap: 4 jp_sitemap_master: 4 jp_vid_sitemap: 4 nav_menu_item: 6 page: 7 post: 6 product: 19 product_variation: 7 revision: 2 shop_coupon: 25 shop_order: 4 shop_order_refund: 3 wp_global_styles: 1 ### Security ### Secure connection (HTTPS): ✔ Hide errors from visitors: ✔ ### Active Plugins (19) ### Akismet Anti-Spam: by Automattic – 4.2.3 AMP: by AMP Project Contributors – 2.2.4 Crowdsignal Forms: by Automattic – 1.6.1 Facebook for WooCommerce: by Facebook – 2.6.13 WordPress.com Editing Toolkit: by Automattic – 3.32400 Gutenberg: by Gutenberg Team – 13.1.0 Jetpack: by Automattic – 11.0-a.1 Layout Grid: by Automattic – 1.8.1 Mailchimp for WooCommerce: by Mailchimp – 2.6.2 Page Optimize: by Automattic – 0.5.2 Crowdsignal Polls & Ratings: by Automattic Inc. – 3.0.7 Storefront Powerpack: by WooCommerce – 2.0.0 TaxJar - Sales Tax Automation for WooCommerce: by TaxJar – 4.1.2 WooCommerce Beta Tester: by WooCommerce – 2.0.5 WooCommerce Payments Dev Tools: by Automattic – WooCommerce Payments: by Automattic – 4.1.0 WooCommerce Product Add-ons: by WooCommerce – 4.9.0 WooCommerce Shipping & Tax: by WooCommerce – 1.25.27 WooCommerce: by Automattic – 6.4.1 ### Inactive Plugins (13) ### Classic Editor: by WordPress Contributors – 1.6.2 Klarna Checkout for WooCommerce: by Krokedil – 2.7.4 Klarna Payments for WooCommerce: by krokedil klarna automattic – 2.9.1 WooCommerce Australia Post Shipping: by WooCommerce – 2.4.32 WooCommerce Canada Post Shipping: by WooCommerce – 2.5.27 WooCommerce Eway Payment Gateway: by WooCommerce – 3.4.2 WooCommerce PayFast Gateway: by WooCommerce – 1.4.21 WooCommerce PayPal Checkout Gateway: by WooCommerce – 2.1.3 WooCommerce Royal Mail: by WooCommerce – 2.5.43 WooCommerce Square: by WooCommerce – 3.0.1 WooCommerce Stripe Gateway: by WooCommerce – 6.3.0 WooCommerce UPS Shipping: by WooCommerce – 3.2.38 WooCommerce USPS Shipping: by WooCommerce – 4.4.72 ### Dropin Plugins (2) ### advanced-cache.php: advanced-cache.php object-cache.php: Memcached ### Must Use Plugins (1) ### WP.com Site Helper: by – ### Settings ### API Enabled: – Force SSL: – Currency: USD ($) Currency Position: left Thousand Separator: , Decimal Separator: . Number of Decimals: 2 Taxonomies: Product Types: external (external) grouped (grouped) simple (simple) subscription (subscription) variable (variable) variable subscription (variable-subscription) Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog) exclude-from-search (exclude-from-search) featured (featured) outofstock (outofstock) rated-1 (rated-1) rated-2 (rated-2) rated-3 (rated-3) rated-4 (rated-4) rated-5 (rated-5) Connected to WooCommerce.com: ✔ ### WC Pages ### Shop base: #24 - /shop/ Cart: #25 - /cart/ Checkout: #26 - /checkout/ My account: #27 - /my-account/ Terms and conditions: ❌ Page not set ### Theme ### Name: Homestore Version: 2.0.34 Author URL: https://woocommerce.com Child Theme: ✔ Parent Theme Name: Storefront Parent Theme Version: 4.1.0 Parent Theme Author URL: https://woocommerce.com/ WooCommerce Support: ✔ ### Templates ### Overrides: /wordpress/themes/homestore/2.0.34/woocommerce/single-product/title.php ### Subscriptions ### WCS_DEBUG: ✔ No Subscriptions Mode: ✔ Live Subscriptions Live URL: https://pointlessdivision.wpcomstaging.com Subscription Statuses: – WooCommerce Account Connected: ✔ Yes Active Product Key: ❌ No ### Store Setup ### Country / State: United States (US) — Iowa ### Payment Gateway Support ### WooCommerce Payments: products refunds multiple_subscriptions subscription_cancellation subscription_payment_method_change_admin subscription_payment_method_change_customer subscription_payment_method_change subscription_reactivation subscription_suspension subscriptions gateway_scheduled_payments tokenization add_payment_method Cash on delivery: products ### WooCommerce Payments ### Version: 4.1.0 Connected to WPCOM: Yes Blog ID: 200370280 Account ID: acct_1K1Wv42E0kcVNZoF ### Action Scheduler ### Complete: 92 Oldest: 2022-04-25 15:16:08 +0100 Newest: 2022-05-09 11:18:49 +0100 ### Status report information ### Generated at: 2022-05-09 12:02:37 +01:00 ```
kidinov commented 1 year ago

I think since this issue was created, we changed the behavior, and now we use Chrome tabs to open these links. Chrome doesn't support opening PDF anymore, and we can do much about that.

Alternatively,

So unfortunately I don't see what we can do here