我有一些基于HTML5的页面,我希望它部署在设备的SD卡,并像正常的.apk应用程序一样访问它
发布于 2012-05-15 18:20:24
您将无法像访问应用程序一样访问它,除非您创建了一个带有webview的应用程序,并以这种方式加载html页面。即使到那时,这也可能行不通。
例如- How to load Html page saved in sdcard on android?
您可以使用浏览器在本地访问这些文件。
或者,您可以使用web应用程序开发工具之一,例如http://phonegap.com/
http://incubator.apache.org/cordova/
发布于 2012-05-15 18:25:49
使用PhoneGap API或SensaTouch API使用jquery mobile构建带有html页面的安卓应用程序。然后,可以使用Eclipse生成apk文件。
发布于 2012-07-02 22:04:08
感谢每一个我得到的解决方案,从sdcard获取html页面,这可能是更好的方式,我使用以下代码的same.The下面的代码也是使用完整的激活java脚本设置和所有
package com.WebView.ebook;
import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.os.Environment;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class WebVieweBookActivity extends Activity {
WebView wvMain;
String urlfunBook="file://"+Environment.getExternalStorageDirectory()+"/test.html";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
setContentView(R.layout.main);
wvMain=(WebView)findViewById(R.id.webView1);
WebSettings webSettings8 = wvMain.getSettings();
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
wvMain.getSettings().setJavaScriptEnabled(true);
wvMain.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
wvMain.getSettings().setPluginsEnabled(true);
wvMain.getSettings().setSupportZoom(false);
wvMain.getSettings().setCacheMode(wvMain.getSettings().LOAD_NO_CACHE);
webSettings8.setPluginState(WebSettings.PluginState.ON);
wvMain.setWebViewClient(new WebViewClient());
wvMain.getSettings().setSupportMultipleWindows(true);
wvMain.getSettings().setPluginsEnabled(true);
wvMain.getSettings().setUseWideViewPort(true);
wvMain.getSettings().setLoadWithOverviewMode(true);
wvMain.setWebChromeClient(new WebChromeClient());
wvMain.getSettings().setAllowFileAccess(true);
wvMain.loadUrl(urlfunBook);
wvMain.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
// Handle the error
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
System.exit(4);
}
else {
wvMain.loadUrl(urlfunBook);
}
}
}https://stackoverflow.com/questions/10598497
复制相似问题