Skip to content

Commit

Permalink
Merge pull request #52 from xLaMbChOpSx/master
Browse files Browse the repository at this point in the history
Cell Tracking Update, Disclaimer Acceptance, MapViewer Updates
  • Loading branch information
xLaMbChOpSx committed May 2, 2014
2 parents 53b5075 + eb56f63 commit 7dc98f3
Show file tree
Hide file tree
Showing 9 changed files with 275 additions and 276 deletions.
2 changes: 2 additions & 0 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.DELETE" />

<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
Expand Down
83 changes: 50 additions & 33 deletions app/src/main/java/com/SecUpwN/AIMSICD/AIMSICD.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,14 @@
import android.app.AlertDialog;
import android.content.ComponentName;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.ServiceConnection;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Environment;
Expand Down Expand Up @@ -68,7 +71,9 @@ public class AIMSICD extends Activity {
private final Context mContext = this;
private boolean mBound;
private SharedPreferences prefs;
private Editor prefsEditor;
private AIMSICDDbAdapter dbHelper;
private String mDisclaimerAccepted;

private AimsicdService mAimsicdService;

Expand All @@ -89,11 +94,43 @@ public void onCreate(Bundle savedInstanceState) {
startService(intent);
bindService(intent, mConnection, Context.BIND_AUTO_CREATE);

prefs = mContext.getSharedPreferences(
AimsicdService.SHARED_PREFERENCES_BASENAME, 0);

mDisclaimerAccepted = getResources().getString(R.string.disclaimer_accepted);

if (!prefs.getBoolean(mDisclaimerAccepted, false)) {
final AlertDialog.Builder disclaimer = new AlertDialog.Builder(this)
.setTitle(R.string.disclaimer_title)
.setMessage(R.string.disclaimer)
.setPositiveButton(R.string.text_ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
prefsEditor = prefs.edit();
prefsEditor.putBoolean(mDisclaimerAccepted, true);
prefsEditor.commit();
}
})
.setNegativeButton(R.string.text_cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
prefsEditor = prefs.edit();
prefsEditor.putBoolean(mDisclaimerAccepted, false);
prefsEditor.commit();
Uri packageUri = Uri.parse("package:com.SecUpwN.AIMSICD");
Intent uninstallIntent =
new Intent(Intent.ACTION_DELETE, packageUri);
startActivity(uninstallIntent);
finish();
mAimsicdService.onDestroy();
}
});

AlertDialog disclaimerAlert = disclaimer.create();
disclaimerAlert.show();
}

//Create DB Instance
dbHelper = new AIMSICDDbAdapter(mContext);

prefs = mContext.getSharedPreferences(
AimsicdService.SHARED_PREFERENCES_BASENAME, 0);
}

