原文地址:
1、调用第三方软件显示,这需要安卓机上安装了第三方的office软件,而且对于特别敏感的office文件,可能会泄露信息,不是特别安全
2、自己解析office文件并自定义控件显示,此方法避免了调用第三方office软件带来的麻烦,但是解析office文档是一项非常庞大的工作,其开发难度和复杂度类似于开发一个office app,如果只是作为项目的一个功能点,实在太过庞大。
3、将office文件转html格式,使用webview展示,还是同样的问题,office转html的工作太过复杂耗时,如果只是作为app的某一个功能点,可能会影响app本身的性能
4、使用第三方的在线预览工具,该方法的解决方法是把想要解析的office文档url地址传递给第三方在线解析,然后使用webview显示即可,此方法对于app端来说确实非常有利,因为app端不需要自己进行任何解析,只是如果将自己文档的url交给第三方,依然存在安全问题
现附上两个在线预览office文档的地址:(浏览器都需要chrome的内核)
1 google:
2 微软:
调用
private void initView() { mWebview = (WebView) findViewById(R.id.webview); mWebview.setWebViewClient(new AppWebViewClients()); mWebview.getSettings().setJavaScriptEnabled(true); mWebview.getSettings().setUseWideViewPort(true); mWebview.loadUrl("http://view.officeapps.live.com/op/view.aspx?src=http://e-learning.moe.edu.cn/upload/kindedit/file/201703/20170307_091341_68559.doc");}public class AppWebViewClients extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub view.loadUrl(url); return true; } @Override public void onPageFinished(WebView view, String url) { // TODO Auto-generated method stub super.onPageFinished(view, url); }}
office转html可参考另外一篇文章
最简单,但是会增加apk 16M的第三方