2014-11-30 3 views

답변

2

당신은 Major, Minor, Broadcasting Power, Advertising interval을 official app by Estimote으로 변경할 수 있습니다. 그러나 UUID의 변경은 SDK에서만 가능합니다.

+0

답변을 개선하기 위해. 트릭은 BeaconConnection 클래스에 있습니다. http://estimote.github.io/Android-SDK/JavaDocs/ – 4gus71n

1

여기 코드를 남겨두면 누군가가 유용 할 것입니다. 그 중 3 개는 거의 동일하지만 writeMajor 만 변경됩니다.

private void setMajorID(final int majorid,final Beacon beacon) { 

    mMajorsConnection = new BeaconConnection(this, beacon, new BeaconConnection.ConnectionCallback() { 
     @Override 
     public void onAuthenticated(BeaconConnection.BeaconCharacteristics chars) { 
      Log.d(TAG, "Authenticated to beacon: " + chars); 
      mMajorsConnection.writeMajor(majorid, new BeaconConnection.WriteCallback() { 
       @Override 
       public void onSuccess() { 
        runOnUiThread(new Runnable() { 
         @Override 
         public void run() { 
          mAdapter.update(beacon); 
         } 
        }); 
        Log.d(TAG, "Successfully writted the major id!"); 
        mMajorsConnection.close(); 
       } 

       @Override 
       public void onError() { 
        Log.d(TAG, "Error while writting the major id!"); 
       } 
      }); 
     } 

     @Override 
     public void onAuthenticationError() { 
      Log.d(TAG, "Authentication Error"); 
     } 

     @Override 
     public void onDisconnected() { 
      Log.d(TAG, "Disconnected"); 
     } 
    }); 
     mMajorsConnection.authenticate(); 
}