Android studio android studio中的WebView激活三星Tab S 8.4 SM-T700上的默认浏览器?
我正在尝试在android studio中使用WebView构建一个简单的应用程序。 它在Nexus5模拟器中运行正常。但是,当我在真正的三星Tab S 8.4 SM-T700上运行相同的应用程序时,平板电脑会要求我选择默认浏览器(使用“使用Chrome或Internet打开”对话框)。并且我的应用程序不显示所选网页 如何强制android在三星Tab 8.4 S M-T700上运行我的应用程序 以下是相关代码段:Android studio android studio中的WebView激活三星Tab S 8.4 SM-T700上的默认浏览器?,android-studio,android-webview,Android Studio,Android Webview,我正在尝试在android studio中使用WebView构建一个简单的应用程序。 它在Nexus5模拟器中运行正常。但是,当我在真正的三星Tab S 8.4 SM-T700上运行相同的应用程序时,平板电脑会要求我选择默认浏览器(使用“使用Chrome或Internet打开”对话框)。并且我的应用程序不显示所选网页 如何强制android在三星Tab 8.4 S M-T700上运行我的应用程序 以下是相关代码段: public class MainActivity extends AppCom
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String url= "http://www.google.com";
WebView view=(WebView) this.findViewById(R.id.webView);
view.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
view.loadUrl(url);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
舱单:
<?xml version="1.0" encoding="utf-8"?>
您需要添加:
view.setWebViewClient(new WebViewClient());
在调用
加载URL
之前。谷歌进行重定向,重定向应该由WebViewClient
处理。未设置时,WebView会将URL传递给默认浏览器。设置一个空的WebViewClient
会使WebView本身加载URL。谢谢@Mikhail Naganov先生!成功了!然而,当我尝试播放YouTube视频时,它却无法播放。你知道如何解决这个问题吗?@user2013976:很高兴它能帮上忙!看起来您缺少对view.getSettings().setJavaScriptEnabled(true)
的调用。感谢您的建议。以下连接到YouTube但未播放视频:@Override protected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);WebView v=(WebView)this.findViewById(R.id.WebView);WebSettings WebSettings=v.getSettings();webSettings.setJavaScriptEnabled(true);v.setWebViewClient(new WebViewClient());v.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);v.loadUrl(YouTubeURL);}
view.setWebViewClient(new WebViewClient());