From 2d6ec56259e4bc7375e4cc0b3a02c377c260bb71 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Sat, 12 Dec 2015 03:02:07 +0100 Subject: [PATCH 01/80] deploy debug-apks to github --- .travis.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.travis.yml b/.travis.yml index 87fcd36bc..862d01a56 100644 --- a/.travis.yml +++ b/.travis.yml @@ -48,3 +48,15 @@ addons: build_command_prepend: "./gradlew clean" build_command: "./gradlew build" branch_pattern: master + +deploy: + skip_cleanup: true + provider: releases + api_key: + secure: hWL8k4eTm6RBA6JtY+zL/bFFm+f2eM466kKlHBrywukSXAThgX8VzHVu9I8u9bL1yP2j8R9XHmG+C49Fy8NZ85Hmj5ECFg3dGRhfxAzr3o3deP3Kaeo+LozGhOy/z2PvOPyHS7XqOK8kk8gmoMJ9jvhz+wFAbW9GxhKLYBMn81E= + file: + - app/build/outputs/apk/app-normal-debug.apk + - app/build/outputs/apk/app-system-debug.apk + on: + repo: SecUpwN/Android-IMSI-Catcher-Detector + tags: true \ No newline at end of file From 6c7ad5bc916686fd83608efb56b9cac0295464dd Mon Sep 17 00:00:00 2001 From: "Security: Pwned" Date: Sat, 12 Dec 2015 04:04:22 +0000 Subject: [PATCH 02/80] Renamed output APKs --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 862d01a56..9a6f4f119 100644 --- a/.travis.yml +++ b/.travis.yml @@ -55,8 +55,8 @@ deploy: api_key: secure: hWL8k4eTm6RBA6JtY+zL/bFFm+f2eM466kKlHBrywukSXAThgX8VzHVu9I8u9bL1yP2j8R9XHmG+C49Fy8NZ85Hmj5ECFg3dGRhfxAzr3o3deP3Kaeo+LozGhOy/z2PvOPyHS7XqOK8kk8gmoMJ9jvhz+wFAbW9GxhKLYBMn81E= file: - - app/build/outputs/apk/app-normal-debug.apk - - app/build/outputs/apk/app-system-debug.apk + - app/build/outputs/apk/AIMSICD-normal-debug.apk + - app/build/outputs/apk/AIMSICD-system-debug.apk on: repo: SecUpwN/Android-IMSI-Catcher-Detector - tags: true \ No newline at end of file + tags: true From a9f9fa8713120477edd102dcfd7be1a4bdaf4d2b Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Mon, 14 Dec 2015 01:07:38 +0100 Subject: [PATCH 03/80] update .travis.yml --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 9a6f4f119..d0e5178ff 100644 --- a/.travis.yml +++ b/.travis.yml @@ -55,8 +55,8 @@ deploy: api_key: secure: hWL8k4eTm6RBA6JtY+zL/bFFm+f2eM466kKlHBrywukSXAThgX8VzHVu9I8u9bL1yP2j8R9XHmG+C49Fy8NZ85Hmj5ECFg3dGRhfxAzr3o3deP3Kaeo+LozGhOy/z2PvOPyHS7XqOK8kk8gmoMJ9jvhz+wFAbW9GxhKLYBMn81E= file: - - app/build/outputs/apk/AIMSICD-normal-debug.apk - - app/build/outputs/apk/AIMSICD-system-debug.apk + - AIMSICD/build/outputs/apk/AIMSICD-normal-debug.apk + - AIMSICD/build/outputs/apk/AIMSICD-system-debug.apk on: repo: SecUpwN/Android-IMSI-Catcher-Detector tags: true From ac35ae010cb4505cf276d231a92ead010fc1e65b Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Wed, 16 Dec 2015 00:20:57 +0100 Subject: [PATCH 04/80] upload md5-sums too --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index d0e5178ff..0e23975ba 100644 --- a/.travis.yml +++ b/.travis.yml @@ -49,6 +49,8 @@ addons: build_command: "./gradlew build" branch_pattern: master +before_deploy: cd AIMSICD/build/outputs/apk; md5sum *.apk > md5sums.txt; cd - + deploy: skip_cleanup: true provider: releases @@ -57,6 +59,7 @@ deploy: file: - AIMSICD/build/outputs/apk/AIMSICD-normal-debug.apk - AIMSICD/build/outputs/apk/AIMSICD-system-debug.apk + - AIMSICD/build/outputs/apk/md5sums.txt on: repo: SecUpwN/Android-IMSI-Catcher-Detector tags: true From 238e376c0dd862cf18c214eae194c09d2d59f11a Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Wed, 16 Dec 2015 00:56:54 +0100 Subject: [PATCH 05/80] add dummy keystore to demonstrate release builds on travis --- .gitignore | 2 ++ .travis.yml | 5 ++++- AIMSICD/build.gradle | 28 +++++++++++++++++++--------- keystore.jks.enc | Bin 0 -> 2176 bytes 4 files changed, 25 insertions(+), 10 deletions(-) create mode 100644 keystore.jks.enc diff --git a/.gitignore b/.gitignore index bd3a9e3df..f4a4f1fd4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +keystore.jks + # Built application files *.apk *.ap_ diff --git a/.travis.yml b/.travis.yml index 0e23975ba..f3c941030 100644 --- a/.travis.yml +++ b/.travis.yml @@ -34,7 +34,10 @@ android: - android-23 # Additional components - extra-android-m2repository - + +before_install: openssl aes-256-cbc -K $encrypted_c8bcb12e3e60_key -iv $encrypted_c8bcb12e3e60_iv -in keystore.jks.enc -out keystore.jks -d + + script: ./gradlew build check # Coverity Scan Settings #----------------------- diff --git a/AIMSICD/build.gradle b/AIMSICD/build.gradle index 33e422968..2d5d1c783 100644 --- a/AIMSICD/build.gradle +++ b/AIMSICD/build.gradle @@ -12,7 +12,7 @@ def isCi = "true".equals(System.getenv("CI")) def isTravis = "true".equals(System.getenv("TRAVIS")) def buildNumber = null -if(isTravis) { +if (isTravis) { buildNumber = System.getenv("TRAVIS_BUILD_NUMBER") } else { buildNumber = System.getenv("BUILDOZER_BUILDNUMBER") @@ -23,6 +23,16 @@ version = '0.1.37-alpha' android { compileSdkVersion 23 buildToolsVersion '23.0.2' + + signingConfigs { + releaseSigningConfig { + keyAlias aimsicd_key_alias + keyPassword aimsicd_key_password + storeFile file('../keystore.jks') + storePassword aimsicd_keystore_password + } + } + defaultConfig { minSdkVersion 16 targetSdkVersion 19 // Do not change: Working Icons on Android 5+ @@ -45,6 +55,7 @@ android { buildConfigField 'String', 'OPEN_CELLID_API_KEY', '"NA"' minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + signingConfig file('../keystore.jks').exists() ? signingConfigs.releaseSigningConfig : null } } compileOptions { @@ -65,7 +76,6 @@ android { exclude 'META-INF/NOTICE.txt' exclude 'META-INF/LICENSE.txt' } - productFlavors { system { versionName "$project.version-system" @@ -79,21 +89,21 @@ android { dependencies { // DO NOT REMOVE BELOW COMMENTED-OUT CODE BEFORE ASKING! // Please group dependencies for better review like below. - + // Android Support Libraries compile 'com.android.support:appcompat-v7:23.1.1' - + // OpenCSV (comma-separated values) parser library compile 'au.com.bytecode:opencsv:2.4' - + // Easy to use Root Shell for Android Applications compile 'com.github.Stericson:RootShell:d708ae1f0a' - + // SLF4J binding for the Android logger // https://github.com/lp0/slf4j-android compile 'eu.lp0.slf4j:slf4j-android:1.7.12-0' compile 'org.slf4j:slf4j-api:1.7.12' - + // Dependency Injection for Android compile 'io.freefair.android-injection:injection:1.0.0-rc2' compile 'io.freefair.android-injection:logging:1.0.0-rc2' @@ -101,10 +111,10 @@ dependencies { // OSMBonusPack library to interact with OpenStreetMap data compile 'com.github.MKergall.osmbonuspack:OSMBonusPack:v5.6' - + // Transition library for animated transition effects compile 'com.github.kaichunlin.transition:core:0.9.2' - + // ShowcaseView library to highlight specific app elements //compile 'com.github.amlcurran.showcaseview:library:5.3.0' } diff --git a/keystore.jks.enc b/keystore.jks.enc new file mode 100644 index 0000000000000000000000000000000000000000..bd0506b22de4938bed42ec01d68d14064fd29c8a GIT binary patch literal 2176 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 C(mc%o literal 0 HcmV?d00001 From 756bcb4a30408ac905133f3e34d0264762e57291 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Wed, 16 Dec 2015 01:27:28 +0100 Subject: [PATCH 06/80] Dont fail if properties arent set --- AIMSICD/build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/AIMSICD/build.gradle b/AIMSICD/build.gradle index 2d5d1c783..ab6ba29d1 100644 --- a/AIMSICD/build.gradle +++ b/AIMSICD/build.gradle @@ -26,10 +26,10 @@ android { signingConfigs { releaseSigningConfig { - keyAlias aimsicd_key_alias - keyPassword aimsicd_key_password + keyAlias project.hasProperty("aimsicd_key_alias") ? aimsicd_key_alias : "dummy" + keyPassword project.hasProperty("aimsicd_key_password") ? aimsicd_key_password : "dummy" storeFile file('../keystore.jks') - storePassword aimsicd_keystore_password + storePassword project.hasProperty("aimsicd_keystore_password") ? aimsicd_keystore_password : "dummy" } } From ae6fa68e9861e19db95b180b492e5568e369e776 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Sun, 3 Jan 2016 22:07:43 +0100 Subject: [PATCH 07/80] AtCommand Fragment -> Activity --- AIMSICD/src/main/AndroidManifest.xml | 5 +++ .../java/com/SecUpwN/AIMSICD/AIMSICD.java | 6 ++-- .../AtCommandActivity.java} | 33 +++++++------------ ...d_fragment.xml => activity_at_command.xml} | 0 4 files changed, 20 insertions(+), 24 deletions(-) rename AIMSICD/src/main/java/com/SecUpwN/AIMSICD/{fragments/AtCommandFragment.java => activities/AtCommandActivity.java} (93%) rename AIMSICD/src/main/res/layout/{at_command_fragment.xml => activity_at_command.xml} (100%) diff --git a/AIMSICD/src/main/AndroidManifest.xml b/AIMSICD/src/main/AndroidManifest.xml index 2b2b5cd69..5e00981d2 100644 --- a/AIMSICD/src/main/AndroidManifest.xml +++ b/AIMSICD/src/main/AndroidManifest.xml @@ -97,6 +97,11 @@ + + mSerialDevices = new ArrayList<>(); - private Context mContext; private String mSerialDevice; private int mTimeout; @@ -110,8 +107,8 @@ public class AtCommandFragment extends InjectionFragment { private Button atCommandExecute; @Override - public void onViewCreated(View view, Bundle savedInstanceState) { - super.onViewCreated(view, savedInstanceState); + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); atCommandExecute.setOnClickListener(new btnClick()); mSerialDeviceSpinner.setOnItemSelectedListener(new spinnerListener()); timeoutSpinner.setOnItemSelectedListener(new timeoutSpinnerListener()); @@ -170,12 +167,6 @@ public void onNothingSelected(AdapterView parentView) { } } - @Override - public void onAttach(Activity activity) { - super.onAttach(activity); - mContext = activity.getBaseContext(); - } - @Override public void onDestroy() { super.onDestroy(); @@ -195,16 +186,16 @@ public void onResume() { mAtCommandLayout.setVisibility(View.VISIBLE); break; case ROOT_UNAVAILABLE: - mAtCommandError.setText(mContext.getString(R.string.unable_to_acquire_root_access)); + mAtCommandError.setText(R.string.unable_to_acquire_root_access); break; case BUSYBOX_UNAVAILABLE: - mAtCommandError.setText(mContext.getString(R.string.unable_to_detect_busybox)); + mAtCommandError.setText(R.string.unable_to_detect_busybox); break; case SERIAL_INIT_ERROR: - mAtCommandError.setText(mContext.getString(R.string.unknown_error_trying_to_acquire_serial_device)); + mAtCommandError.setText(R.string.unknown_error_trying_to_acquire_serial_device); break; default: - mAtCommandError.setText(mContext.getString(R.string.unknown_error_initialising_at_command_injector)); + mAtCommandError.setText(R.string.unknown_error_initialising_at_command_injector); break; } @@ -270,7 +261,7 @@ private int initSerialDevice() { // THIS IS A BAD IDEA TODO: Consider removing // Use RIL Serial Device details from the System Property try { - String rilDevice = Helpers.getSystemProp(mContext, "rild.libargs", "UNKNOWN"); + String rilDevice = Helpers.getSystemProp(this, "rild.libargs", "UNKNOWN"); mSerialDevice = ("UNKNOWN".equals(rilDevice) ? rilDevice : rilDevice.substring(3)); if (!"UNKNOWN".equals(mSerialDevice)) { @@ -341,7 +332,7 @@ public void commandOutput(int id, String line) { if (!mSerialDevices.isEmpty()) { String[] entries = new String[mSerialDevices.size()]; entries = mSerialDevices.toArray(entries); - ArrayAdapter spinnerAdapter = new ArrayAdapter<>(mContext, + ArrayAdapter spinnerAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, entries); mSerialDeviceSpinner.setAdapter(spinnerAdapter); mSerialDeviceSpinner.setVisibility(View.VISIBLE); diff --git a/AIMSICD/src/main/res/layout/at_command_fragment.xml b/AIMSICD/src/main/res/layout/activity_at_command.xml similarity index 100% rename from AIMSICD/src/main/res/layout/at_command_fragment.xml rename to AIMSICD/src/main/res/layout/activity_at_command.xml From 0b84b059abda2e926c5a82cc0b6bd1d2e99fae06 Mon Sep 17 00:00:00 2001 From: Nordlenningen Date: Tue, 5 Jan 2016 23:12:20 +0100 Subject: [PATCH 08/80] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?= =?UTF-8?q?=20Bokm=C3=A5l)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 100.0% (298 of 298 strings) --- .../res/values-nb/translatable_strings.xml | 73 +++++++++++++++---- 1 file changed, 60 insertions(+), 13 deletions(-) diff --git a/AIMSICD/src/main/res/values-nb/translatable_strings.xml b/AIMSICD/src/main/res/values-nb/translatable_strings.xml index c1cc09fc7..59f83edf4 100644 --- a/AIMSICD/src/main/res/values-nb/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-nb/translatable_strings.xml @@ -68,9 +68,9 @@ ENDRINGSLOGG LISENS CREDITS - Venter / Laster + Venter / Laster. Aktiv sporing nær deg! - Alt OK. + Allt OK. Du blir sporet! "Utrygt tjenesteområde. Forlat det!" "SPRING! Håndsettet er manipulert!" @@ -120,10 +120,10 @@ "PC: " "Eksempler: " OpenCellID Data - "Lat: " - "Lon: " + "Breddegrad: " + "Lengdegrad: " - + Velg Liste Vellykket eksport AT kommando Interface @@ -138,7 +138,7 @@ Stille SMS Oppdaget Stille SMS Oppdaget\nDetaljer: Se databasefremviser. - + Listen inneholder ingen data å vise. OpenCellID API Nøkkel Trykk OK for å be om API nøkkel fra OpenCellID.org. Dette vil gjøre det mulig å laste ned deres data og se dette i kartet. Det vil og gi deg mulighet til å laste opp celle data. Bemerk at du må laste opp data innen 20 dager for å ha API nøkkelen aktiv. @@ -157,8 +157,8 @@ "Ingen trusler oppdaget. Vår App sjekker konstant ditt nettverk basert på den beskyttelse du har bestemt i Navigasjons skuffen og Instillinger." "Usikkert Område: Minst 1 ny eller ukjent basestasjon i området, eller med brutt eller usikker kryptering lavere enn A5/3. Anta at alle samtaler eller SMS som utføres hær kan bli avlyttet og lagret. Du bør forlate området." Aktive Fientlige Tjenester Oppdaget: En IMSI-Catcher (IMSIC) eller falsk BTS (basestasjon) sporer aktivt brukere. Aktiv sporing foregår i dette området. Du bør unngå dette stedet, spesiellt ved masseansamlinger. Ta ut batteriet eller knus telefonen! - Aktive Fientlige Tjenester Oppdaget: En IMSI-Catcher (IMSIC) eller falsk BTS (basestasjon) sporer aktivt brukere. Aktiv sporing foregår i dette området. Du bør unngå dette stedet, spesiellt ved masseansamlinger. Ta ut batteriet eller knus telefonen! - + Aktive Fientlige Tjenester Oppdaget: En IMSI-Catcher (IMSIC) eller falsk BTS (basestasjon) sporer aktivt brukere. Aktiv sporing foregår i dette området. Du bør unngå dette stedet, spesiellt ved masseansamlinger. Ta ut batteriet eller knus telefonen!. + Fientlig Manipulering: Noen forsøker å manipulere telefonen. Knus (eller selg) telefonen og skaff en ny (ikke ta med telefonen til dær du kjøper ny)! Bruk et nytt uregistrert SIM kort, endre ringemønster og varsle dine venner ved å snakke med dem, IKKE ved å ringe dem! Avbryt OK @@ -172,7 +172,7 @@ Danger Flat - + Sans Hvit Terreng Normal @@ -197,7 +197,7 @@ Overvåker Celle Informasjon. Ansvarsfraskrivelse Stoppet å Overvåker Celle Informasjon. - Sporer Celle Informasjon + Sporer Celle Informasjon. Stoppet sporing av Celle Information. Kun 1 API nøkkel forespøsel pr 24 timer\nPrøv igjen senere. Celle Informasjon ikke i OpenCellID Database! @@ -215,7 +215,7 @@ ALARM: WAP Push SMS oppdaget! AIMSICD kan kun oppdage FemtoCell tilkobling på CDMA enheter. Service Status endret! - :Stoppet sporing av FemtoCell forbindelser + :Stoppet sporing av FemtoCell forbindelser. ALARM: FemtoCell Sporing oppdaget! Oppfrisker alle Oppfrisker nå… @@ -280,9 +280,56 @@ AIMSICD trusselbilde, naboceller, krypterings metode indikator. SIM kort detaljer, IMEI, TMSI. Vis detaljert sammenligning av nåværende tilknyttet celle, med data (hvis noen) funnet i OpenCellID og merk forskjellen. - + Se de forskjellige DB listene vi har. Kart med fargekodede antenner i nærheten. - + Interface som tillater sending av AT kommandoer til Baseband Prosessor (krever ROOT). Start/stop angrepsoppdagelse og samle celledetaljer inn i database lister. + Versjon Nummer: %s + Git SHA-Signering: %s + Start å søke celler for å vise i Antenne Kartet og muligens laste dem opp senere til OpenCellID. + + AIMSICD instillinger som beskyttelsesregler, hyppighet og service oppførsel. + Backup SQLite3 DB til SD-Kort. + Tilbakefør SQLite3 DB til SD-Kort. + Rensk og nullstill alle eller spesifiserte DB liste(r). + Eksporter DB lister til individuelle CSV filer. + Importer DB liste(r) fra individuelle CSV filer. + + Motta API nøkkel for å bruke OpenCellID database til å opplaste og nedlaste data… + Status Icon og Project forklaring. + Last ned OpenCellID Database. + Last opp Basestasjoner til OpenCellID Database. + Avslutt denne Appen. + Venter på posisjon… + Klarte ikke tilbakeføre backup fra tidligere database grunnet nye struktur forandringer! + Spesifikk Basestasjon Data + Basestasjon Målinger + Importert OpenCellID Data + Standard Landskode Plassering + Stille SMS + Hendelseslogg + Målte Signalstyrker + + ***Søker etter AT serielle enheter...\n + "Funnet: " + ***Instillinger Fullført***\n + + Nåværende tilnyttet Basestasjon + Godt kjent kryptert Basestasjon + Ukjent eller usikker Basestasjon + Ny eller nylig tillagt Baserstasjon + + Database slettet og gjenopprettet vellykket.\nVennligst start Appen på nytt for å renske gamle verdier fra minnet. + + "Invalid OpenCellId nøkkel, prøv igjen senere." + Mottar OpenCellId API Nøkkel... + + Slettet + Feil under sletting + "Setning ikke lagt til\n\"dobbel apostrof vil skape databasefeil " + Setningen ble lagt til i databasen + Fikk ikke lagt til setningen i databasen + + Samle og send feil logger. From da5497f6c453088fbd003fdea64ce9d7abb25f04 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Wed, 6 Jan 2016 00:11:25 +0100 Subject: [PATCH 09/80] remove 2 redundant proguard rules --- AIMSICD/proguard-rules.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/AIMSICD/proguard-rules.txt b/AIMSICD/proguard-rules.txt index 401881c3b..9653e3eca 100644 --- a/AIMSICD/proguard-rules.txt +++ b/AIMSICD/proguard-rules.txt @@ -1,7 +1,5 @@ -dontobfuscate -verbose --optimizationpasses 5 --dontpreverify -dump class_files.txt -printseeds seeds.txt -printusage unused.txt From 3c1c4cd681a4a7dd9ea990f0c7cb93e84ee128d8 Mon Sep 17 00:00:00 2001 From: Nordlenningen Date: Tue, 5 Jan 2016 23:18:44 +0100 Subject: [PATCH 10/80] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?= =?UTF-8?q?=20Bokm=C3=A5l)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 100.0% (298 of 298 strings) --- AIMSICD/src/main/res/values-nb/translatable_strings.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/AIMSICD/src/main/res/values-nb/translatable_strings.xml b/AIMSICD/src/main/res/values-nb/translatable_strings.xml index 59f83edf4..04ad44dcf 100644 --- a/AIMSICD/src/main/res/values-nb/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-nb/translatable_strings.xml @@ -40,7 +40,7 @@ Seriell: Telefontype: IMEI: - RIL Version: + Radio Version: Tilbydernavn: Tilbyderkode: Type: @@ -48,7 +48,7 @@ CID: Dataaktivitet: Datastatus: - Roaming: + Søker: TA (LTE): Frisk opp Åpne navigasjons skuffe @@ -146,7 +146,7 @@ Lagret ny API-nøkkel. Feilsøkingslogger - Slett + Rensk Kopier Logger kopiert til clipboard. Stopp @@ -169,7 +169,7 @@ Pause OK Medium - Danger + Fare Flat Sans From 4b5442544c4693ac1e545da1fef7c690e3078501 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Tue, 5 Jan 2016 23:32:00 +0100 Subject: [PATCH 11/80] Translated using Weblate (English) Currently translated at 100.0% (298 of 298 strings) --- AIMSICD/src/main/res/values/translatable_strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AIMSICD/src/main/res/values/translatable_strings.xml b/AIMSICD/src/main/res/values/translatable_strings.xml index 65403917d..9f2727c18 100644 --- a/AIMSICD/src/main/res/values/translatable_strings.xml +++ b/AIMSICD/src/main/res/values/translatable_strings.xml @@ -209,7 +209,7 @@ Idle OK Medium - Gefahr + Danger Flat From 5910f75e990c38d9a9cbee4f7298ff70cb884bd0 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Tue, 5 Jan 2016 23:35:21 +0100 Subject: [PATCH 12/80] Translated using Weblate (German) Currently translated at 100.0% (298 of 298 strings) --- AIMSICD/src/main/res/values-de/translatable_strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AIMSICD/src/main/res/values-de/translatable_strings.xml b/AIMSICD/src/main/res/values-de/translatable_strings.xml index c5be8a4fc..ed13d78ed 100644 --- a/AIMSICD/src/main/res/values-de/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-de/translatable_strings.xml @@ -275,7 +275,7 @@ Status: Ruhend OK - Medium + Mittel Hoch Gefahr Renn! From 90b1abfc92f10e828931670c18a83b6d49e60651 Mon Sep 17 00:00:00 2001 From: naofum Date: Mon, 28 Dec 2015 09:38:43 +0100 Subject: [PATCH 13/80] Translated using Weblate (Japanese) Currently translated at 100.0% (298 of 298 strings) --- AIMSICD/src/main/res/values-ja/translatable_strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AIMSICD/src/main/res/values-ja/translatable_strings.xml b/AIMSICD/src/main/res/values-ja/translatable_strings.xml index b26796ea1..43284618f 100644 --- a/AIMSICD/src/main/res/values-ja/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-ja/translatable_strings.xml @@ -330,7 +330,7 @@ アイドル 標準 - アラーム + 危険 ビルド番号: %s Git SHA ハッシュ: %s From cb1443ea897b334bb293c07250f6a06ae7e77116 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Fri, 8 Jan 2016 14:14:53 +0100 Subject: [PATCH 14/80] prefix activity layouts with 'activity_' --- .../java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java | 2 +- .../SecUpwN/AIMSICD/drawer/DrawerMenuActivityConfiguration.java | 2 +- AIMSICD/src/main/res/layout/{main.xml => activity_main.xml} | 0 .../src/main/res/layout/{map.xml => activity_map_viewer.xml} | 0 4 files changed, 2 insertions(+), 2 deletions(-) rename AIMSICD/src/main/res/layout/{main.xml => activity_main.xml} (100%) rename AIMSICD/src/main/res/layout/{map.xml => activity_map_viewer.xml} (100%) diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java index ab4555e6a..1d8c44b43 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java @@ -83,7 +83,7 @@ * https://github.com/osmdroid/osmdroid/issues/81 * https://code.google.com/p/osmbonuspack/issues/detail?id=102 */ -@XmlLayout(R.layout.map) +@XmlLayout(R.layout.activity_map_viewer) @XmlMenu(R.menu.map_viewer_menu) public final class MapViewerOsmDroid extends BaseActivity implements OnSharedPreferenceChangeListener { diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/drawer/DrawerMenuActivityConfiguration.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/drawer/DrawerMenuActivityConfiguration.java index d4e5ee868..5ac35a99a 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/drawer/DrawerMenuActivityConfiguration.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/drawer/DrawerMenuActivityConfiguration.java @@ -133,7 +133,7 @@ public DrawerMenuActivityConfiguration build() { mNavItems = menu; if (mMainLayout == 0) { - this.mainLayout(R.layout.main); + this.mainLayout(R.layout.activity_main); } if (mDrawerLayoutId == 0) { diff --git a/AIMSICD/src/main/res/layout/main.xml b/AIMSICD/src/main/res/layout/activity_main.xml similarity index 100% rename from AIMSICD/src/main/res/layout/main.xml rename to AIMSICD/src/main/res/layout/activity_main.xml diff --git a/AIMSICD/src/main/res/layout/map.xml b/AIMSICD/src/main/res/layout/activity_map_viewer.xml similarity index 100% rename from AIMSICD/src/main/res/layout/map.xml rename to AIMSICD/src/main/res/layout/activity_map_viewer.xml From 3e45b8a6a1ce75cf06a550aca91b069031e17a40 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Fri, 8 Jan 2016 14:17:11 +0100 Subject: [PATCH 15/80] prefix fragment layouts with 'fragment_' --- .../java/com/SecUpwN/AIMSICD/fragments/CellInfoFragment.java | 2 +- .../java/com/SecUpwN/AIMSICD/fragments/DbViewerFragment.java | 2 +- .../main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java | 2 +- .../res/layout/{cell_fragment.xml => fragment_cell_info.xml} | 0 .../src/main/res/layout/{db_view.xml => fragment_db_viewer.xml} | 0 AIMSICD/src/main/res/layout/{device.xml => fragment_device.xml} | 0 6 files changed, 3 insertions(+), 3 deletions(-) rename AIMSICD/src/main/res/layout/{cell_fragment.xml => fragment_cell_info.xml} (100%) rename AIMSICD/src/main/res/layout/{db_view.xml => fragment_db_viewer.xml} (100%) rename AIMSICD/src/main/res/layout/{device.xml => fragment_device.xml} (100%) diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/CellInfoFragment.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/CellInfoFragment.java index f1df0ce17..1caee6d5b 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/CellInfoFragment.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/CellInfoFragment.java @@ -70,7 +70,7 @@ * TODO: 2) Might wanna make the refresh rate lower/higher depending on support * */ -@XmlLayout(R.layout.cell_fragment) +@XmlLayout(R.layout.fragment_cell_info) public class CellInfoFragment extends InjectionFragment { public static final int STOCK_REQUEST = 1; diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DbViewerFragment.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DbViewerFragment.java index 3aa5328fa..8a5fceb1c 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DbViewerFragment.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DbViewerFragment.java @@ -45,7 +45,7 @@ *

