2014-05-07 32 views
8

The Connection to the server was unsuccessful(file:///android-asset/www/index.html)Cordova kết nối đến máy chủ đã không thành công

được hiển thị khi tôi chạy ứng dụng Android của tôi. vui lòng cho tôi biết cách giải quyết vấn đề này.

+0

Bạn có thể thêm một số mã không? giống như mã trong tệp hoạt động chính của bạn. tệp chỉ mục của bạn bên trong thư mục nội dung là gì? như: asset/www/index.html –

+0

Có thể trùng lặp với [Lỗi ứng dụng - Kết nối với máy chủ không thành công. (tệp: /// android \ _asset/www/index.html)] (http://stackoverflow.com/questions/12319809/application-error-the-connection-to-the-server-was-unsuccessful-file- andr) – Dunc

Trả lời

8

Điều này có thể được yêu cầu ở đây nhiều lần .. Sự cố này có thể khắc phục bằng cách thêm thời gian chờ vào cuộc gọi webview (index.html). Trong lớp project_name.java bạn chỉ cần thêm này

super.setIntegerProperty("loadUrlTimeoutValue", 5000); 

Và trong Cordova mới nhất, chỉ cần sử dụng này để timeout

super.loadUrl(Config.getStartUrl(), 5000); 

Cũng đi qua những cái câu hỏi

Question1

Question2

UPDATE:

hơn Một giải pháp, hãy thử này

Tạo một main.html và đưa code của bạn ở đó, và trong index.html của bạn chỉ cần chuyển hướng đến main.html

<script> 
window.location='./main.html'; 
</script> 
+0

manukv cảm ơn cho câu trả lời ur nhưng nó sẽ không hoạt động tôi vẫn nhận được cùng một lỗi sau khi sửa đổi .java class.please cho tôi biết bất kỳ giải pháp khác –

+0

phiên bản cordova nào bạn đang sử dụng và bạn đang cố gắng chạy ứng dụng trong trình mô phỏng hoặc thiết bị ?? câu trả lời cập nhật xin kiểm tra xem nó – manukv

+0

Nó không làm việc cho tôi. –

0

hey i nghĩ rằng lỗi này có thể đến tải nhiều tập lệnh trong thời gian bắt đầu để nó sẽ mất nhiều thời gian hơn.

do đó bạn thiết lập như thế này trong java của bạn ...

super.loadUrl("file:///android_asset/www/index.html"); 
super.setIntegerProperty("loadUrlTimeoutValue", 600000); 

reference1 reference2

2

Vấn đề chính cho vấn đề này là mất nhiều thời gian để tải trang của bạn.

có nó là có thể hack để giải quyết vấn đề này, làm cho một tên trang html index.html và tên trang index hiện tại của bạn để có sự thay đổi như một main.html hoặc bất kỳ ai khác đưa ra một chuyển hướng đến trang này như thế này

<script> 
     window.location='main.html'; 
    </script> 

am chắc chắn đó là công việc rất nhiều

4

This blog post từ Robert Kehoe:

01.
  • dường như EASY với tôi
  • Made ý nghĩa với tôi
  • LÀM VIỆC cho tôi

Đổi tên index.html của bạn để "main.html"

Tạo mới "chỉ số .html" và đưa nội dung sau vào nó:!

<!doctype html> 
<html> 
    <head> 
    <title>the title</title> 
    <script> 
    window.location='./main.html'; 
    </script> 
    <body> 
    </body> 
</html> 

Rebuild ứng dụng của bạn Không có nhiều sai sót

Robert cũng cho biết,

Một ý tưởng tốt là để cung cấp cho ứng dụng một của bạn "Màn hình giật gân", để người dùng nhận được phản hồi tức thì rằng ứng dụng của bạn đang tải/đang hoạt động, trước khi ứng dụng đó hoàn toàn sẵn sàng.

+0

Đáng buồn là tôi không có cordova và các plugin của nó được tiêm vào main.html – viskin

+0

Trong trường hợp của tôi, đó là màn hình giật gân đã hết thời gian chờ. :-( –

23

Đối với mới nhất Cordova (4+) cài đặt này trong config.xml:

ví dụ:

<preference name="LoadUrlTimeoutValue" value="70000"/> 

Tăng thời gian chờ mặc định là 70 giây (mặc định là 20), giảm cơ hội hết giờ.

Documents: https://cordova.apache.org/docs/en/latest/config_ref/index.html#preference

Khi tải một trang, số lượng thời gian chờ trước khi ném một lỗi thời gian chờ.

+0

Điều này giải quyết được vấn đề của tôi đối với phiên bản mới nhất của Cordova.Đơn giản hơn nhiều so với cách giải quyết khác – markj

+0

đã thêm thẻ này – Bharath

+0

Trong config.xml, trong thư mục gốc của dự án của bạn – driconmax

Các vấn đề liên quan