HTML5DevelopAPP


  *
 * 离线应用缓存HTML5offine Application cache
 * 在服务器上添加MIME TYPE支 :text/cache-manifest
 * 在Apache下添加:
 * addType text/cache-manifest manifest 如果为Nginx,在添加text/cache-manifest manifest
 * 或者动态的程序生成
 * 1 header (content-type:text/cache-manifest;charset=UTF-8);
 * ?创建NAME.manifest
 * 新建清单文件manifest
 *

public class MainActivity extends Activity {

	//private WebView wv;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		final WebView wv = new WebView(this);
	    wv.setOnKeyListener(new View.OnKeyListener() {
		
		@Override
		public boolean onKey(View v, int keyCode, KeyEvent event) {
			if(event.getAction() == KeyEvent.ACTION_DOWN){
				if((keyCode == KeyEvent.KEYCODE_BACK) && wv.canGoBack()){
					wv.goBack();
					return true;
				}
			}			
			return false;
						
		}
	});
	    //支持js
	    wv.getSettings().setJavaScriptEnabled(true);
	    
	    wv.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
	    
	    wv.getSettings().setDatabaseEnabled(true);
	    
	    wv.getSettings().setDatabasePath("/data/data/com.lggblog/database");
	    
	    //创建webViewCilent对象
	    
	    WebViewClient client = new WebViewClient(){
	    	@Override
	    	public boolean shouldOverrideUrlLoading(WebView view, String url) {
	    		wv.loadUrl(url);
	    		return true;
	    	
	    	}
	    };
	    
	    //
	    wv.setWebViewClient(client);
	    
	    WebChromeClient wcc = new WebChromeClient(){
	    	@Override
	    	public boolean onJsAlert(WebView view, String url, String message,
	    			final JsResult result) {
	    		//自定义一个dialog 来显示网页中的对话框
	    		Builder builder = new Builder(MainActivity.this);
	    		builder.setMessage(message);
	    		builder.setTitle("神马情况");
	    		builder.setPositiveButton("", new DialogInterface.OnClickListener() {
					
					@Override
					public void onClick(DialogInterface dialog, int which) {
						result.confirm();	//?				
					}
				});
	    		return true;	    		
	    	}
	    	
	    	@Override
	    	public boolean onJsConfirm(WebView view, String url,
	    			String message, final JsResult result) {
	    		Builder builder = new Builder(MainActivity.this);
	    		
	    		builder.setTitle("确认删除?");
	    		builder.setMessage(message);
	    		builder.setPositiveButton("yes",new DialogInterface.OnClickListener() {
				
				@Override
				public void onClick(DialogInterface dialog, int which) {
			    result.confirm();				
				}
			});
	    		
	    		builder.setNeutralButton("取消",new OnClickListener() {
					
					@Override
					public void onClick(DialogInterface dialog, int which) {
						result.cancel();
						
					}
				});
	    		
	    		builder.setCancelable(false);
	    		builder.create();
	    		builder.show();
	    		
	    		return true;
	    	}
	    	
	    	//处理提示信息    默认效果
	    	@Override
	    	public boolean onJsPrompt(WebView view, String url, String message,
	    			String defaultValue, JsPromptResult result) {
	    	
	    		return super.onJsPrompt(view, url, message, defaultValue, result);
	    	}
	    	
	    	//
	    	@Override
	    	public void onExceededDatabaseQuota(String url,
	    			String databaseIdentifier, long quota,
	    			long estimatedDatabaseSize, long totalQuota,
	    			QuotaUpdater quotaUpdater) {
	    		/*super.onExceededDatabaseQuota(url, databaseIdentifier, quota,
	    				estimatedDatabaseSize, totalQuota, quotaUpdater)*/
	    		quotaUpdater.updateQuota(2015721);;
	    	}
	    	
	    };
	    	
	    wv.loadUrl("http://www.qq.com/");
	    wv.setWebChromeClient(wcc);
	    setContentView(wv);
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值