2010-06-14 19 views
5

मैं एक ऐप विकसित कर रहा हूं जिसमें मुझे जीवित रहने के लिए टीसीपी कनेक्शन की आवश्यकता है। मैंने ऐसा करने के लिए एक प्रकार की पिंग/पोंग प्रणाली लागू की है। जब स्क्रीन चालू होती है तो यह पूरी तरह से काम करता है, लेकिन जब फोन जाता है तो कुछ समय बाद पिंग्स का जवाब बंद हो जाता है। मैं किसी Wi-Fi सक्रिय करने वाले लॉक बना लिया है, लेकिन मैं अभी भी अभी भी वही समस्या का सामना कर रहा हूँ ..वेक लॉक काम नहीं कर रहा है

यह मेरा कोड है:

private static WifiManager wm = getSystemService(this.WIFI_SERVICE); 
private static WifiLock wl = null; 

public static void lock(){ 
    wl = wm.createWifiLock(WifiManager.WIFI_MODE_FULL , App.TAG); 
    if(!wl.isHeld()){ 
     wl.acquire(); 
    } 
} 

public static void unlock(){ 
    if(wl != null){ 
     if(wl.isHeld()){ 
      wl.release(); 
     } 
    } 
} 

कोई भी विचार?

+0

क्या आपने WakeLock ऑब्जेक्ट पर 'अधिग्रहण()' विधि का आह्वान किया था? –

+0

वाई-फाई वेक लॉक क्या है? क्या आपका मतलब स्क्रीन लॉक है? –

+0

मैंने अपने कोड – shuwo

उत्तर

2

आपको here से PowerLock को SCREEN_DIM_WAKE_LOCK/PARTIAL_WAKE_LOCK ध्वज के साथ प्राप्त करना होगा।

+0

के साथ प्रश्न अपडेट किया है, इसलिए स्क्रीन बंद होने पर वाई-फाई रखना संभव नहीं है? – shuwo

+1

नहीं। यह संभव है। वाईफाई-लॉक ​​आपको खोए गए कनेक्शन से बचाता है। आप PARTIAL_WAKE_LOCK का भी उपयोग कर सकते हैं। मुझे लगता है कि समस्या यह है कि आपने सीपीयू-लॉक हासिल नहीं किया है, इसलिए आपका कोड नहीं किया गया है। –

संबंधित मुद्दे