0.1.23 • Published 12 days ago

react-native-mna-webview v0.1.23

Weekly downloads
-
License
MIT
Repository
github
Last release
12 days ago

Mô tả

Module react-native hỗ trợ việc hiển thị website trên ứng dụng và giao tiếp nội dung, mã hóa dữ liệu giữa web và app.

Yêu cầu

  • React-native: >= 0.63

  • Nodejs : >= 18

  • Android: >= 10

  • i0S: >= 10

Hướng dẫn cài đặt

Cài đặt trực tiếp module react-native-mna-webview vào ứng dụng qua npm.

npm i react-native-mna-webview

Chi tiết props của RNWebviewOnboard

Các props cơ bản của react-native-webview

source

Kiểu dữ liệuBắt buộcPlatform
objectIOS, Android

Cho phép truyền vào là url của website hoặc source html

  • Properties

    • uri : là url của website

    • html : là code html

  • ví dụ:

source : {{ uri : “https://domain-name.com” }}

automaticallyAdjustContentInsets

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngIOS, Androidtrue

Kiểm soát xem có điều chỉnh phần nội dung lồng ghép cho các chế độ xem web được đặt phía sau thanh điều hướng, thanh tab hoặc thanh công cụ hay không.

injectedJavaScript

Kiểu dữ liệuBắt buộcPlatformMặc định
stringkhôngIOS, Androidn/a

Cho phép nhúng mã javascript và thực thi chúng trên website

injectedJavaScriptBeforeContentLoaded

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngIOS, Androidn/a

Đặt tùy chọn này cho phép đoạn javascript sẽ được nhúng vào head của trang web

injectedJavaScriptObject

Kiểu dữ liệuBắt buộcPlatformMặc định
objectkhôngAndroidn/a

Cho phép nhúng object lên website

onError

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSn/a

Hàm được gọi khi tải website không thành công

onLoad

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSn/a

Hàm được gọi khi website tải

onLoadEnd

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSn/a

Hàm được gọi khi website được tải xong ( thành công , thất bại )

onLoadStart

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSn/a

Hàm được gọi trước khi webview tải trang web

onScroll

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSn/a

Hàm được gọi khi website được cuộn

originWhitelist

Kiểu dữ liệuBắt buộcPlatformMặc định
listkhôngAndroid/IOSn/a

Cho phép điều hướng đến danh sách các trang web được cấu hình. Nếu khi điều hướngđến trang web không có trong danh sách sẽ bị chặn

renderError

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSn/a

Hàm được gọi khi render webview bị lỗi.

onShouldStartLoadWithRequest

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSReturn true

Cho phép tùy chỉnh request , header của website khi được render. Return ‘True’ nếu muốn tiếp tục render webview hoặc ‘false’ để dừng render webview

javaScriptEnabled

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOSReturn true

Cho phép bật quản lý javascript của website

thirdPartyCookiesEnabled

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOStrue

Cho phép bật cookie của bên thứ 3 trên website

allowsFullscreenVideo

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOSfalse

Cho phép bật video ở chế độ toàn màn hình

scrollEnabled

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOSfalse

Cho phép tắt hoặc bật thanh scroll của website

cacheEnabled

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOStrue

Cấu hình webview có nên hiển thị nội dung website qua bộ nhớ đệm của trình duyệt hay không.

Danh sách props custom

hideToolbar

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOSfalse

Cho phép hiển ẩn thanh điều hướng webview

hideSpinLoading

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOSfalse

Cho phép ẩn loading khi tải website

onMessageEventsCallback

Kiểu dữ liệuBắt buộcPlatformMặc định
functionkhôngAndroid/IOSfalse

Cho phép app lắng nghe những sự kiện web giao tiếp với webview.

Danh sách các event_name mà app có thể listen từ web.

Tên eventDữ liệuPlatformMô tả
EXITAndroid, iOSThông báo cho app khi web thực hiện event EXIT
LOGIN_SUCCESSANDROID, iOSThực hiện login vào web thành công

onInitComponents

Kiểu dữ liệuBắt buộcPlatformMặc định
objectkhôngAndroid/IOSfalse

App truyền dữ liệu của nghiệp vụ, dữ liệu lưu trữ tại App khi khởi tạo webview. Sau khi webview được render xong thì dữ liệu sẽ được truyền tải lên web để ghi nhận thông qua events ‘INIT’

enableDebug

Kiểu dữ liệuBắt buộcPlatformMặc định
booleankhôngAndroid/IOSfalse

Bật debug hiển thị log của module webview trên console

Giao tiếp giữa Website và Mobile App

Giao tiếp giữa website và app dựa trên cơ chế chuyền tải message giữa web và app. Trong quá trình giao tiếp sẽ định nghĩa các message cơ bản phục vụ cho các nghiệp vụ đặc trưng riêng.

INIT

Tên EventRequestResponseSender
INITN/AWebview

SDK gửi thông tin INIT lên web sau khi webview tải xong web. Dữ bao gồm thông tin tài khoản đã đăng nhập , thông tin thiết bị , các thông tin khác do app muốn truyền tải.

EXIT

Tên EventRequestResponseSender
EXITN/AWebview

Website gửi yêu cầu báo user thao tác thoát khỏi flow webview

OPEN_PHONE_CALL

Tên EventRequestResponseSender
OPEN_PHONE_CALLN/AWebview

Website báo app mở ứng dụng gọi điện.

LOGIN_SUCCESS

Tên EventRequestResponseSender
LOGIN_SUCCESSN/AWebview

Gửi yêu cầu từ webview báo đăng nhập viettel money thành công

DEVICE_CONFIG

Tên EventRequestResponseSender
DEVICE_CONFIGWebview

Website yêu cầu app cung cấp thông tin thiết bị

ENCRYPT_DATA

Tên EventRequestResponseSender
ENCRYPT_DATAWebview

Website yêu cầu mã hóa dữ liệu

DECRYPT_DATA

Tên EventRequestResponseSender
DECRYPT_DATAWebview

Website gửi yêu cầu giải mã dữ liệu

Mã lỗi

errorCodeerrorMessageVNerrorMessageEN
SDK000Thành côngSuccess
SDK010Lỗi chung trong quá trình đăng nhậpGeneral login error
SDK011Lỗi thông tin đăng nhập không chính xácIncorrect login information error
SDK020Lỗi kết nối khi đăng nhậpConnection error during login
SDK030Lỗi xác thực đa yếu tố trong đăng nhậpMulti-factor authentication error in login
SDK040Lỗi hết hạn phiên đăng nhậpSession expiration error
SDK050Lỗi quyền truy cập khi đăng nhậpAccess permission error during login
SDK060Các lỗi đăng nhập khácOther login errors
SDK200Lỗi mã hóa dữ liệu chungGeneral data encryption error
SDK201Lỗi không tìm thấy khóa mã hóaEncryption key not found error
SDK210Lỗi kích thước khóa mã hóa không phù hợpInappropriate encryption key size error
SDK220Lỗi trong thuật toán mã hóaEncryption algorithm error
SDK230Lỗi mã hóa do dữ liệu đầu vào không hợp lệInvalid input data encryption error
SDK240Lỗi mã hóa do vấn đề hệ thốngSystem-related encryption error
SDK250Lỗi bảo mật trong quá trình mã hóaSecurity error during encryption
SDK260Lỗi mã hóa khácOther encryption errors
SDK300Lỗi giải mã dữ liệu chungGeneral data decryption error
SDK301Lỗi không tìm thấy khóa giải mãDecryption key not found error
SDK310Lỗi kích thước khóa giải mã không phù hợpInappropriate decryption key size error
SDK320Lỗi trong thuật toán giải mãDecryption algorithm error
SDK330Lỗi giải mã do dữ liệu đầu vào không hợp lệInvalid input data decryption error
SDK340Lỗi giải mã do vấn đề hệ thốngSystem-related decryption error
SDK350Lỗi bảo mật trong quá trình giải mãSecurity error during decryption
SDK360Lỗi giải mã khácOther decryption errors
SDK400Lỗi cấu hình thiết bị chungGeneral device configuration error
SDK401Lỗi không tìm thấy cấu hình thiết bịDevice configuration not found error
SDK410Lỗi cấu hình không hợp lệInvalid device configuration error
SDK420Lỗi cấu hình do phần mềm không tương thíchSoftware compatibility device configuration error
SDK430Lỗi cấu hình liên quan đến bảo mậtSecurity-related device configuration error
SDK440Lỗi cấu hình thiết bị khácOther device configuration errors
SDK500Lỗi camera chungGeneral camera error
SDK501Lỗi không có quyền truy cập cameraNo camera access permission error
SDK510Lỗi kỹ thuật cameraCamera technical error
SDK520Lỗi camera do vấn đề phần cứngHardware-related camera error
SDK530Lỗi camera do vấn đề phần mềmSoftware-related camera error
SDK540Lỗi camera do môi trường sử dụngEnvironmental camera error
SDK550Lỗi bảo mật cameraCamera security error
SDK560Lỗi camera khácOther camera errors
0.1.23

12 days ago

0.1.22

2 months ago

0.1.21

2 months ago

0.1.20

2 months ago

0.1.19

2 months ago

0.1.17

3 months ago

0.1.18

3 months ago

0.1.15

3 months ago

0.1.16

3 months ago

0.1.14

3 months ago

0.1.12

4 months ago

0.1.13

4 months ago

0.1.11

4 months ago

0.1.10

4 months ago

0.1.8

4 months ago

0.1.9

4 months ago

0.1.7

4 months ago

0.1.6

4 months ago

0.1.4

4 months ago

0.1.5

4 months ago

0.1.3

4 months ago

0.1.2

4 months ago

0.1.1

4 months ago