FORUMS

[SCRIPT] Disable Tracking Services, version 1.6

256 posts
Thanks Meter: 81
 
By steveglowplunk, Senior Member on 14th May 2020, 05:48 PM
Post Reply Email Thread
21st May 2020, 06:25 AM |#11  
phantom146's Avatar
Senior Member
Flag Malabon
Thanks Meter: 1,130
 
Donate to Me
More
After executing everything perfectly, I ran to a weird instance where everytime it scans an app, a command sqlite3: inaccessible or not found was shown. I was wondering if this shows because I performed disable f*ck services script first then this script? are they supposed to do the same? does that mean the apps I'm scanning right now already have their services/receivers disabled thats why disabletracking.sh can't detect them? thank you!
21st May 2020, 07:11 AM |#12  
OP Senior Member
Thanks Meter: 81
 
More
Quote:
Originally Posted by phantom146

After executing everything perfectly, I ran to a weird instance where everytime it scans an app, a command sqlite3: inaccessible or not found was shown. I was wondering if this shows because I performed disable f*ck services script first then this script? are they supposed to do the same? does that mean the apps I'm scanning right now already have their services/receivers disabled thats why disabletracking.sh can't detect them? thank you!

That means sqlite3 is not installed (I thought it's supposed to be included in Android?). Verify it by running 'type sqlite3' in the terminal.
Maybe you can try downloading sqlite (without the 3) from Termux with the 'pkg install' command, then copy the downloaded binaries to /sbin (similar to what you'd do with jq). Or you can use version 1.4 for now.
sqlite3 is used for writing a database that stores processed apps names and versions, so that they will be skipped in the next run. The script will still disable tracking components that haven't been disabled already.
21st May 2020, 08:32 AM |#13  
phantom146's Avatar
Senior Member
Flag Malabon
Thanks Meter: 1,130
 
Donate to Me
More
Quote:
Originally Posted by steveglowplunk

That means sqlite3 is not installed (I thought it's supposed to be included in Android?). Verify it by running 'type sqlite3' in the terminal.
Maybe you can try downloading sqlite (without the 3) from Termux with the 'pkg install' command, then copy the downloaded binaries to /sbin (similar to what you'd do with jq). Or you can use version 1.4 for now.
sqlite3 is used for writing a database that stores processed apps names and versions, so that they will be skipped in the next run. The script will still disable tracking components that haven't been disabled already.

This worked well. Thank you.

Do you plan on implementing something for sqlite, jq and aapt to stick on sbin for the next update?

Also, some of the apps I'm scanning shows:

Exception occured while executing:
java.lang.illegalArgumentException: component class bugsnag.com etc. Etc. Does not exist in bla bla app.

I assume exodus detected that a certain app has trackers and tries to disable it but since I used disablefohkservice script before this, I guess it was already disabled and disabletracking.sh can't find it now?
22nd May 2020, 02:52 PM |#14  
OP Senior Member
Thanks Meter: 81
 
More
Quote:
Originally Posted by phantom146

This worked well. Thank you.

Do you plan on implementing something for sqlite, jq and aapt to stick on sbin for the next update?

Also, some of the apps I'm scanning shows:

Exception occured while executing:
java.lang.illegalArgumentException: component class bugsnag.com etc. Etc. Does not exist in bla bla app.

I assume exodus detected that a certain app has trackers and tries to disable it but since I used disablefohkservice script before this, I guess it was already disabled and disabletracking.sh can't find it now?

The error you mentioned is normal. That component cannot be toggled.
Also, please try running the script attached in Termux as a normal user (root permission will be required half-way through the script) by running 'bash /path/to/script/InstallReq.sh' . It will check if aapt, jq, curl or sqlite3 are missing and automatically download them, then copy them to /system/xbin. (binaries there should retain across reboots). You are recommended to backup at least your system partition in a recovery. Although tested on my own phone and it shouldn't overwrite anything important in /system, I'm not responsible for any damage caused.

Edit: small change to the script to avoid problems with checking curl
Attached Files
File Type: txt InstallReq.sh.txt - [Click for QR Code] (1,004 Bytes, 14 views)
24th May 2020, 09:13 AM |#15  
OP Senior Member
Thanks Meter: 81
 
More
Updated script to version 1.6. Check update log for details.
The Following User Says Thank You to steveglowplunk For This Useful Post: [ View ] Gift steveglowplunk Ad-Free
24th May 2020, 10:10 AM |#16  
Senior Member
Thanks Meter: 307
 
More
Quote:
Originally Posted by phantom146


Also, some of the apps I'm scanning shows:

Exception occured while executing:
java.lang.illegalArgumentException: component class bugsnag.com etc. Etc. Does not exist in bla bla app.

I just added a 2> /dev/null to the disable line so I don't see it ...

---------- Post added at 10:10 AM ---------- Previous post was at 10:09 AM ----------

Quote:
Originally Posted by steveglowplunk

Updated script to version 1.6. Check update log for details.

Great, will try it ...
25th May 2020, 10:29 AM |#17  
Senior Member
Thanks Meter: 307
 
More
All good , I just added code to delete old app versions from processed db, and to recreate DBFullList variable again after the sqlite changes.
25th May 2020, 10:58 AM |#18  
OP Senior Member
Thanks Meter: 81
 
More
Quote:
Originally Posted by hyborian

All good , I just added code to delete old app versions from processed db, and to recreate DBFullList variable again after the sqlite changes.

Um... That doesn't sound necessary?
The version field in the database is updated after processing an updated app. There shouldn't be old app versions left behind?
Also, DBFullList doesn't need to be updated after processing an app. If an app's name doesn't exist in DBFullList, then it must be a new app. If it exists in DBFullList and was processed, then it must be an updated app. Not updating the DBFullList variable after processing each apps shouldn't affect the functions.
25th May 2020, 03:29 PM |#19  
Senior Member
Thanks Meter: 307
 
More
Quote:
Originally Posted by steveglowplunk

Um... That doesn't sound necessary?
The version field in the database is updated after processing an updated app. There shouldn't be old app versions left behind?
Also, DBFullList doesn't need to be updated after processing an app. If an app's name doesn't exist in DBFullList, then it must be a new app. If it exists in DBFullList and was processed, then it must be an updated app. Not updating the DBFullList variable after processing each apps shouldn't affect the functions.

Lol, you are right, I was looking at my old processed db which had apps with different versions. I should just have erased it and started fresh.

Anyway, it was nice practice for me. learned something while doing it when I couldn't grep the darn version number of Google Play Store (Version: 20.2.09-all [0] [PR] 311811225 (82020900) in DBFullList. I finally realized it had metacharacters [ ] so changed the grep from -qx to -qFx, and all ok now; otherwise, it will get processed again even if it was already done.

Thanks for the script, really great, beats manually doing it using MyAndroidPro or Blocker.
25th May 2020, 03:52 PM |#20  
OP Senior Member
Thanks Meter: 81
 
More
Quote:
Originally Posted by hyborian

Lol, you are right, I was looking at my old processed db which had apps with different versions. I should just have erased it and started fresh.

Anyway, it was nice practice for me. learned something while doing it when I couldn't grep the darn version number of Google Play Store (Version: 20.2.09-all [0] [PR] 311811225 (82020900) in DBFullList. I finally realized it had metacharacters [ ] so changed the grep from -qx to -qFx, and all ok now; otherwise, it will get processed again even if it was already done.

Thanks for the script, really great, beats manually doing it using MyAndroidPro or Blocker.

Ah I see. I'll add that -F option in the next update.
29th May 2020, 04:25 PM |#21  
Member
Thanks Meter: 0
 
More
Quote:
Originally Posted by hyborian

Lol, you are right, I was looking at my old processed db which had apps with different versions. I should just have erased it and started fresh.

Anyway, it was nice practice for me. learned something while doing it when I couldn't grep the darn version number of Google Play Store (Version: 20.2.09-all [0] [PR] 311811225 (82020900) in DBFullList. I finally realized it had metacharacters [ ] so changed the grep from -qx to -qFx, and all ok now; otherwise, it will get processed again even if it was already done.

Thanks for the script, really great, beats manually doing it using MyAndroidPro or Blocker.

Quote:
Originally Posted by steveglowplunk

Ah I see. I'll add that -F option in the next update.

@steveglowplunk
@hyborian

This collaboration is really admired and appreciated, thanks!
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes