2016-11-08 4 views
1

시간이 끝나면 진동하는 타이머로 삼성 기어 S2 (웹) 용 응용 프로그램을 개발 중입니다. 응용 프로그램이 백그라운드 모드에 있더라도 응용 프로그램이 진동 할 수 있도록하려면 어떻게해야합니까?티백 배경 진동

답변

0

일반적으로 알람 API 또는 알림을 사용하지 않는 한 배경 진동 (화면 꺼짐 상태에서)은 웹 앱에서 직접 사용할 수 없습니다.

그러나 시간 제한 배경 진동이 쉽게 .I이 샘플 코드를 공유하고 Power APIweb workers을 사용하여 속임수를 할 수 있습니다

main.js

window.onload = function() { 
     document.addEventListener('tizenhwkey', function(e) { 
      if (e.keyName === "back") { 
       try { 
        tizen.application.getCurrentApplication().hide(); 
       }catch (ignore) {} 
      } 
     }); 

     var mainPage = document.querySelector('#main'); 
     mainPage.addEventListener("click", function() { 
     var contentText = document.querySelector('#content-text'); 


     var worker;        //web worker 
     worker = new Worker("js/worker.js"); //load from directory 

     worker.onmessage = function(event) { //receive data from worker 
      tizen.power.turnScreenOn();  // forcefully turn the screen on 
      setTimeout(function(){ 
       contentText.innerHTML = event.data; // time counter 
       navigator.vibrate(1000); 
      }, 500);       // just being safe (vibrate after screen is on) 
     }; 

    }); 
}; 

var i=0; 

function timedCount() { 
    i=i+1; 
    postMessage(i);      //send data 
    setTimeout("timedCount()",5000); // set vibration interval (or use specific time) 
} 

timedCount(); 

을 worker.js config.xml에 다음 줄을 추가하십시오.

<tizen:privilege name="http://tizen.org/privilege/power"/> 
<tizen:setting background-support="enable" encryption="disable" hwkey-event="enable"/> 

백그라운드 지원이 활성화되면 웹 작업자를 적용 할 때 앱이 최소화되는 동안 응답합니다. 뒤로 키 이벤트에 대한 getCurrentApplication(). exit() 대신 hideByConnect(). getCurrentApplication(). hide().을 사용하면 작업이 수행됩니다.

진동 유형별로 Vibration Guide을 확인하십시오.

+1

감사합니다. 응용 프로그램을 최소화 한 경우 어떻게 열 수 있습니까 (마지막 창)? – SpyceR