Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
Flutter Inappwebview
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
李增强
Flutter Inappwebview
Commits
ffb36fa9
Commit
ffb36fa9
authored
5 years ago
by
crazecoder
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix bugs when selecting a file crash when a webview widget is reopened
parent
fead4fb2
No related merge requests found
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
486 additions
and
482 deletions
+486
-482
android/src/main/java/com/pichillilorenzo/flutter_inappbrowser/InAppBrowserFlutterPlugin.java
...renzo/flutter_inappbrowser/InAppBrowserFlutterPlugin.java
+5
-0
android/src/main/java/com/pichillilorenzo/flutter_inappbrowser/InAppWebView/InAppWebChromeClient.java
...utter_inappbrowser/InAppWebView/InAppWebChromeClient.java
+481
-482
No files found.
android/src/main/java/com/pichillilorenzo/flutter_inappbrowser/InAppBrowserFlutterPlugin.java
View file @
ffb36fa9
package
com.pichillilorenzo.flutter_inappbrowser
;
package
com.pichillilorenzo.flutter_inappbrowser
;
import
android.net.Uri
;
import
android.os.Build
;
import
android.os.Build
;
import
android.webkit.ValueCallback
;
import
io.flutter.plugin.common.MethodChannel
;
import
io.flutter.plugin.common.MethodChannel
;
import
io.flutter.plugin.common.PluginRegistry
;
import
io.flutter.plugin.common.PluginRegistry
;
...
@@ -15,6 +17,8 @@ public class InAppBrowserFlutterPlugin implements FlutterPlugin {
...
@@ -15,6 +17,8 @@ public class InAppBrowserFlutterPlugin implements FlutterPlugin {
public
static
InAppBrowser
inAppBrowser
;
public
static
InAppBrowser
inAppBrowser
;
public
static
MyCookieManager
myCookieManager
;
public
static
MyCookieManager
myCookieManager
;
public
static
CredentialDatabaseHandler
credentialDatabaseHandler
;
public
static
CredentialDatabaseHandler
credentialDatabaseHandler
;
public
static
ValueCallback
<
Uri
[]>
uploadMessageArray
;
public
InAppBrowserFlutterPlugin
()
{}
public
InAppBrowserFlutterPlugin
()
{}
...
@@ -61,5 +65,6 @@ public class InAppBrowserFlutterPlugin implements FlutterPlugin {
...
@@ -61,5 +65,6 @@ public class InAppBrowserFlutterPlugin implements FlutterPlugin {
credentialDatabaseHandler
.
dispose
();
credentialDatabaseHandler
.
dispose
();
credentialDatabaseHandler
=
null
;
credentialDatabaseHandler
=
null
;
}
}
uploadMessageArray
=
null
;
}
}
}
}
This diff is collapsed.
Click to expand it.
android/src/main/java/com/pichillilorenzo/flutter_inappbrowser/InAppWebView/InAppWebChromeClient.java
View file @
ffb36fa9
...
@@ -44,7 +44,6 @@ public class InAppWebChromeClient extends WebChromeClient implements PluginRegis
...
@@ -44,7 +44,6 @@ public class InAppWebChromeClient extends WebChromeClient implements PluginRegis
private
PluginRegistry
.
Registrar
registrar
;
private
PluginRegistry
.
Registrar
registrar
;
private
FlutterWebView
flutterWebView
;
private
FlutterWebView
flutterWebView
;
private
InAppBrowserActivity
inAppBrowserActivity
;
private
InAppBrowserActivity
inAppBrowserActivity
;
private
ValueCallback
<
Uri
[]>
mUploadMessageArray
;
private
ValueCallback
<
Uri
>
mUploadMessage
;
private
ValueCallback
<
Uri
>
mUploadMessage
;
private
final
static
int
FILECHOOSER_RESULTCODE
=
1
;
private
final
static
int
FILECHOOSER_RESULTCODE
=
1
;
...
@@ -520,7 +519,7 @@ public class InAppWebChromeClient extends WebChromeClient implements PluginRegis
...
@@ -520,7 +519,7 @@ public class InAppWebChromeClient extends WebChromeClient implements PluginRegis
public
boolean
onShowFileChooser
(
public
boolean
onShowFileChooser
(
WebView
webView
,
ValueCallback
<
Uri
[]>
filePathCallback
,
WebView
webView
,
ValueCallback
<
Uri
[]>
filePathCallback
,
FileChooserParams
fileChooserParams
)
{
FileChooserParams
fileChooserParams
)
{
mU
ploadMessageArray
=
filePathCallback
;
InAppBrowserFlutterPlugin
.
u
ploadMessageArray
=
filePathCallback
;
try
{
try
{
Intent
contentSelectionIntent
=
new
Intent
(
Intent
.
ACTION_GET_CONTENT
);
Intent
contentSelectionIntent
=
new
Intent
(
Intent
.
ACTION_GET_CONTENT
);
contentSelectionIntent
.
addCategory
(
Intent
.
CATEGORY_OPENABLE
);
contentSelectionIntent
.
addCategory
(
Intent
.
CATEGORY_OPENABLE
);
...
@@ -543,10 +542,10 @@ public class InAppWebChromeClient extends WebChromeClient implements PluginRegis
...
@@ -543,10 +542,10 @@ public class InAppWebChromeClient extends WebChromeClient implements PluginRegis
@TargetApi
(
Build
.
VERSION_CODES
.
LOLLIPOP
)
@TargetApi
(
Build
.
VERSION_CODES
.
LOLLIPOP
)
@Override
@Override
public
boolean
onActivityResult
(
int
requestCode
,
int
resultCode
,
Intent
data
)
{
public
boolean
onActivityResult
(
int
requestCode
,
int
resultCode
,
Intent
data
)
{
if
(
requestCode
==
FILECHOOSER_RESULTCODE
&&
(
resultCode
==
RESULT_OK
||
resultCode
==
RESULT_CANCELED
)
)
{
if
(
requestCode
==
FILECHOOSER_RESULTCODE
&&
(
resultCode
==
RESULT_OK
||
resultCode
==
RESULT_CANCELED
)
&&
InAppBrowserFlutterPlugin
.
uploadMessageArray
!=
null
)
{
mU
ploadMessageArray
.
onReceiveValue
(
WebChromeClient
.
FileChooserParams
.
parseResult
(
resultCode
,
data
));
InAppBrowserFlutterPlugin
.
u
ploadMessageArray
.
onReceiveValue
(
WebChromeClient
.
FileChooserParams
.
parseResult
(
resultCode
,
data
));
}
}
return
fals
e
;
return
tru
e
;
}
}
private
MethodChannel
getChannel
()
{
private
MethodChannel
getChannel
()
{
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment