File tree Expand file tree Collapse file tree 3 files changed +29
-8
lines changed Expand file tree Collapse file tree 3 files changed +29
-8
lines changed Original file line number Diff line number Diff line change @@ -64,7 +64,7 @@ - (void)_sendMessage {
64
64
}
65
65
66
66
- (void )_callHandler {
67
- is data = @{ @" greetingFromObjC" : @" Hi there, JS!" };
67
+ id data = @{ @" greetingFromObjC" : @" Hi there, JS!" };
68
68
[_bridge callHandler: @" testJavascriptHandler" data: data responseCallback: ^(id response) {
69
69
NSLog (@" testJavascriptHandler responded: %@ " , response);
70
70
}];
Original file line number Diff line number Diff line change @@ -12,9 +12,18 @@ <h1>WebViewJavascriptBridge Demo</h1>
12
12
window . onerror = function ( err ) {
13
13
log ( 'window.onerror: ' + err )
14
14
}
15
- document . addEventListener ( 'WebViewJavascriptBridgeReady' , onBridgeReady , false )
16
- function onBridgeReady ( event ) {
17
- var bridge = event . bridge
15
+
16
+ function connectWebViewJavascriptBridge ( callback ) {
17
+ if ( window . WebViewJavascriptBridge ) {
18
+ callback ( WebViewJavascriptBridge )
19
+ } else {
20
+ document . addEventListener ( 'WebViewJavascriptBridgeReady' , function ( ) {
21
+ callback ( WebViewJavascriptBridge )
22
+ } , false )
23
+ }
24
+ }
25
+
26
+ connectWebViewJavascriptBridge ( function ( bridge ) {
18
27
var uniqueId = 1
19
28
function log ( message , data ) {
20
29
var log = document . getElementById ( 'log' )
@@ -60,7 +69,7 @@ <h1>WebViewJavascriptBridge Demo</h1>
60
69
log ( 'JS got response' , response )
61
70
} )
62
71
}
63
- }
72
+ } )
64
73
</ script >
65
74
< div id ='buttons '> </ div > < div id ='log '> </ div >
66
75
</ body > </ html >
Original file line number Diff line number Diff line change @@ -50,8 +50,20 @@ To use a WebViewJavascriptBridge in your own project:
50
50
51
51
4 ) Finally, set up the javascript side:
52
52
53
- document.addEventListener('WebViewJavascriptBridgeReady', function onBridgeReady(event) {
54
- var bridge = event.bridge
53
+ function connectWebViewJavascriptBridge(callback) {
54
+ if (window.WebViewJavascriptBridge) {
55
+ callback(WebViewJavascriptBridge)
56
+ } else {
57
+ document.addEventListener('WebViewJavascriptBridgeReady', function() {
58
+ callback(WebViewJavascriptBridge)
59
+ }, false)
60
+ }
61
+ }
62
+
63
+ connectWebViewJavascriptBridge(function(bridge) {
64
+
65
+ /* Init your app here */
66
+
55
67
bridge.init(function(message, responseCallback) {
56
68
alert('Received message: ' + message)
57
69
if (responseCallback) {
@@ -62,7 +74,7 @@ To use a WebViewJavascriptBridge in your own project:
62
74
bridge.send('Please respond to this', function responseCallback(responseData) {
63
75
console.log("Javascript got its response", responseData)
64
76
})
65
- }, false )
77
+ })
66
78
67
79
Contributors & Forks
68
80
--------------------
You can’t perform that action at this time.
0 commit comments