Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

An error occurs when using a specific intent #1328

Closed
4 tasks done
tranzal opened this issue Sep 20, 2022 · 5 comments
Closed
4 tasks done

An error occurs when using a specific intent #1328

tranzal opened this issue Sep 20, 2022 · 5 comments
Labels
bug Something isn't working

Comments

@tranzal
Copy link

tranzal commented Sep 20, 2022

Environment

Technology Version
Flutter version 3.3.2
Plugin version ^5.4.3+7
Android version 32
iOS version
Xcode version

Device information: pixel_4 playstore android emulator

Description

The next sentence is a translation sentence.
When opening an intent of a specific type, we confirmed a situation in which the intent does not open. The self-confirmed thing is that the result of the channel.invokeMethod("shouldOverrideUrlLoading"... part of the InAppWebViewClient.java file is an error. It seems that the intent is not processed.

Expected behavior: starting V3 app

Current behavior: error, FormatException: Invalid port (at character 18)
intent://%7B"CD":"17a62bbbb6350acf37bc18ed9a286e14","TK":"Z5hnMPf4ReKe8-jTP...

Steps to reproduce

  1. Excute an intent similar to "intent://%7B"CD":"17a62bbbb6350acf37bc18ed9a286e14","TK":"Z5hnMPf4ReKe8-jTP"
  2. An error occurs

Images

Stacktrace/Logcat

E/IAWebViewClient(19873): error, FormatException: Invalid port (at character 18)
E/IAWebViewClient(19873): intent://%7B"CD":"a72e9fb1222a89b258d62e152e286c62","TK":"DyNMSqhu-bLJMcaUr...
E/IAWebViewClient(19873): ^
I/chestertons.ay(19873): Background concurrent copying GC freed 154816(2895KB) AllocSpace objects, 76(3316KB) LOS objects, 49% free, 4822KB/9644KB, paused 8.517ms,73us total 201.484ms
E/FrameEvents(19873): updateAcquireFence: Did not find frame.
E/FrameEvents(19873): updateAcquireFence: Did not find frame.
W/System.err(19873): java.net.MalformedURLException: invalid port: "a72e9fb1222a89b258d62e152e286c62","TK":"DyNMSqhu-bLJMcaUr6J45gh0EYmYYHyhC3zLvb5iIDo=","LK":"3170971732885714458531799018726825261335175037699017379950691091211575550480097878711113392634904369829725091772318674534157285535518452422644171802439221","DT":"2022-09-20-17:10","TM":"15","CH":"dacs.wooricard.com:8886","CU":"https%3A%2F%2Fdacs.wooricard.com%3A8886%2Fwcrpay%2FCOM300001A.wcdo%3Bjsessionid%3DH3CUMcSpYrSvt5PicHvnpj9xAy5a9Yvit2gKlcy61smbiiFHbIg6lTLPZgYCTBxt.amV1c19kb21haW4vd2NycGF5MTE%3D%3FmemKey%3DC88510A3A2549E6A64B806A9F4ED7459BDA611EA58AD499595928AD63A4277A4E760CFA6C2FCAAFA21977D5ABF8696F70CBC4BD5788145279BA6EC3F659D3DE8D3052E1F9DE955EA6E68ED27DA98FC55991B293B25E603C541F880C92C900021873A73A372D84F055DCF31787AF6A9522F670205CB59BCBFF402E7BCAC8BAAB6BE2247227138BBB844F380A61C14845D12743EE72A6B91F829FB0373AEA36A723B9C9A6048CA618F23AD429725242EEF2DC94F26A4ECBAD5FF730EF924FDE235","SA":"https:
W/System.err(19873): at java.net.URL.(URL.java:635)
W/System.err(19873): at java.net.URL.(URL.java:498)
W/System.err(19873): at java.net.URL.(URL.java:447)
W/System.err(19873): at com.pichillilorenzo.flutter_inappwebview.in_app_webview.InAppWebViewClient.shouldInterceptRequest(InAppWebViewClient.java:619)
W/System.err(19873): at com.pichillilorenzo.flutter_inappwebview.in_app_webview.InAppWebViewClient.shouldInterceptRequest(InAppWebViewClient.java:682)
W/System.err(19873): at A8.a(chromium-TrichromeWebViewGoogle6432.apk-stable-447211487:15)
W/System.err(19873): at org.chromium.android_webview.AwContentsBackgroundThreadClient.shouldInterceptRequestFromNative(chromium-TrichromeWebViewGoogle6432.apk-stable-447211487:2)
W/System.err(19873): Caused by: java.lang.IllegalArgumentException: invalid port: "a72e9fb1222a89b258d62e152e286c62","TK":"DyNMSqhu-bLJMcaUr6J45gh0EYmYYHyhC3zLvb5iIDo=","LK":"3170971732885714458531799018726825261335175037699017379950691091211575550480097878711113392634904369829725091772318674534157285535518452422644171802439221","DT":"2022-09-20-17:10","TM":"15","CH":"dacs.wooricard.com:8886","CU":"https%3A%2F%2Fdacs.wooricard.com%3A8886%2Fwcrpay%2FCOM300001A.wcdo%3Bjsessionid%3DH3CUMcSpYrSvt5PicHvnpj9xAy5a9Yvit2gKlcy61smbiiFHbIg6lTLPZgYCTBxt.amV1c19kb21haW4vd2NycGF5MTE%3D%3FmemKey%3DC88510A3A2549E6A64B806A9F4ED7459BDA611EA58AD499595928AD63A4277A4E760CFA6C2FCAAFA21977D5ABF8696F70CBC4BD5788145279BA6EC3F659D3DE8D3052E1F9DE955EA6E68ED27DA98FC55991B293B25E603C541F880C92C900021873A73A372D84F055DCF31787AF6A9522F670205CB59BCBFF402E7BCAC8BAAB6BE2247227138BBB844F380A61C14845D12743EE72A6B91F829FB0373AEA36A723B9C9A6048CA618F23AD429725242EEF2DC94F26A4ECBAD5FF730EF924FDE235","SA":"https:
W/System.err(19873): at java.net.URLStreamHandler.parseURL(URLStreamHandler.java:249)
W/System.err(19873): at java.net.URL.(URL.java:630)
W/System.err(19873): ... 6 more

@tranzal tranzal added the bug Something isn't working label Sep 20, 2022
@github-actions
Copy link

👋 @tranzal

NOTE: This comment is auto-generated.

Are you sure you have already searched for the same problem?

Some people open new issues but they didn't search for something similar or for the same issue. Please, search for it using the GitHub issue search box or on the official inappwebview.dev website, or, also, using Google, StackOverflow, etc. before posting a new one. You may already find an answer to your problem!

If this is really a new issue, then thank you for raising it. I will investigate it and get back to you as soon as possible. Please, make sure you have given me as much context as possible! Also, if you didn't already, post a code example that can replicate this issue.

In the meantime, you can already search for some possible solutions online! Because this plugin uses native WebView, you can search online for the same issue adding android WebView [MY ERROR HERE] or ios WKWebView [MY ERROR HERE] keywords.

Following these steps can save you, me, and other people a lot of time, thanks!

@Woojin-Crive
Copy link

Are you using a payment solution? (korea PG)
I am suffering the same problem too.

URI parser throws exception while handling the url.
i wrapped the shouldOverrideUrlLoading with try catch and used native method channel(android) to handle the url.

@pichillilorenzo
Copy link
Owner

Schemes/Protocols that are different from something used by a webview (http, https, etc...), such as intent://, tel:, whatsapp:// or facebook://, should be handled by your self, for example using the url_launcher plugin.

@pichillilorenzo
Copy link
Owner

Released new version 6.0.0-beta.10 with new type WebUri to replace the Uri dart core type and fixed "java.net.MalformedURLException: invalid port:".
With WebUri, you have access to the raw string value used by the Uri parser.
So, if you need the unmodified string, use the WebUri.rawValue property.

For more details on how WebUri works, check the WebUri Official docs.

Copy link

github-actions bot commented Oct 9, 2024

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug and a minimal reproduction of the issue.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 9, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants