Skip to content

Commit

Permalink
Update Sim Changed
Browse files Browse the repository at this point in the history
  • Loading branch information
oaliaga committed Feb 27, 2018
1 parent 90a5d69 commit e06c4af
Show file tree
Hide file tree
Showing 4 changed files with 75 additions and 13 deletions.
1 change: 1 addition & 0 deletions app/src/main/AndroidManifest.xml
Expand Up @@ -289,6 +289,7 @@
<!-- WIFI CHANGED -->
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
<action android:name="android.intent.action.SIM_STATE_CHANGED" />

<!-- SIM CHANGED AND BOOT COMPLETED -->
<action android:name="android.intent.action.BOOT_COMPLETED" />
Expand Down
23 changes: 22 additions & 1 deletion app/src/main/java/com/prey/PreyApp.java
Expand Up @@ -12,8 +12,13 @@
import com.prey.actions.fileretrieval.FileretrievalController;
import com.prey.actions.geofences.GeofenceController;
import com.prey.actions.report.ReportScheduled;
import com.prey.events.Event;
import com.prey.events.manager.EventManagerRunner;
import com.prey.managers.PreyTelephonyManager;
import com.prey.net.PreyWebServices;

import org.json.JSONObject;

import java.util.Date;

public class PreyApp extends Application {
Expand All @@ -29,7 +34,6 @@ public void onCreate() {
PreyLogger.i("Application launched!");
PreyLogger.d("__________________");


boolean chromium=getPackageManager().hasSystemFeature("org.chromium.arc.device_management");
PreyLogger.d("chromium:"+chromium);

Expand Down Expand Up @@ -73,6 +77,23 @@ public void run() {
AwareConfig.getAwareConfig(getApplicationContext()).init();
}
}.start();
new Thread() {
public void run() {
if (PreyConfig.getPreyConfig(getApplicationContext()).isSimChanged()) {
JSONObject info = new JSONObject();
try {
String lineNumber=PreyTelephonyManager.getInstance(getApplicationContext()).getLine1Number();
if(lineNumber!=null&&!"".equals(lineNumber)) {
info.put("new_phone_number", PreyTelephonyManager.getInstance(getApplicationContext()).getLine1Number());
}
info.put("sim_serial_number", PreyConfig.getPreyConfig(getApplicationContext()).getSimSerialNumber());
} catch (Exception e) {
}
Event event= new Event(Event.SIM_CHANGED, info.toString());
new EventManagerRunner(getApplicationContext(), event) ;
}
}
}.start();
}
} catch (Exception e) {
PreyLogger.e("Error PreyApp:" + e.getMessage(), e);
Expand Down
42 changes: 32 additions & 10 deletions app/src/main/java/com/prey/PreyConfig.java
Expand Up @@ -90,6 +90,7 @@ public class PreyConfig {

public static final String PREFS_ACCOUNT_VERIFIED="PREFS_ACCOUNT_VERIFIED";
public static final String EMAIL="EMAIL";
public static final String TWO_STEP="TWO_STEP";
public static final String PREFS_SCHEDULED="PREFS_SCHEDULED";

public static final String SEND_DATA="SEND_DATA";
Expand Down Expand Up @@ -469,17 +470,29 @@ public boolean isThisDeviceAlreadyRegisteredWithPrey() {
}

public boolean isSimChanged() {

String simSerial=new PreyPhone(ctx).getSimSerialNumber();
PreyLogger.i("simSerial:" + simSerial + " actual:" + getSimSerialNumber());
if (getSimSerialNumber()==null||"".equals(getSimSerialNumber())){
if(simSerial!=null&&!"".equals(simSerial)){
this.setSimSerialNumber(simSerial);
String nowSimSerialNumber=new PreyPhone(ctx).getSimSerialNumber();
String currentSimSerialNumber=getSimSerialNumber();
PreyLogger.i("______________________________isSimChanged_______________");
PreyLogger.i("SimSerialNumber now:" + nowSimSerialNumber + " current:" + currentSimSerialNumber);
if (currentSimSerialNumber==null||"".equals(currentSimSerialNumber)){ //empty
if(nowSimSerialNumber!=null&&!"".equals(nowSimSerialNumber)){
this.setSimSerialNumber(nowSimSerialNumber);
PreyLogger.i("init setSimSerialNumber :"+nowSimSerialNumber);
}else{
PreyLogger.i("nothing setSimSerialNumber 1");
}
}else{
if(nowSimSerialNumber!=null&&!"".equals(nowSimSerialNumber)){ //not empty
if(!currentSimSerialNumber.equals(nowSimSerialNumber)){
this.setSimSerialNumber(nowSimSerialNumber);
PreyLogger.i("update setSimSerialNumber :"+nowSimSerialNumber);
return true;
}else{
PreyLogger.i("nothing setSimSerialNumber 2");
}
}else{
PreyLogger.i("nothing setSimSerialNumber 3");
}
return false;
}
if(simSerial!=null&&!"".equals(simSerial)&&!simSerial.equals(this.getSimSerialNumber())){
return true;
}
return false;
}
Expand Down Expand Up @@ -708,6 +721,15 @@ public void setEmail(String email) {
saveString(PreyConfig.EMAIL, email);
}

public boolean getTwoStep() {
return getBoolean(PreyConfig.TWO_STEP, false);
}

public void setTwoStep(boolean twoStep) {
saveBoolean(PreyConfig.TWO_STEP, twoStep);
}


public void setAccountVerified() {
saveBoolean(PreyConfig.PREFS_ACCOUNT_VERIFIED, true);
}
Expand Down
22 changes: 20 additions & 2 deletions app/src/main/java/com/prey/events/factories/EventFactory.java
Expand Up @@ -43,6 +43,7 @@ public class EventFactory {
private static final String ACTION_SHUTDOWN = "android.intent.action.ACTION_SHUTDOWN";
private static final String AIRPLANE_MODE = "android.intent.action.AIRPLANE_MODE";
private static final String BATTERY_LOW = "android.intent.action.BATTERY_LOW";
private static final String SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";

public static Event getEvent(final Context ctx, Intent intent) {
String message = "getEvent[" + intent.getAction() + "]";
Expand All @@ -52,14 +53,31 @@ public static Event getEvent(final Context ctx, Intent intent) {
if (PreyConfig.getPreyConfig(ctx).isSimChanged()) {
JSONObject info = new JSONObject();
try {
info.put("new_phone_number", PreyTelephonyManager.getInstance(ctx).getLine1Number());
String lineNumber=PreyTelephonyManager.getInstance(ctx).getLine1Number();
if(lineNumber!=null&&!"".equals(lineNumber)) {
info.put("new_phone_number", PreyTelephonyManager.getInstance(ctx).getLine1Number());
}
} catch (Exception e) {
}
return new Event(Event.SIM_CHANGED, info.toString());
} else {
return new Event(Event.TURNED_ON);
}
}
if (SIM_STATE_CHANGED.equals(intent.getAction())) {
if (PreyConfig.getPreyConfig(ctx).isSimChanged()) {
JSONObject info = new JSONObject();
try {
String lineNumber=PreyTelephonyManager.getInstance(ctx).getLine1Number();
if(lineNumber!=null&&!"".equals(lineNumber)) {
info.put("new_phone_number", PreyTelephonyManager.getInstance(ctx).getLine1Number());
}
info.put("sim_serial_number", PreyConfig.getPreyConfig(ctx).getSimSerialNumber());
} catch (Exception e) {
}
return new Event(Event.SIM_CHANGED, info.toString());
}
}
if (ACTION_SHUTDOWN.equals(intent.getAction())) {
return new Event(Event.TURNED_OFF);
}
Expand Down Expand Up @@ -116,7 +134,7 @@ public void run() {
if (wifiState == WifiManager.WIFI_STATE_ENABLED) {
info.put("connected", "wifi");
try {
Thread.sleep(2000);
Thread.sleep(6000);
} catch (Exception e) {
}
PreyConfig.getPreyConfig(ctx).registerC2dm();
Expand Down

0 comments on commit e06c4af

Please sign in to comment.