@Override
Expand Down Expand Up @@ -212,9 +249,9 @@ private void updateUI() {
content.setText(mAimsicdService.getNetworkTypeName(netID, false));

content = (TextView) findViewById(R.id.data_activity);
content.setText(mAimsicdService.getActivityDesc(netID));
content.setText(mAimsicdService.getActivityDesc());
content = (TextView) findViewById(R.id.data_status);
content.setText(mAimsicdService.getStateDesc(netID));
content.setText(mAimsicdService.getStateDesc());
content = (TextView) findViewById(R.id.network_roaming);
content.setText(mAimsicdService.isRoaming());

Expand Down Expand Up @@ -243,7 +280,6 @@ public boolean onCreateOptionsMenu(Menu menu) {
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuItem mTrackCell = menu.findItem(R.id.track_cell);
MenuItem mTrackSignal = menu.findItem(R.id.track_signal);
MenuItem mTrackLocation = menu.findItem(R.id.track_location);
MenuItem mTrackFemtocell = menu.findItem(R.id.track_femtocell);

Expand All @@ -255,14 +291,6 @@ public boolean onPrepareOptionsMenu(Menu menu) {
mTrackCell.setIcon(R.drawable.untrack_cell);
}

if (mAimsicdService.TrackingSignal) {
mTrackSignal.setTitle(R.string.untrack_signal);
mTrackSignal.setIcon(R.drawable.ic_action_network_cell);
} else {
mTrackSignal.setTitle(R.string.track_signal);
mTrackSignal.setIcon(R.drawable.ic_action_network_cell_not_tracked);
}

if (mAimsicdService.TrackingLocation) {
mTrackLocation.setTitle(R.string.untrack_location);
mTrackLocation.setIcon(R.drawable.ic_action_location_found);
Expand All @@ -271,12 +299,16 @@ public boolean onPrepareOptionsMenu(Menu menu) {
mTrackLocation.setIcon(R.drawable.ic_action_location_off);
}

if (mAimsicdService.TrackingFemtocell) {
mTrackFemtocell.setTitle(R.string.untrack_femtocell);
mTrackFemtocell.setIcon(R.drawable.ic_action_network_cell);
if (mAimsicdService.getPhoneID() == TelephonyManager.PHONE_TYPE_CDMA) {
if (mAimsicdService.TrackingFemtocell) {
mTrackFemtocell.setTitle(R.string.untrack_femtocell);
mTrackFemtocell.setIcon(R.drawable.ic_action_network_cell);
} else {
mTrackFemtocell.setTitle(R.string.track_femtocell);
mTrackFemtocell.setIcon(R.drawable.ic_action_network_cell_not_tracked);
}
} else {
mTrackFemtocell.setTitle(R.string.track_femtocell);
mTrackFemtocell.setIcon(R.drawable.ic_action_network_cell_not_tracked);
mTrackFemtocell.setVisible(false);
}

return super.onPrepareOptionsMenu(menu);
Expand All @@ -291,10 +323,6 @@ public boolean onOptionsItemSelected(MenuItem item) {
trackcell();
invalidateOptionsMenu();
return true;
case R.id.track_signal:
tracksignal();
invalidateOptionsMenu();
return true;
case R.id.track_location:
tracklocation();
invalidateOptionsMenu();
Expand Down Expand Up @@ -354,17 +382,6 @@ private void showmap() {
startActivity(myIntent);
}

/**
* Signal Strength Tracking - Enable/Disable
*/
private void tracksignal() {
if (mAimsicdService.TrackingSignal) {
mAimsicdService.setSignalTracking(false);
} else {
mAimsicdService.setSignalTracking(true);
}
}

/**
* Cell Information Tracking - Enable/Disable
*/
Expand Down
56 changes: 0 additions & 56 deletions app/src/main/java/com/SecUpwN/AIMSICD/AIMSICDDbAdapter.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ public class AIMSICDDbAdapter {
private static final String COLUMN_ID = "_id";
private final String LOCATION_TABLE = "locationinfo";
private final String CELL_TABLE = "cellinfo";
private final String SIGNAL_TABLE = "signalinfo";
private final String OPENCELLID_TABLE = "opencellid";
private final String DEFAULT_MCC_TABLE = "defaultlocation";
private final String DB_NAME = "myCellInfo";
Expand Down Expand Up @@ -71,15 +70,6 @@ public void close() {
"Country VARCHAR, Operator VARCHAR, OperatorName VARCHAR, " +
"Timestamp TIMESTAMP NOT NULL DEFAULT current_timestamp);";

/**
* Signal Strength Tracking Database
*/
private final String SIG_DATABASE_CREATE = "create table " +
SIGNAL_TABLE + " (" + COLUMN_ID +
" integer primary key autoincrement, Lac INTEGER, CellID INTEGER, " +
"Net VARCHAR, Lat VARCHAR, Lng VARCHAR, Signal INTEGER, Connection VARCHAR, " +
"Timestamp TIMESTAMP NOT NULL DEFAULT current_timestamp);";

/**
* OpenCellID Cell Information Database
*/
Expand Down Expand Up @@ -184,39 +174,6 @@ public long insertLocation(int lac, int cellID,
}
}

/**
* Inserts Signal Strength Details into Database
*
* @return row id or -1 if error
*/
public long insertSignal(int lac, int cellID,
int netType, double latitude, double longitude,
int signalInfo, String cellInfo) {
//Populate Content Values for Insert or Update
ContentValues signalValues = new ContentValues();
signalValues.put("Lac", lac);
signalValues.put("CellID", cellID);
signalValues.put("Net", netType);
signalValues.put("Lat", latitude);
signalValues.put("Lng", longitude);
signalValues.put("Signal", signalInfo);
signalValues.put("Connection", cellInfo);

if (cellSignalExists(cellID)) {
return mDb.update(SIGNAL_TABLE, signalValues, "CellID=?",
new String[]{Integer.toString(cellID)});
} else {
return mDb.insert(LOCATION_TABLE, null, signalValues);
}
}

/**
* Returns Signal Strength database contents
*/
public Cursor getSignalData() {
return mDb.query(true, SIGNAL_TABLE, new String[] {"Net", "Lat", "Lng", "Signal", "CellID"},
"Lat <> 0.0 AND lng <> 0.0",null,null,null,null,null);
}

/**
* Returns Cell Information database contents
Expand Down Expand Up @@ -283,16 +240,6 @@ public boolean openCellExists(int cellID) {
return cursor.getCount()>0;
}

/**
* Checks to see if Cell Signal data already exists in database
*/
public boolean cellSignalExists(int cellID) {
Cursor cursor = mDb.rawQuery("SELECT * FROM " + SIGNAL_TABLE + " WHERE CellID = " +
cellID, null);

return cursor.getCount()>0;
}

public double[] getDefaultLocation(int mcc) {
double[] loc = new double[2];

Expand Down Expand Up @@ -361,7 +308,6 @@ public void exportDB () {
try {
export(LOCATION_TABLE);
export(CELL_TABLE);
export(SIGNAL_TABLE);
export(OPENCELLID_TABLE);
final AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
builder.setTitle(R.string.database_export_successful)
Expand Down Expand Up @@ -426,7 +372,6 @@ public class DbHelper extends SQLiteOpenHelper {
public void onCreate(SQLiteDatabase database) {
database.execSQL(LOC_DATABASE_CREATE);
database.execSQL(CELL_DATABASE_CREATE);
database.execSQL(SIG_DATABASE_CREATE);
database.execSQL(OPENCELLID_DATABASE_CREATE);
database.execSQL(DEFAULT_MCC_DATABASE_CREATE);
populateDefaultMCC(database);
Expand All @@ -440,7 +385,6 @@ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
);
db.execSQL("DROP TABLE IF EXISTS " + LOCATION_TABLE);
db.execSQL("DROP TABLE IF EXISTS " + CELL_TABLE);
db.execSQL("DROP TABLE IF EXISTS " + SIGNAL_TABLE);
db.execSQL("DROP TABLE IF EXISTS " + OPENCELLID_TABLE);
db.execSQL("DROP TABLE IF EXISTS " + DEFAULT_MCC_TABLE);

Expand Down
7 changes: 3 additions & 4 deletions app/src/main/java/com/SecUpwN/AIMSICD/DbViewer.java
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,7 @@ public void onClick(View v) {
}

private void BuildTable(Cursor tableData) {
if (tableData != null && tableData.moveToFirst()) {

if (tableData != null && tableData.getCount() > 0) {
if (mTableSelected.equals("OpenCellID Data")) {
BaseInflaterAdapter<CardItemData> adapter = new BaseInflaterAdapter<CardItemData>(
new OpenCellIdCardInflater());
Expand Down Expand Up @@ -99,7 +98,9 @@ private void BuildTable(Cursor tableData) {
}
lv.setAdapter(adapter);
}
lv.setVisibility(View.VISIBLE);
} else {
lv.setVisibility(View.GONE);
Helpers.sendMsg(this, "Table contains no data to display");
}
}
Expand All @@ -116,8 +117,6 @@ protected Cursor doInBackground(Cursor... params) {
mDb.open();
if (mTableSelected.equals("Cell Data")) {
return mDb.getCellData();
} else if (mTableSelected.equals("Signal Strength Data")) {
return mDb.getSignalData();
} else if (mTableSelected.equals("Location Data")) {
return mDb.getLocationData();
} else if (mTableSelected.equals("OpenCellID Data")) {
Expand Down
Loading

0 comments on commit 7dc98f3

Please sign in to comment.