2017-08-12 67 views
0

如何檢查統一內更新功能內的互聯網連接? ,要知道當用戶連接或不連接,並基於這只是禁用我的遊戲的一些功能?
看起來好像沒有像之前問過的問題(因爲寫入標題和堆棧溢出提示類似的問題),或者如果是,它只是檢查Start函數中的連接。請幫我弄清楚我能爲統一這種類型的問題做些什麼。
順便說一句tanx幫忙!在運行時統一檢查互聯網連接

void Update() { 

    if (Application.internetReachability == NetworkReachability.NotReachable) { 
     Debug.Log ("No internet access"); 
    } else { 
     Debug.Log ("internet connection"); 
    } 
} 
+1

可能重複[檢查從Unity互聯網連接](https://stackoverflow.com/questions/34138707/check-for-internet-connectivity-from-unity) – mjwills

+1

thanx男子我已經使用已提供的功能在我的更新功能中的鏈接,但問題是,它就像啓動功能只是檢查連接一次,而當我在統一編輯器中打按鈕和幾秒鐘後,我只是禁用我的電腦上網我仍然返回相同的結果。 –

+1

我只是把我的xampp關閉,它只是導致一個愚蠢的錯誤,任何方式沒有,因爲我的連接是在我的電腦上我使用xampp的數據庫,並希望它顯示第二個Debug.Log(「互聯網連接」)的結果,但問題是當遊戲破壞,我把我的網絡關閉仍然顯示相同的結果,我該如何解決這個??? –

回答

1

您需要定期運行您的Update函數。

http://unitylore.com/articles/timers-in-unity/可以用於此:

using UnityEngine; 

public class Timer : MonoBehaviour 
{ 
    public float waitTime = 1f; 

    float timer; 

    void Update() 
    { 
     timer += Time.deltaTime; 
     if (timer > waitTime) { 
      if (Application.internetReachability == NetworkReachability.NotReachable) { 
       Debug.Log ("No internet access"); 
      } else { 
       Debug.Log ("internet connection"); 
      } 
      timer = 0f; 
     } 
    } 
} 
1


雖然@mjwills是正確的,但我只是什麼使這更清楚地看出,它是:
@mjwills的解決方案是正確的,它的工作原理確定,但來吧,沒有身體強制你檢查連接每一個你的遊戲! (這是瘋了)
你沒有做到這一點,
當我看到這個,我只是罵我自己,我爲什麼問這種愚蠢的問題
更好的解決方案:
您可以檢查連接時,按鈕被點擊或當場景中的事件發生時,這是更好的解決方案! 順便說一下,在這個問題中,每一個身體都有所貢獻!