Here is a Webview I used for my previous project.
<WebView
ref="webview"
source={{uri:this.state.url}}
onNavigationStateChange={this._onNavigationStateChange.bind(this)}
javaScriptEnabled = {true}
domStorageEnabled = {true}
injectedJavaScript = {this.state.cookie}
startInLoadingState={false}
/>
for you essential is this line:
onNavigationStateChange={this._onNavigationStateChange.bind(this)}
and you can read the URL like this:
_onNavigationStateChange(webViewState){
console.log(webViewState.url)
}
If I remember correctly this fires 3 times when loading a url.
webviewState object prototype:
{
canGoBack: bool,
canGoForward: bool,
loading: bool,
target: number,
title: string,
url: string,
}
The 3rd (final) time this event is called, the loading attribute is false
let me know if it helps.