Skip to content

Commit

Permalink
termux-telephony-deviceinfo: SDK 29 compatibility
Browse files Browse the repository at this point in the history
Fixes #362.
  • Loading branch information
Leonid Pliushch committed Sep 30, 2020
1 parent 61cba93 commit 19229ad
Showing 1 changed file with 22 additions and 6 deletions.
28 changes: 22 additions & 6 deletions app/src/main/java/com/termux/api/TelephonyAPI.java
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,15 @@ public void writeJson(JsonWriter out) throws Exception {

int phoneType = manager.getPhoneType();

String device_id = phoneType == TelephonyManager.PHONE_TYPE_GSM ? manager.getImei() : manager.getMeid();
String device_id = null;

try {
device_id = phoneType == TelephonyManager.PHONE_TYPE_GSM ? manager.getImei() : manager.getMeid();
} catch (SecurityException e) {
// Failed to obtain device id.
// Android 10+.
}

out.name("device_id").value(device_id);
out.name("device_software_version").value(manager.getDeviceSoftwareVersion());

Expand Down Expand Up @@ -256,12 +264,22 @@ public void writeJson(JsonWriter out) throws Exception {
}
out.name("network_type").value(networkTypeName);
out.name("network_roaming").value(manager.isNetworkRoaming());

out.name("sim_country_iso").value(manager.getSimCountryIso());
out.name("sim_operator").value(manager.getSimOperator());
out.name("sim_operator_name").value(manager.getSimOperatorName());
out.name("sim_serial_number").value(manager.getSimSerialNumber());
out.name("sim_subscriber_id").value(manager.getSubscriberId());

String sim_serial = null;
String subscriber_id = null;
try {
sim_serial = manager.getSimSerialNumber();
subscriber_id = manager.getSubscriberId();
} catch (SecurityException e) {
// Failed to obtain device id.
// Android 10+.
}
out.name("sim_serial_number").value(sim_serial);
out.name("sim_subscriber_id").value(subscriber_id);

int simState = manager.getSimState();
String simStateString;
switch (simState) {
Expand All @@ -288,8 +306,6 @@ public void writeJson(JsonWriter out) throws Exception {
break;
}
out.name("sim_state").value(simStateString);


}

out.endObject();
Expand Down

0 comments on commit 19229ad

Please sign in to comment.