fluttercommunity / fluttercommunity/flutter_webview_plugin

How listen javascript funciton name from flutter

Đang mở
#404 4 bình luận 0 reaction 0 người được giao Xem trên GitHub
waiting for feedback
Ngôn ngữ chính
Java
Star
1.5k
Fork
938
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

how listen Javascriptinterface function name from flutter here is myCode.
Webviewmanager.java
@JavascriptInterface
public void loginFacebook() {
src.main.java.com.flutter_webview_plugin.FlutterWebviewPlugin.channel.invokeMethod("fbLogin" , null);
}

I want to know how listen that function from flutter.
void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
@override
State createState() {
// TODO: implement createState
return _Main();
}
}

class _Main extends State {
final _webviewPlugin = FlutterWebviewPlugin();
StreamSubscription _onDestroy;

@override
void initState() {
super.initState();

_webviewPlugin.onUrlChanged.listen((String url) {
print(url);
});

_webviewPlugin.onDestroy.listen((_) => SystemNavigator.pop());
}

void dispose(){
_webviewPlugin.dispose();
super.dispose();
}

@override
Widget build(BuildContext context) {
// TODO: implement build
return MaterialApp(
theme: new ThemeData(primaryColor: Colors.deepOrange),
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: PreferredSize(
child: Container(),
preferredSize: Size.fromHeight(0.0),
),
body: WebviewScaffold(
url: selectUrl,
appCacheEnabled: true,
withLocalStorage: true,
withJavascript: true,
supportMultipleWindows: true,
hidden: true,
withZoom: true,
),
),
);
}
}

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Bắt đầu với Webviewmanager.java và cách sử dụng FlutterWebviewPlugin trong issue, sau đó xem lại WebviewScaffold và các API onUrlChanged/onDestroy hiện có. Làm rõ cách được hỗ trợ để cung cấp callback loginFacebook cho Flutter và ghi lại một ví dụ sử dụng đầy đủ, có thể kiểm chứng.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
dart, java
Lĩnh vực
mobile-dev
Loại issue
Tài liệu
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
20/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.