先简单说下这个东西,整个布局就是一个线性布局,只有一个webview程序就是获取MIEI码传递给php页面登陆 然后 webview 支持调用JS 然后menu键三个功能模拟器1.6 - 3.0 都能跑 然后上真机 1.6 -2.1 都没问题 拿到两个2.2 的机器上 同样的 一运行就崩溃我是新手 望指教啊,在线等吖package an.Anactivity;import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.TelephonyManager;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebView;
public class Scrdzx_1Activity extends Activity {
private WebView mWebView;
//private Handler mHandler = new Handler();
private String HttpURL = "http://scrdzx.org/login/login.php?MIEI=";
/** Called when the activity is first created. */
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
//获得TelephonyManager对象
final TelephonyManager tm = (TelephonyManager) getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
//获得Android设备号(MIEI号)
String myDeviceId = "" + tm.getDeviceId();
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebChromeClient(new MyWebChromeClient());
//WebSettings webSettings = mWebView.getSettings();
//webSettings.setJavaScriptEnabled(true);
//System.out.println("myDeviceId--->" + myDeviceId);
mWebView.loadUrl(HttpURL + myDeviceId);
}
//创建两个mneu菜单
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 1, 1, R.string.exit);
menu.add(0, 2, 2, R.string.refresh);
menu.add(0, 3, 3, R.string.about);
return super.onCreateOptionsMenu(menu);
}
//处理menu菜单的选择item事件
public boolean onOptionsItemSelected(MenuItem item) {
//退出
if(item.getItemId() == 1){
finish();
}
//刷新
if(item.getItemId() == 2){
Scrdzx_1Activity.this.mWebView.reload();
}
//关于人大在线
if(item.getItemId() == 3){
Intent intent = new Intent();
intent.putExtra("title", getString(R.string.title));
intent.putExtra("email", getString(R.string.email));
intent.setClass(Scrdzx_1Activity.this, SecondActivity.class);
Scrdzx_1Activity.this.startActivity(intent);
}
return super.onOptionsItemSelected(item);
}
//当前Activity中废掉Back事件,只用mWebView.goBack();
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
} 补充:到了 一个重写 webview 支持js 的alert,Confirm,Prompt 的一个类 mWebView.setWebChromeClient(new MyWebChromeClient());
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货