나는 삼성 j5를 보유하고 있습니다.일련 번호와 같은 각 기기의 Android 고유 ID
설정> 장치 정보> 상태> 일련 번호로 나와있는 일련 번호를 사용하고 있습니다.
이 값은 RF8H933KWLF
이며 고유하다고 가정합니다. 이제이 값을 데이터베이스에 등록하고 앱을 실행할 때 데이터베이스에 요청을 보내고 내가 사용하는 장치가 내 데이터베이스에 등록되어 있는지 확인합니다. 장치 일련 번호를 얻는 방법은 다음과 같습니다.
String serialNumber = "";
try {
Class <? > c = Class.forName("android.os.SystemProperties");
Method get = c.getMethod("get", String.class, String.class);
serialNumber = (String) get.invoke(c, "sys.serialnumber", "Error");
if (serialNumber.equals("Error")) {
serialNumber = (String) get.invoke(c, "ril.serialnumber", "Error");
}
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
내 장치에서 올바른 값을 얻을 수 있습니다.
내 질문에 내가 다른 장치를 사용할 때 나는 Serial Number
에서 볼 수있는 값을 얻지 못한다.
- 나는 기기에서 시도했는데
Error
을 반환합니다. - 장치에 고유 한 대체 ID를 사용할 수 있습니다 (장치가 복원되었거나 루팅 된 경우에도 변경되지 않음).
- 아이디가 보이기 전에 내 데이터베이스에 등록하여 앱 로그인에 액세스 할 수 있습니다.
나는이 ID를 시도했지만 설명서가 장치가 복원되거나 루팅 될 때 변경 될 것이라고 말합니다. 나는 그걸 원하지 않아. 또한이 ID를 얻을 수있는 방법이 없으므로 일련 번호와 달리 등록 정보> 장치> 상태> 일련 번호로 이동할 수 있습니다. '그러면 해당 값을 데이터베이스에 저장하십시오. – Giant
많은 질문이 있습니다. 당신이 장치 ID를 얻을 수있는 다른 방법, 한번만 모든 대답을 확인, 그것 중 적어도 하나는 작동해야합니다 – Redman
나는 장치에서 그 값을 볼 수있는 곳은 단 하나 밖에 없나요? . – Giant