当我在我的应用程序webview中加载上述网址时,它会更改为http://m.allrecipes.com但是当我在浏览器中加载相同的网址时,其网址为http://allrecipes.com。
有没有办法在我的应用程序webview中加载普通网址(http://allrecipes.com)而不加载移动设备页面http://m.allrecipes.com)
任何人都知道请帮帮我
go.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (Searchtext.getText().toString().equalsIgnoreCase("")) {
alertDialog = new AlertDialog.Builder(OnlineRecipe.this)
.create();
alertDialog.setTitle("Message");
alertDialog.setMessage("Please Enter Some Word");
alertDialog.setButton("OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Write your code here to execute after
// dialog closed
alertDialog.dismiss();
}
});
// Showing Alert Message
alertDialog.show();
} else {
String url = "http://allrecipes.com/search/default.aspx?qt=k&wt="
+ Searchtext.getText().toString()
+ "&rt=r&origin=Recipe Search Results";
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl(url);
}
}
});
答案 0 :(得分:4)
如果我理解正确,您只想在桌面模式下在WebView中加载http://allrecipes.com ...如果是这种情况,请使用以下代码使其正常工作:
webview.getSettings().setUserAgentString("Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/20 Safari/537.31");
这只需要在创建WebView对象webview的部分之后放在代码中。
编辑:只是为了让您知道以后的参考,这行代码会改变用户代理,诱使网站认为您是从计算机而不是手机访问它。
答案 1 :(得分:0)
不记得在您的:AndroidManifest.xml
中添加活动示例:
<activity android:name=".Second"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar"
android:configChanges="orientation|keyboardHidden">
</activity>
班级:
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class Second extends Activity {
WebView webView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
webView = (WebView)findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.setWebViewClient(new WebClient());
webView.loadUrl(getIntent().getExtras().getString("url"));
}
public class WebClient extends WebViewClient
{
ProgressDialog pd; // Create Proggress Dialog to show if User Internet connection is slow
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
Intent i = new Intent(Second.this, Second.class);
i.putExtra("url", url);
startActivity(i);
return true;
}
public void onPageStarted(WebView view, String url, Bitmap favicon)
{
pd = ProgressDialog.show(Second.this, "",getString(R.string.loading), true);
pd.setCancelable(true);
}
public void onPageFinished(WebView view, String url)
{
if (pd.isShowing()) {
pd.dismiss();
}
}
}
}