0

HTML5ベースのページがいくつかあります。デバイスのSDカードにデプロイして、通常の.apkアプリのようにアクセスします。

4

3 に答える 3

2

Webビューを使用してアプリケーションを作成し、その方法でhtmlページをロードしない限り、アプリケーションのようにアクセスすることはできません。それでもうまくいかないかもしれません。

-AndroidのSDカードに保存されたHTMLページをロードする方法は?

ブラウザを使用して、ローカルでファイルにアクセスできます。

-https://android.stackexchange.com/questions/4775/how-can-i-open-an-html-file-i-have-copied-from-pc-to-sd-card-of-phone

https://android.stackexchange.com/questions/8312/how-can-i-can-open-local-files-in-the-default-android-browser

または、http: //phonegap.com/などのWebアプリ開発者ツールのいずれかを使用することもできます。

http://incubator.apache.org/cordova/

于 2012-05-15T10:20:23.783 に答える
2

PhoneGapAPIまたはSensaTouchAPIを使用して、 jquerymobileを使用してhtmlページでAndroidアプリケーションを構築します。次に、 Eclipseを使用してapkファイルを生成できます。

于 2012-05-15T10:25:48.590 に答える
2

みんなありがとう私はsdcardからhtmlページをフェッチするソリューションを手に入れました。これは私が同じために次のコードを使用したより良い方法である可能性があります。

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);
    }
   }
 }
于 2012-07-02T14:04:07.597 に答える