在WebView中打开网站时出现白屏

时间:2016-04-28 08:53:27

标签: php android webview

当我想在Webview中打开我的网站时,它只给我一个白色的屏幕。 我不知道怎么回事,因为如果我把其他网站放在WebView里面就可以了。 代码:

WebView view = (WebView) this.findViewById(R.id.webView);
    view.setWebViewClient(new WebViewClient());
    view.getSettings().setJavaScriptEnabled(true);
    view.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
    view.loadUrl("http://136.243.18.214/~kennenof/");

如果它是因为这里的网站是它链接到的第一页的代码:

  <?php require 'header.php';
if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true) {
$username = $_SESSION['username'];
$sql = "SELECT answered_questions FROM tbl_users WHERE username = :username";
$q= $db->prepare($sql);
$q->bindParam(':username', $username);
$q->execute();

$answered_questions = $q->fetch();

    $sql = "SELECT fiches FROM tbl_users WHERE username = :username";
    $q= $db->prepare($sql);
    $q->bindParam(':username', $username);
    $q->execute();

    $fiches = $q->fetch();
    $fiches = $fiches[0];
?>

<div class="container">
    <div class="col-md-4 col-md-push-4 " style="height: 100%;">
        <img src="public/assets/img/logo.PNG" alt="logo" class="img-responsive logo" width="120">
        <div class="message">
            <?php
            if($messageBag->hasMsg()){
                echo $messageBag->show();
            }
            ?>
        </div>
        <?php if($answered_questions[0] <= 12 && $fiches < 15) { ?>
        <h1 style="text-align: center" class="centered htext">Uniek! Nieuw!<br>10 cent per quiz <br> en <u>elke maand</u><br> kan je <b>100 euro</b><br> verdienen.</h1>
        <a href="uitleg.php" class="btn home-button home-1">LEES UITLEG</a>
        <a href="public/views/play" class="btn home-button home-2">SPEEL GRATIS</a>
        <a href="buy.php" class="btn home-button home-3">KOOP GAMES</a>
        <a href="public/views/play" class="btn home-button home-4">SPEEL MET JE GAMES</a>
        <?php } else if($fiches > 11) {
            ?>
            <h1 style="text-align: center" class="centered htext">Uniek! Nieuw!<br>10 cent per quiz <br> en <u>elke maand</u><br> kan je <b>100 euro</b><br> verdienen.</h1>
            <a href="public/views/play" class="btn home-button home-3">START NU MET JE QUIZZEN</a>
            <a href="uitleg.php" class="btn home-button home-4">LEES UITLEG</a>
        <?php
        } else {
            ?>
            <h1 style="text-align: center" class="centered htext">Uniek! Nieuw!<br>10 cent per quiz <br> en <u>elke maand</u><br> kan je <b>100 euro</b><br> verdienen.</h1>
            <a href="uitleg.php" class="btn home-button home-2">LEES UITLEG</a>
            <a href="buy.php" class="btn home-button home-3">KOOP GAMES</a>
            <a href="public/views/play" class="btn home-button home-4">SPEEL MET JE GAMES</a>
        <?php
        }
        ?>
    </div>
</div>

<?php require 'footer.php';
} else {
    ?>
    <div class="container">
        <div class="col-md-4 col-md-push-4 " style="height: 100%">
            <img src="public/assets/img/logo.PNG" alt="logo" class="img-responsive logo" width="120">
            <div class="message">
                <?php
                if($messageBag->hasMsg()){
                    echo $messageBag->show();
                }
                ?>
            </div>
            <h1 style="text-align: center" class="centered htext">Uniek! Nieuw!<br>10 cent per quiz <br> en <u>elke maand</u><br> kan je <b>100 euro</b><br> verdienen.</h1>
            <a href="uitleg.php" class="btn home-button home-1">LEES UITLEG</a>
            <a href="public/views/play" class="btn home-button home-2">SPEEL GRATIS</a>
            <a href="buy.php" class="btn home-button home-3">KOOP GAMES</a>
            <a href="public/views/play" class="btn home-button home-4">SPEEL MET JE GAMES</a>
        </div>
    </div>
<?php
}
?>

编辑:

我也发现了这个错误:

04-28 14:50:25.537 16679-16679 / nl.kennenofkiezen.kennenofkiezen E / ActivityThread:执行暂停未恢复的活动:{nl.kennenofkiezen.kennenofkiezen / nl.kennenofkiezen.kennenofkiezen.KennenofKiezen} java。 lang.RuntimeException:在android.app.ActivityThread的android.app.ActivityThread.performPauseActivity(ActivityThread.java:3215)执行未恢复的活动暂停:{nl.kennenofkiezen.kennenofkiezen / nl.kennenofkiezen.kennenofkiezen.KennenofKiezen}。在android.app.ActivityThread.access $ 1100(ActivityThread.java:161)android.app.ActivityThread $ H.handleMessage的android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3181)的performPauseActivity(ActivityThread.java:3203) ActivityThread.java:1276)android.app.Handler.dispatchMessage(Handler.java:102)android.app.Looper.loop(Looper.java:157)android.app.ActivityThread.main(ActivityThread.java:5356) )java.lang.reflect.Method.invoke上的java.lang.reflect.Method.invokeNative(Native Method) ethod.java:515)位于com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1265)位于dalvik.system的com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081) .NativeStart.main(原生方法)

2 个答案:

答案 0 :(得分:0)

在您的清单文件中,检查是否存在以下行

<!-- GCM connects to Internet Services. -->
<uses-permission android:name="android.permission.INTERNET" />

<!-- Network State Permissions -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

答案 1 :(得分:0)

我在这里加载您的网页是我做的

Activity类的修改很少

import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnCancelListener;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class KennenofKiezen extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.universal_web_view);
        WebView view = (WebView) this.findViewById(R.id.webView);
        view.setWebViewClient(new myWebViewClient());
        view.getSettings().setJavaScriptEnabled(true);
        view.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        view.loadUrl("http://136.243.18.214/~kennenof/");
    }

    class myWebViewClient extends WebViewClient {

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            return super.shouldOverrideUrlLoading(view, url);
        }

        private int webViewPreviousState;

        private final int PAGE_STARTED = 0x1;

        private final int PAGE_REDIRECTED = 0x2;

        Dialog dialog = new Dialog(KennenofKiezen.this);

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
            webViewPreviousState = PAGE_STARTED;

            if (dialog == null || !dialog.isShowing())
                dialog = ProgressDialog.show(KennenofKiezen.this, "", "Loading Please Wait", true, true,
                        new OnCancelListener() {

                            @Override
                            public void onCancel(DialogInterface dialog) {
                                // do something
                            }
                        });
        }

        @Override
        public void onPageFinished(WebView view, String url) {

            if (webViewPreviousState == PAGE_STARTED) {
                if (null != dialog)
                    dialog.dismiss();
                dialog = null;
            }

        }
    }
}

在Manifest中添加了权限

<uses-permission android:name="android.permission.INTERNET" >
    </uses-permission>

无法共享屏幕截图我在安全的ODC中。