Я пытаюсь загрузить видео в Instagram с помощью веб-просмотра, но оно даже не обнаруживает видео, которое я пытаюсь загрузить. Я пробовал этот код для загрузки видео на Facebook, и он работает просто отлично, но для instagram, когда я нажимаю видео, я ожидаю, что он откроется на отдельной странице, но это не так, и он не может загрузить.
ниже приведен код, который я пробовал:
public void downloader()
{
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
/* if (swipeLayout.isRefreshing()) {
swipeLayout.setRefreshing(false);
}*/
webView.loadUrl("javascript:(function() { "
+ "var el = document.querySelectorAll('div[data-sigil]');"
+ "for(var i=0;i<el.length; i++)"
+ "{"
+ "var sigil = el[i].dataset.sigil;"
+ "if(sigil.indexOf('inlineVideo') > -1){"
+ "delete el[i].dataset.sigil;"
+ "var jsonData = JSON.parse(el[i].dataset.store);"
+ "el[i].setAttribute('onClick', 'IGDownloader.processVideod(\"'+jsonData['src']+'\");');"
+ "}" + "}" + "})()");
}
@Override
public void onLoadResource(WebView view, String url) {
webView.loadUrl("javascript:(function prepareVideo() { "
+ "var el = document.querySelectorAll('div[data-sigil]');"
+ "for(var i=0;i<el.length; i++)"
+ "{"
+ "var sigil = el[i].dataset.sigil;"
+ "if(sigil.indexOf('inlineVideo') > -1){"
+ "delete el[i].dataset.sigil;"
+ "console.log(i);"
+ "var jsonData = JSON.parse(el[i].dataset.store);"
+ "el[i].setAttribute('onClick', 'IGDownloader.processVideod(\"'+jsonData['src']+'\",\"'+jsonData['videoID']+'\");');"
+ "}" + "}" + "})()");
webView.loadUrl("javascript:( window.onload=prepareVideo;"
+ ")()");
}
});
}