Я пытаюсь сделать браузер, чтобы загрузить любой файл (такой же, как vidmate / UC).Он может получить URL текущего сайта, но не открытого в данный момент файла (например, видео, изображения).
Когда я нажал кнопку входа в систему на YouTube, его URL был доступен
Это мой первый и довольно сложный проект!
Я пробовал много ответов на этом сайте.Но они только помогли мне захватить URL сайта.Кроме того, я скачал какой-то проект, но он мне бесполезен.
открытый класс MainActivity расширяет Activity {
WebView web1;
public EditText ed1;
Button bt1;
String Address;
String add;
ProgressBar pbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
web1 = (WebView)findViewById(R.id.webView1);
ed1 = (EditText)findViewById(R.id.editText1);
bt1 = (Button)findViewById(R.id.button1);
pbar = (ProgressBar)findViewById(R.id.progressBar1);
pbar.setVisibility(View.GONE);
ed1.setText("youtube.com");
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Address = "http://" + ed1.getText().toString();
WebSettings webSetting = web1.getSettings();
webSetting.setBuiltInZoomControls(true);
webSetting.setJavaScriptEnabled(true);
web1.setWebViewClient(new WebViewClient());
web1.loadUrl(Address);
String currentUrl;
web1.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Toast.makeText(getApplicationContext(), url, Toast.LENGTH_LONG).show();
Log.v("TEST", url);
ed1.setText(web1.getUrl());
if(url.equals("http://youtube.com")){
Toast.makeText(getApplicationContext(), "SKIP", Toast.LENGTH_LONG).show();
view.loadUrl(url);
}
else{
view.loadUrl(url);
}
return true;
}
});
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if ((keyCode == KeyEvent.KEYCODE_BACK) && web1.canGoBack()) {
web1.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
}
Вместо того, чтобы перехватывать URL-адрес файла, он перехватывает URL-адрес сайта.