2

時間を割いて私の投稿を読んでくれたすべての人に、事前に感謝したいと思います (そして、おそらくそれに答えてください :p)

ウェブサイトを表示することを目的とした非常に単純な Android アプリケーションを開発しています。もちろん、私はドキュメントを読んでおり、次のコードを使用してページを表示しています。

Uri uriUrl = Uri.parse("http://example.com");
Intent launchBrowser = new Intent(Intent.ACTION_VIEW, uriUrl);
startActivity(launchBrowser);

サイトは正しく表示されています。私は天国にいます :) しかし.. HOME ボタンを押してアプリケーションを終了し (実際には終了しないことはわかっていますが、心配です)、再度起動すると、Web ブラウザは新しいマイページを含むタブ。私が望むのは、ブラウザが新しいタブを作成するのではなく、最初の起動時に作成されたものを保持することです。

より多くのコードを意味するため、Webviews は使用したくありません。また、非常に単純なアプリケーションが必要です。

私は Android 開発に不慣れなので、親切に教えてください :D エラーについてお詫び申し上げます。私の英語が下手であることは承知しています。

君たちありがとう !

4

2 に答える 2

0

私もAndroid devにはかなり慣れていませんが、ブラウザーをそのまま呼び出すときに理解していることから、デフォルトのブラウザーでURLを開いているだけです。WebView を使用することは理想的です。これは、アプリケーションに固有であるためです (分離されているか、少なくともこれが私の印象です)。WebView の使用はそれほど難しくありません。これは、あなたが順調に進んでいるはずのいくつかのコードです:

    public void initWebView() {         

        WebView wview;  

        wview = new WebView(getApplicationContext());

        //Add the WebView to the current window
        ((WindowManager)getApplicationContext().getSystemService("window")).addView(wview, new WindowManager.LayoutParams(300, 300));

        wview.clearHistory();
        wview.clearCache(true);

        wview.getSettings().setJavaScriptEnabled(true);
        wview.getSettings().setPluginsEnabled(true);
        wview.getSettings().setPluginState(WebSettings.PluginState.ON);

        wview.getSettings().setRenderPriority(RenderPriority.HIGH);


        wview.setWebViewClient(new WebViewClient()
        {
            public void onPageFinished(WebView view, String url)
            {                               
                //Callback for when pages are finished loading
                wview.layout(0, 0, (int)DESIRED_WIDTH, (int)DESIRED_HEIGHT);
            }

            public void onPageStarted(WebView view, String url, Bitmap favicon)
            {
                //Callback for when pages are being loaded

            }
         });

        wview.loadUrl("http://blog.ascensionsystems.ca/");
    } 
于 2011-04-06T15:21:15.570 に答える
0

私は WebViews を扱ってきましたが、それらは機能します :) Android 開発に慣れていないときに設定するのは少し難しいですが、非常に構成可能であるため、すべての状況に適応できます。

したがって、私の質問に対する答えは次のようになります。USE WEBVIEW !

あなたのコードはアセンションの大きな助けとなりました。それにより、ゼロから始める必要がなくなり、機能的な WebView を持つために必要ないくつかの「コア」メソッドを確認することができました。

あなたへの小さな注意: ここで使用するいくつかのメソッドは、ドキュメントで「非推奨」と記載されています (たとえば、setPluginsEnabled() を考えています)。

最後になりましたが、疑問に思っている方のために: Ascension のサンプル コードを使用すると、画面が回転するたびにページがリロードされることに気付くでしょう。これがなぜ起こったのかを理解するのは少し面倒でしたが、それは正常です。 http://www.devdiv.com/android/docs/guide/topics/resources/runtime-changes.htmlを参照してください

于 2011-04-08T07:36:05.700 に答える