wizTurn / Android-SDK

wizTurn Android SDK
14 stars 22 forks source link

setPeripheralScanListener 와 펌웨어 업데이트에 관하여 질문 드립니다. #59

Open tryzone opened 9 years ago

tryzone commented 9 years ago

centralManager.startScanning(); 이후 setPeripheralScanListener에서 비콘 정보를 받아오는데

최초 1~2번만 정보를 받아오고 이후 작동을 하지 않습니다. interval은 5로 설정하여 빠르게 받아오도록 하였습니다.

펌웨어 버전이 14.04.10.09 입니다. 펍웨어 업데이트 방법좀 알려주시면 감사하겠습니다.

jayjay-dio commented 9 years ago

안녕하세요. 안드로애드 개발 담당자입니다. 비콘 2개는 정상적으로 작동하고 한 비콘이 비정상적으로 작동한가요?

tryzone commented 9 years ago

현재 확인 결과 3개 비콘 모두 그렇습니다.

startscanning 이후 한 번만 비콘의 정보를 받아오며 이 후 정보를 받아오지 않습니다.

jayjay-dio commented 9 years ago

매니저앱에서도 동일한 현상이 재현되나요? 현재까지 비콘 스캐닝이 제대로 안된다는 보고는 받아보질 못했습니다. 다시 확인 부탁드립니다. SDK 사용은 샘플앱과 Github의 첫 페이지를 보고 참조하시면 감사하겠습니다.

tryzone commented 9 years ago

매니저앱에서도 실행결과 scan버튼을 누르는 순간 한 번만 받아오고, 해당 비콘에 connect 해야 주기적으로 받아옵니다.

jayjay-dio commented 9 years ago

위즈턴 매니저앱은 어떤 버전을 사용하시나요? 그리고 우선 진단하기 위해서 다음과 같이 진행하시고 나서 이상현상이 발생하는지 다시 확인해 주시면 감사하겠습니다.

tryzone commented 9 years ago

위의 방법으로 해도 마찬가지입니다. 샘플앱 버전코드는 1입니다.

샘플앱의 ActivityMain 함수의 setCentralManager() 메소드에 있는 onPeripheralScan로 값이 들어 오는게 맞는 것인지요. scan버튼을 누르는 순간 onPeripheralScan이 한 번 호출되고, 이후 비콘과 connect 하게 되면 해당 비콘의 정보는 주기적으로 잘 받아옵니다. 비콘의 정보를 주기적으로 받아오기 위해선 connect를 무조건 해야 하는 것인가요

jayjay-dio commented 9 years ago

샘플앱과 소스코드는 아래 Github page에서 얻을 수 있습니다. https://github.com/wizTurn/Android-SDK/tree/master/Examples/WizTurnBeaconSample

WIZTURN 매니저앱은 아래 구글 플레이 스토어에서 얻을 수 있습니다. https://play.google.com/store/apps/details?id=com.wizturn.manager&hl=en

상기의 샘플앱과 소스코드를 사용하시는지 매니저앱은 상기의 앱을 사용하시는지 확인 부탁드립니다.

tryzone commented 9 years ago

버전 모두 이상없음 확인 하였습니다. sdk도 2.0이구요. scanstart() 와 connect 의 리스너는 setCentralManager() 함수에 정의 된 setPeripheralScanListener 가 맞는것인지요. 앱에서 비콘 감지를 위해 scan버튼을 누르면 한 번은 정상 작동 합니다. 로그로 확인 하였구요. connect 후엔 주기적으로 받아옵니다. 어떤 사항을 더 살펴 보면 될까요?

jayjay-dio commented 9 years ago

현재 사용하신 모델의 경우 비콘 연결과 상관없이 스캔이 되어야합니다. 연결이 안된상태에서도 메인액티비티의 액션바의 "SCAN"을 탭하면 스캔이 되어야합니다.

tryzone commented 9 years ago

말씀하신 매인액티비티의 액션바의 "SCAN"을 탭하면 최초 1번만 스캔을 합니다. '제 생각에는 "SCAN"을 scanstart(); 로 시작하면 주기적으로 주변의 송출되는 신호를 감지한다' 가 아닌가요?

tryzone commented 9 years ago

스캔 이후 발견 된 비콘에 대해서는 더이상 스캔을 하지 않고, 새로운 비콘만 스캔을 하는 것인가요..

private void setCentralManager() {
    centralManager = CentralManager.getInstance();
    centralManager.init(getApplicationContext());
    centralManager.setPeripheralScanListener(new PeripheralScanListener() {         
        @Override
        public void onPeripheralScan(Central central, final Peripheral peripheral) {
            Log.d("test", "onPeripheralScan() : peripheral : " + peripheral);
            runOnUiThread(new Runnable() {
                public void run() {                     
                    listAdapter.addOrUpdateItem(peripheral);
                }
            });             
        }           
    });
}

위와 같이 로그를 찍어 두고 확인하였습니다.