您的位置:首页 > 其它

手机客户端在Web页面上事件触发打开Word

2013-12-23 16:16 288 查看
在WebView上远程访问Web服务,Web服务上点击链接,打开Word文档并可编辑

public class WebViewUI extends Activity{
private WebView  webView;
private Handler handler = new Handler();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//        Utils.fullScreen(this);
setContentView(R.layout.webview_ui);
//        Button btnReturn = (Button)findViewById(R.id.btnback);
//		btnReturn.setOnClickListener(new View.OnClickListener() {
//			@Override
//			public void onClick(View v) {
//				finish();
//			}
//		});
//        regBroadCast();
webView  = (WebView)  findViewById(R.id.webView);
webView.setWebChromeClient(new WebChromeClient());//手机访问js必须
webView.setWebViewClient(new MyWebViewClient());//防止页面切换时弹出其他浏览器提示
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(new DemoJavaScriptInterface(), "danielinbiti");
webView.loadUrl(SysConfig.getInstance().getRootPath()+"web/index.html");
}
final class DemoJavaScriptInterface {
DemoJavaScriptInterface() {
}
public void clickOnAndroid(String type) {
Log.d("kkkkkkk", type);
handler.post(new Runnable() {
public void run() {//
webView.loadUrl("javascript:updateWordName('wordname.docx')");
openWord("test.docx");
}
});
}
}

private void openWord(String wordName){
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(android.content.Intent.ACTION_VIEW);
//intent.setClassName("cn.wps.moffice","cn.wps.moffice.documentmanager.PreStartActivity");//早期版本是这个
intent.setClassName("cn.wps.moffice_eng","cn.wps.moffice.documentmanager.PreStartActivity2");

//String sdPath = Environment.getExternalStorageDirectory()+"/apk/word1.docx";
//Uri uri = Uri.fromFile(new File("/mnt/sdcard/test.docx"));
Uri uri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(),wordName));
intent.setData(uri);
try{
startActivity(intent);
}catch(Exception ex){
Log.d("333333333333", ex.getMessage());
}
}
}


在js上

function callWebView(type){
window.danielinbiti.clickOnAndroid(type);
}
function updateWordName(name){
document.getElementById('txtareayj').value=name;
//alert(name);
}


这样实现的效果,可以实现在线打开Word文档并编辑的效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