* Notes: See issue #234 for details on how to format the UI */ -@XmlLayout(R.layout.db_view) +@XmlLayout(R.layout.fragment_db_viewer) public final class DbViewerFragment extends InjectionFragment { private AIMSICDDbAdapter mDb; diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java index dd2e95d4d..67c3a3ec6 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java @@ -30,7 +30,7 @@ import io.freefair.android.injection.app.InjectionFragment; import io.freefair.android.util.logging.Logger; -@XmlLayout(R.layout.device) +@XmlLayout(R.layout.fragment_device) public class DeviceFragment extends InjectionFragment { @Inject diff --git a/AIMSICD/src/main/res/layout/cell_fragment.xml b/AIMSICD/src/main/res/layout/fragment_cell_info.xml similarity index 100% rename from AIMSICD/src/main/res/layout/cell_fragment.xml rename to AIMSICD/src/main/res/layout/fragment_cell_info.xml diff --git a/AIMSICD/src/main/res/layout/db_view.xml b/AIMSICD/src/main/res/layout/fragment_db_viewer.xml similarity index 100% rename from AIMSICD/src/main/res/layout/db_view.xml rename to AIMSICD/src/main/res/layout/fragment_db_viewer.xml diff --git a/AIMSICD/src/main/res/layout/device.xml b/AIMSICD/src/main/res/layout/fragment_device.xml similarity index 100% rename from AIMSICD/src/main/res/layout/device.xml rename to AIMSICD/src/main/res/layout/fragment_device.xml From f5da1787fc396ff195e3ee764283de6bacadba49 Mon Sep 17 00:00:00 2001 From: Lars Grefer Date: Fri, 8 Jan 2016 14:21:11 +0100 Subject: [PATCH 16/80] prefix activity menus with 'activity_' --- .../java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java | 2 +- .../res/menu/{map_viewer_menu.xml => activity_map_viewer.xml} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename AIMSICD/src/main/res/menu/{map_viewer_menu.xml => activity_map_viewer.xml} (100%) diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java index 1d8c44b43..e37e58674 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/activities/MapViewerOsmDroid.java @@ -84,7 +84,7 @@ * https://code.google.com/p/osmbonuspack/issues/detail?id=102 */ @XmlLayout(R.layout.activity_map_viewer) -@XmlMenu(R.menu.map_viewer_menu) +@XmlMenu(R.menu.activity_map_viewer) public final class MapViewerOsmDroid extends BaseActivity implements OnSharedPreferenceChangeListener { @Inject diff --git a/AIMSICD/src/main/res/menu/map_viewer_menu.xml b/AIMSICD/src/main/res/menu/activity_map_viewer.xml similarity index 100% rename from AIMSICD/src/main/res/menu/map_viewer_menu.xml rename to AIMSICD/src/main/res/menu/activity_map_viewer.xml From 2522766c217978ea5671101d22fd2c19f8b6c76b Mon Sep 17 00:00:00 2001 From: johanw666 Date: Sat, 9 Jan 2016 00:47:01 +0100 Subject: [PATCH 17/80] Translated using Weblate (Dutch) Currently translated at 100.0% (298 of 298 strings) --- AIMSICD/src/main/res/values-nl/translatable_strings.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/AIMSICD/src/main/res/values-nl/translatable_strings.xml b/AIMSICD/src/main/res/values-nl/translatable_strings.xml index b9790ddd3..981fc25c5 100644 --- a/AIMSICD/src/main/res/values-nl/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-nl/translatable_strings.xml @@ -316,7 +316,7 @@ OK Gemiddeld - Danger + Gevaar Verwijderd Fout bij het verwijderen @@ -328,4 +328,8 @@ String aan database toevoegen is mislukt Instellingen voor meldingen + Build nummer: %s + Git SHA-Hash: %s + Trillen als notificatie verandert + "\" dubbele quote veroorzaakt een db fout " From d552c4b3a676f7122cfac0e0ac2d0e11a7fe6ec2 Mon Sep 17 00:00:00 2001 From: Nordlenningen Date: Wed, 6 Jan 2016 18:33:16 +0100 Subject: [PATCH 18/80] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?= =?UTF-8?q?=20Bokm=C3=A5l)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 100.0% (298 of 298 strings) --- .../src/main/res/values-nb/translatable_strings.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/AIMSICD/src/main/res/values-nb/translatable_strings.xml b/AIMSICD/src/main/res/values-nb/translatable_strings.xml index 04ad44dcf..37cb6c218 100644 --- a/AIMSICD/src/main/res/values-nb/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-nb/translatable_strings.xml @@ -22,7 +22,7 @@ Alle gjeldende celledetaljer Feilsøking Ingen Internett-forbindelse - Klarte ikke laste ned OpenCellID-data uten Internettilkobling, vær så snill å slå på datatilkobling! + Klarte ikke laste ned OpenCellID-data uten Internettilkobling, vennligst slå på datatilkobling! Last med BTS-data @@ -41,8 +41,8 @@ Telefontype: IMEI: Radio Version: - Tilbydernavn: - Tilbyderkode: + Operatørnavn: + Operatørkode: Type: LAC: CID: @@ -264,7 +264,7 @@ Slett Oppdaget SMS Slå på SMS Oppdagelse - Root er påkrevet for å aktivere på SMS oppdagelse + Root er påkrevet for å aktivere SMS oppdagelse Oppdagelses Strenger VIKTIG! @@ -331,5 +331,5 @@ Setningen ble lagt til i databasen Fikk ikke lagt til setningen i databasen - Samle og send feil logger. + Samle og send feilmeldingslogger. From c5092bf56e12eb29625a1f28602f869fce1a1835 Mon Sep 17 00:00:00 2001 From: Olexandr Nesterenko Date: Fri, 8 Jan 2016 10:20:41 +0100 Subject: [PATCH 19/80] Translated using Weblate (Ukrainian) Currently translated at 97.9% (292 of 298 strings) --- .../res/values-uk/translatable_strings.xml | 112 ++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/AIMSICD/src/main/res/values-uk/translatable_strings.xml b/AIMSICD/src/main/res/values-uk/translatable_strings.xml index db492f58e..7e3a01a4f 100644 --- a/AIMSICD/src/main/res/values-uk/translatable_strings.xml +++ b/AIMSICD/src/main/res/values-uk/translatable_strings.xml @@ -213,4 +213,116 @@ Серійний номер: Небезпечна зона: Принаймні одна нова, або незнайома БС у зоні обслуговування, або використовується небезпечний (скомпрометований) алгоритм шифрування, нижчий за A5/3 [Detection is WIP]. Чекайте, що усі дзвінки та СМС, зроблені у цій зоні можуть бути перехоплені та зареєстровані. Вам краще залишите це місце. Виявлені ворожі дії: IMSI-перехоплювач (IMSIC) або підробна БС (FBTS) відстежують користувачів. В цій зоні відбувається активне сканування. Ви повинні залишити це місце, особливо, якщо є якась політична нестабільність. Зніміть батарею, або взагалі позбавтеся телефону! + Номер збірки: %s + Git SHA-хеш: %s + Ворожі маніпуляції: Хтось намагається віддалено керувати авшим телефоном! Знищте (чи продайте) свій телефон та візьміть новий як подалі від цього місця (не носіть свій старий телефон із собою)! Використовуєте нову (анонімну) SIM-картку, змініть свій стиль викликів та попередьте своїх друзів наживу, НЕ дзвонячи їм! + Вібрація при досягненні рівня + Виберіть мінімальний рівень, при досягненні якого увімкнеться вібрація + Очікування + Гаразд + Середній + Небезпечний + + Плоский + Відчуття + Статус: Очікування. + ПОПЕРЕДЖЕННЯ: Виявлені деякі загрози! + ПОПЕРЕДЖЕННЯ: Виявлено з\'єднання з фемтоточкою! + ПОПЕРЕДЖЕННЯ: Виявлено безшумну SMS! + ПОПЕРЕДЖЕННЯ: Виявлено WAP push SMS! + AIMSICD може виявляти підключення до фемтоточок лише на CDMA пристроях. + ПОПЕРЕДЖЕННЯ: Виявлено моніторинг фемтоточки! + Відсутні доступні дані для публікації. + Дані BTS для OpenCellID вдало вивантажено. + Трапилась помилка під час вивантаження BTS даних на сервера OpenCellID! + Відновлення вдало завершено. + Відновлення бази даних успішно завершено. + Не виявлено ключа до OpenCellID API!\nБудь ласка, спершу введіть ваш ключ в налаштуваннях. + Оновлення дисплею + Не вдалося отримати root-права на вашому пристрої.\nВони потрібні для ін\'єкцій AT-команд до терміналу.\nБудь ласка, надайте root-права додатку, та спробуйте ще раз. + "Не виявлено Busybox на вашому пристрої.\nДля правильної роботи ін\'єкції AT-команд потрібні компоненти Busybox.\nБудь ласка, перевірте, чи встановлений Busybox на вашому пристрої та спробуйте ще раз." + Трапилась невідома помилка під час доступу до послідовного пристрою.\nБудь ласка, перевірте вивід logcat на наявність помилок, та відзвітуйте їх на нашу сторінку на Github. + Трапилась невідома помилка під час ініціалізації ін\'єкцій AT-команд.\nБудь ласка, перевірте вивід logcat на наявність помилок, та відзвітуйте їх на нашу сторінку на Github. + Отримання ключа OpenCellID API… + Не можливо створити карту! + УВАГА! Будь ласка, опишіть проблему, яка трапилась у вас, перед відправкою цих звітів. НЕ УДАСТЬСЯ НАДАТИ ДОПОМОГУ БЕЗ ДЕТАЛЬНОГО ОПИСУ!\n + Очікування + Гаразд + Середній + Високий + Небезпечний + Біжи! + + Видалити виявлену SMS + + Розширені налаштування + Рядки виявлення + Видалити SMS + Вставити чи видалити рядки виявлення + Видалити виявлену SMS + + Увімкнути виявлення SMS + Аби увімкнути виявлення потрібні root права + + Рядки виявлення + УВАГА! + Виявлено безшумну SMS + Виявлено повідомлення Type-0!\nПодробиці: Дивіться в переглядачі бази даних. + УВАГА! + Виявлено MWI + Виявлено індикатор очікування повідомлення (MWI)!\nПодробиці: Дивіться в переглядачі бази даних. + Виявлено WAP Push + Виявлено WAP Push SMS повідомлення!\nПодробиці: Дивіться в переглядачі бази даних. + + + Резервна копія бази даних на SD-картку. + Відновити резервну копію бази даних з SD-картки. + Очистити чи скинути всі чи деякі таблиці бази даних. + Експортувати базу даних до CSV файлу. + Імпортувати базу даних з CSV файлів. + + Отримати ключ API для використання бази даних OpenCellID, можливості завантажувати та вивантажувати дані… + Піктограми стану та пояснення проекту. + Завантажити базу даних OpenCellID. + Вивантажити ваші дані BTS до бази даних OpenCellID. + Зібрати та відправити звіти з помилками. + Закрити цей додаток. + Неможливо відновити базу даних з резервної копії попередньої версії через значні структурні зміни! + Унікальні дані BTS + Вимірювання BTS + Імпортовані OpenCellID дані + Типове MCC розташування + Безшумна SMS + Звіт подій + Виміряна сила сигналу + + "Знайдено: " + Поточні під\'єднані BTS + Знайомі шифровані базові станції (BTS) + Не відомі чи небезпечні базові станції (BTS) + Нові чи нещодавно додані базові станції (BTS) + + Базу даних видалено та успішно створено заново.\nБудь ласка, перезавантажте додаток, аби очистити старі значення з пам\'яті. + + Не правильний ключ OpenCellID, спробуйте ще раз. + "Рядок не додано\n \" подвійна лапка призведе до помилки в базі даних " + Рядок додано до бази даних + Не вдалося додати рядок до бази даних + + ПОПЕРЕДЖЕННЯ: Виявлено індикатор очікування повідомлення! + Не знайдено позицій відстежування аби показати їх на карті. + Це меню лише для досвідчених користувачів!\nДля видалення виявленого SMS в переліку використовуйте довге утримання на ньому. + Подробиці по постачальника мережі SIM, IMEI, TMSI. + Показати детальне порівняння поточного під\'єднаного стільника із знайденими даними з OpenCellID (якщо такі є) та підсвітити різницю. + Почати/зупинити виявлення атак та збирання подробиць стільників до внутрішньої бази даних. + Почати відслідковувати стільники для показу на карті антен і можливого подальшого вивантаження даних до OpenCellID. + + Очікування позиції … + *** Пошук послідовних AT пристроїв…\n + *** Налаштування завершено ***\n + + Подяки + Виявлено вороже відслідковування: FBTS чи IMSIC активно відслідковують вас та запобігають підключенню до звичайної зашифрованої мережі. Якщо ви знаходитесь в небезпеці, зламайте та викиньте ваш телефон+SIM, та повідомте, що ваш телефон нещодавно було викрадено. + Це меню лише для досвідчених користувачів!\n\nБудь ласка, не вставляйте аби що в рядок, оскільки це може зіпсувати систему виявлення.\n\nАби додати рядок, оберіть тип SMS із спадаючого меню, введіт рядок виявлення та натисніть «вставити».\n\nАби видалити запис, використовуйте довге утримання на необхідному елементі. + From 0eaaa9f740a473e0bc576c01c3cdd2a8db55a881 Mon Sep 17 00:00:00 2001 From: jens stein Date: Sat, 9 Jan 2016 22:05:40 +0100 Subject: [PATCH 20/80] Correct SIM serial and IMSI information --- .../java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java index 67c3a3ec6..5f69302dc 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/DeviceFragment.java @@ -172,7 +172,8 @@ private void updateUI() { content = (HighlightTextView) getView().findViewById(R.id.sim_operator_name); content.updateText(mDevice.getSimOperatorName(), ani); content = (HighlightTextView) getView().findViewById(R.id.sim_imsi); -// content.updateText(mDevice.getSimSubs(), ani); + content.updateText(mDevice.getSimSubs(), ani); + content = (HighlightTextView) getView().findViewById(R.id.sim_serial); content.updateText(mDevice.getSimSerial(), ani); content = (HighlightTextView) getView().findViewById(R.id.device_type); From 2a40ddf396ef638acd47a795c4e1d42242ad6f08 Mon Sep 17 00:00:00 2001 From: Nnabueze Date: Sat, 9 Jan 2016 22:33:51 +0100 Subject: [PATCH 21/80] added gps switchPreference to settings --- .../main/java/com/SecUpwN/AIMSICD/fragments/PrefFragment.java | 3 ++- AIMSICD/src/main/res/values/translatable_strings.xml | 2 ++ AIMSICD/src/main/res/values/untranslatable_strings.xml | 1 + AIMSICD/src/main/res/xml/preferences.xml | 4 ++++ 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/PrefFragment.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/PrefFragment.java index 872b05054..fa587ca4b 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/PrefFragment.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/fragments/PrefFragment.java @@ -16,6 +16,7 @@ public class PrefFragment extends PreferenceFragment { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); - } + + } } \ No newline at end of file diff --git a/AIMSICD/src/main/res/values/translatable_strings.xml b/AIMSICD/src/main/res/values/translatable_strings.xml index 65403917d..98b30cc02 100644 --- a/AIMSICD/src/main/res/values/translatable_strings.xml +++ b/AIMSICD/src/main/res/values/translatable_strings.xml @@ -105,6 +105,8 @@ You cannot track GPS data without enabling Location Services. Enable them now? + GPS setting + Enable GPS for cell tracking System Settings Auto Start Automatically start service on boot diff --git a/AIMSICD/src/main/res/values/untranslatable_strings.xml b/AIMSICD/src/main/res/values/untranslatable_strings.xml index 10a5f8e9b..033bb51db 100644 --- a/AIMSICD/src/main/res/values/untranslatable_strings.xml +++ b/AIMSICD/src/main/res/values/untranslatable_strings.xml @@ -17,6 +17,7 @@ https://github.com/SecUpwN/Android-IMSI-Catcher-Detector/blob/HEAD/LICENSE http://opencellid.org/gsmCell/user/generateApiKey + pref_enable_gps_key pref_enable_cell_monitoring pref_enable_cell_key pref_refresh_key diff --git a/AIMSICD/src/main/res/xml/preferences.xml b/AIMSICD/src/main/res/xml/preferences.xml index 65ff9bc8e..e5a98a688 100644 --- a/AIMSICD/src/main/res/xml/preferences.xml +++ b/AIMSICD/src/main/res/xml/preferences.xml @@ -16,6 +16,10 @@ android:key="@string/pref_persistservice_key" android:summary="@string/pref_persistservice_summ" android:title="@string/pref_persistservice_title"/> + Date: Sat, 9 Jan 2016 22:39:19 +0100 Subject: [PATCH 22/80] fixed issue #251. dialog shows only on first launch --- .../AIMSICD/service/AimsicdService.java | 82 +++++++++++++++++-- 1 file changed, 75 insertions(+), 7 deletions(-) diff --git a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/service/AimsicdService.java b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/service/AimsicdService.java index c98cfa310..40a7dfcf5 100644 --- a/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/service/AimsicdService.java +++ b/AIMSICD/src/main/java/com/SecUpwN/AIMSICD/service/AimsicdService.java @@ -26,6 +26,7 @@ import android.content.DialogInterface; import android.content.Intent; +import android.content.SharedPreferences; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; @@ -33,8 +34,14 @@ import android.os.Bundle; import android.os.Handler; import android.os.IBinder; +import android.preference.PreferenceManager; import android.support.v7.app.AlertDialog; +import android.view.LayoutInflater; +import android.view.View; import android.view.WindowManager; +import android.widget.Button; +import android.widget.CheckBox; +import android.widget.CompoundButton; import com.SecUpwN.AIMSICD.R; import com.SecUpwN.AIMSICD.rilexecutor.RilExecutor; @@ -52,6 +59,10 @@ */ public class AimsicdService extends InjectionService { + public static boolean isGPSchoiceChecked; + public static final String GPS_REMEMBER_CHOICE="remember choice"; + SharedPreferences gpsPreferences; + @Inject private Logger log; @@ -91,6 +102,7 @@ public void onCreate() { super.onCreate(); setTheme(R.style.AppTheme); + signalStrengthTracker = new SignalStrengthTracker(getBaseContext()); mAccelerometerMonitor = new AccelerometerMonitor(this, new Runnable() { @@ -128,7 +140,10 @@ public void run() { @Override public int onStartCommand(Intent intent, int flags, int startId) { + gpsPreferences=PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); + isGPSchoiceChecked=gpsPreferences.getBoolean(GPS_REMEMBER_CHOICE,false); return START_STICKY; + } @Override @@ -239,7 +254,7 @@ public void setCellTracking(boolean track) { } public void checkLocationServices() { - if (mCellTracker.isTrackingCell() && !mLocationTracker.isGPSOn()) { + if (mCellTracker.isTrackingCell() && !mLocationTracker.isGPSOn() &&!isGPSchoiceChecked) { enableLocationServices(); } } @@ -247,11 +262,18 @@ public void checkLocationServices() { private void enableLocationServices() { if (isLocationRequestShowing) return; // only show dialog once - AlertDialog alertDialog = new AlertDialog.Builder(this) - .setMessage(R.string.location_error_message) - .setTitle(R.string.location_error_title) + LayoutInflater dialogInflater=(LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE); + View dialogView=dialogInflater.inflate(R.layout.layout_request_gps,null,false); + CheckBox rememberChoice=(CheckBox)dialogView.findViewById(R.id.check_choice); + Button notNow=(Button)dialogView.findViewById(R.id.not_now_button); + Button enableGPS=(Button)dialogView.findViewById(R.id.enable_gps_button); + + final AlertDialog alertDialog = new AlertDialog.Builder(this) + /*.setMessage(R.string.location_error_message) + .setTitle(R.string.location_error_title)*/ + .setView(dialogView) .setCancelable(false) - .setPositiveButton(R.string.text_ok, new DialogInterface.OnClickListener() { + /*.setPositiveButton(R.string.text_ok, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { isLocationRequestShowing = false; Intent gpsSettings = new Intent( @@ -265,8 +287,53 @@ public void onClick(DialogInterface dialog, int which) { isLocationRequestShowing = false; setCellTracking(false); } - }) + })*/ .create(); + + rememberChoice.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + + if (isChecked) + { + isGPSchoiceChecked=true; + gpsPreferences= PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); + SharedPreferences.Editor editor=gpsPreferences.edit(); + editor.putBoolean(GPS_REMEMBER_CHOICE,isGPSchoiceChecked); + editor.apply(); + + } + else { + isGPSchoiceChecked=false; + } + } + }); + + notNow.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + isLocationRequestShowing = false; + setCellTracking(false); + alertDialog.cancel(); + alertDialog.dismiss(); + } + }); + + enableGPS.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + isLocationRequestShowing = false; + Intent gpsSettings = new Intent( + android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS); + gpsSettings.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + alertDialog.cancel(); + alertDialog.dismiss(); + startActivity(gpsSettings); + } + }); + alertDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); alertDialog.show(); isLocationRequestShowing = true; @@ -281,7 +348,8 @@ public void onLocationChanged(Location loc) { @Override public void onProviderDisabled(String provider) { - if (mCellTracker.isTrackingCell() && provider.equals(LocationManager.GPS_PROVIDER)) { + if (mCellTracker.isTrackingCell() && provider.equals(LocationManager.GPS_PROVIDER) && + !isGPSchoiceChecked) { enableLocationServices(); } } From 87e2a071f23b5d2cd50d6bad5a97de15818f800f Mon Sep 17 00:00:00 2001 From: Nnabueze Date: Sat, 9 Jan 2016 22:56:42 +0100 Subject: [PATCH 23/80] fixed issue #251. dialog shows only on first launch --- .../main/res/layout/layout_request_gps.xml | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 AIMSICD/src/main/res/layout/layout_request_gps.xml diff --git a/AIMSICD/src/main/res/layout/layout_request_gps.xml b/AIMSICD/src/main/res/layout/layout_request_gps.xml new file mode 100644 index 000000000..d2ae6777e --- /dev/null +++ b/AIMSICD/src/main/res/layout/layout_request_gps.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + +