[APP] Waze Without Ads or POI Balloons or Popup Ads

Search This thread

CaptShaft

Senior Member
Hello there folks! If you are like many of us, you enjoy using Waze to get around but in the last several versions you may have taken a active dislike to distracting and potentially dangerous advertising popping up while you are on the road. These advertisements come in two forms, one of which is so-called "Points of Interest" [POI] balloons and the other is pop-up advertising when you are stopped at an intersection.

I'm very sorry, but I don't need to see distracting pop-ups in traffic for the local movie, as this is an excellent way to end up having an accident due to how modern human brains have been wired to stare constantly at electronic screens. Plus the POI's obstruct other navigation icons or notifications of traffic on the screen. (My body will thank me if I don't stop by Dunkin' Donuts or the local fried chicken restaurant.)

The overall solution is you will download an older version of Waze, and overwrite the preferences file with a modified file that cuts out the advertising. You will need root level access in order to do this.

Since we are not modifying the program itself, and since the program is given away for free (in exchange for all that sweet, sweet "big data"), this is not what would be classified as "warez".

Most advertising from Waze is served from advil.waze.com or some localized equivalent thereof, depending on your language. We replace callouts in the preferences file to advil.waze.com instead with http://127.0.0.1 which causes the android computer to connect to nothing. We also set the number of POI balloons on the screen to zero.

attachment.php


Instructions are as follows:

0. If you have Waze already installed, your first step is to roll over to /data/data/com.waze/ and delete the entire folder. Then uninstall your existing copy of Waze.
1. Next download and install the attached version of Waze 3.9.6.0.

com.waze_3.9.6.0.zip 34.8 MB
https://mega.nz/#!VRcFmBSA!Ztlwd8tuQm_KNickcnlrr3kZ47edtmfnUEuWWbMMyTk

(No, it is not the most current version but this is what we do to block ads, and it works well enough.)
2. Open this version of Waze on your android device just to get it going. Close out after you get to the navigation screen.
3. Save the attached preferences zip onto your local disk, then decompress it there.
4. Take this preferences file, copy it onto your android device.
5. Navigate over to /data/data/com.waze/ and overwrite the preferences file you find there with our modified one.
6. Enjoy a pleasant, relaxing, ad-free drive.

This works excellently for older RK3188 CPU android head units.

(Alternately, if you discover this modified preferences file causes problems on your phone or hardware, you should uninstall, reinstall, and manually replace any preferences callout to "advil.waze.com" with http://127.0.0.1 then set any references in that file about "POI" to zero.)

As a general note, any rooted android device you have should have ad blocking enabled, which can be done by installing AdAway through FDroid. https://f-droid.org/ downside is most of these advertising filters are not quite well tuned to block advertisements in Waze.

So we get around this by adding advil.waze.com to the blacklist option in AdAway.

attachment.php


Works well even in later versions of Waze, even if you can't block out POI balloons with this approach.
Happy Motoring!

Any thoughts or questions?
 

Attachments

  • Block_waze_ads.png
    Block_waze_ads.png
    75.6 KB · Views: 5,966
  • preferences__waze.zip
    7.9 KB · Views: 646
  • WazePrefs.jpg
    WazePrefs.jpg
    249.2 KB · Views: 6,158
Last edited:

oreo27

Senior Member
Sep 24, 2012
649
142
Thanks! I applied the same to the latest version as of this post. I'll let you know how it goes. I also found the following and changed them, hopefully correctly.

Code:
ExternalPOI.Popup Enabled: no
ExternalPOI.My Coupons URL: https://127.0.0.2
ExternalPOI.Max POIs Display Small Screen: 0
 

skanadian

Senior Member
Feb 3, 2009
160
61
Ontario
@oreo27
Latest versions of Waze will overwrite preferences file on startup.
If you own the file by root, 1. that will get reset by android on bootup, and 2. waze creates an alternate file anyway.
We can solve this by owning preferences as root, and /data/data/com.waze as root after reboot.
If you're running magisk, you can create a script in /magisk/.core/post-fs-data.d/99waze with these contents; (remember to chmod 755 your script)

Code:
#!/system/bin/sh
sleep 30
chown root:root /data/data/com.waze
chown root:root /data/data/com.waze/preferences
chmod 755 /data/data/com.waze
chmod 644 /data/data/com.waze/preferences

After doing this, some of your other preferences won't save between launches, so I suggest you set waze up the way you like it before you apply this.

Unfortunately waze does not honour "Max POIs Display", "Coupons", "Ad Images" and "External POI URL*" in preferences.

It does honour these which gets rid of popups at stoplights;
ExternalPOI.My Coupons Enabled: no
ExternalPOI.Feature Enabled: no
ExternalPOI.Popup Enabled: no


You can still adblock advil.waze.com and adsassets.waze.com to get rid of POIs, however this results in waze constantly "searching for network". I suggest redirecting them to a valid https webserver instead. The cert will simply fail. (doesnt work.)
 
Last edited:
  • Like
Reactions: oreo27

oreo27

Senior Member
Sep 24, 2012
649
142
@oreo27
Latest versions of Waze will overwrite preferences file on startup.
If you own the file by root, 1. that will get reset by android on bootup, and 2. waze creates an alternate file anyway.
We can solve this by owning preferences as root, and /data/data/com.waze as root after reboot.
If you're running magisk, you can create a script in /magisk/.core/post-fs-data.d/99waze with these contents; (remember to chmod 755 your script)

Code:
#!/system/bin/sh
sleep 30
chown root:root /data/data/com.waze
chown root:root /data/data/com.waze/preferences
chmod 755 /data/data/com.waze
chmod 644 /data/data/com.waze/preferences

After doing this, some of your other preferences won't save between launches, so I suggest you set waze up the way you like it before you apply this.

Unfortunately waze does not honour "Max POIs Display", "Coupons", "Ad Images" and "External POI URL*" in preferences.

It does honour these which gets rid of popups at stoplights;
ExternalPOI.My Coupons Enabled: no
ExternalPOI.Feature Enabled: no
ExternalPOI.Popup Enabled: no


You can still adblock advil.waze.com and adsassets.waze.com to get rid of POIs, however this results in waze constantly "searching for network". I suggest redirecting them to a valid https webserver instead. The cert will simply fail.

Thanks for the comprehensive answer. I actually did run into this problem when doing trying this myself. I made a similar .sh script which failed miserably for some reason :D

Code:
#Place this in /magisk/.core/post-fs-data.d since scripting this in a module doesn't seem to work.

# Change the owner of the Waze Directory and Preferences file to root
chown root:root /data/data/com.waze
chown root:root /data/data/com.waze/preferences

# Lock Permissions of the Waze Directory and Preferences file
chmod 555 /data/data/com.waze
chmod 555 /data/data/com.waze/preferences

# Replace any preferences that may have been modified
# Using the piping "|" delimeter so that I can use forward slashes which are common in web addresses.
# Using .* for wildcards so that it works with any region
# Using 127.0.0.2 in case one is utilizing localhost
sed -i -e 's|.*ExternalPOI.My Coupons Enabled:.*|ExternalPOI.My Coupons Enabled: no|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.Feature Enabled:.*|ExternalPOI.Feature Enabled: no|g' /data/data/com.waze/preferences
sed -i -e 's|.*Download.Ad Images:.*|Download.Ad Images: http://127.0.0.2|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.Max POIs Display:.*|ExternalPOI.Max POIs Display: 0|g' /data/data/com.waze/preferences
sed -i -e 's|.*Search Autocomplete.Ads URL:.*|Search Autocomplete.Ads URL: https://127.0.0.2|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.URL:.*|ExternalPOI.URL: https://127.0.0.2|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.URL V3:.*|ExternalPOI.URL V3: https://127.0.0.2|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.URL V2:.*|ExternalPOI.URL V2: https://127.0.0.2|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.Popup Enabled:.*|ExternalPOI.Popup Enabled: no|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.My Coupons URL:.*|ExternalPOI.My Coupons URL: https://127.0.0.2|g' /data/data/com.waze/preferences
sed -i -e 's|.*ExternalPOI.Max POIs Display Small Screen:.*|ExternalPOI.Max POIs Display Small Screen: 0|g' /data/data/com.waze/preferences

I suppose the sleep is on there because the ownership changes within the first 30 seconds of boot? Perhaps that's why my permissions got messed up?

Also, I noticed that once the file is modified, Waze will initialize and download language. Does this happen on your end as well?

Also, is there a way to simply block ads without modifying the file/s?

Edit - Also, since I did this, Waze would just freeze up while in navigation. I've tried uninstalling and re-installing the app and that didn't seem to work.
 
Last edited:

skanadian

Senior Member
Feb 3, 2009
160
61
Ontario
I suppose the sleep is on there because the ownership changes within the first 30 seconds of boot? Perhaps that's why my permissions got messed up?

Yup.

Also, I noticed that once the file is modified, Waze will initialize and download language. Does this happen on your end as well?

After a fresh install, you have to start/exit waze twice before owning by root. It doesn't download the language files until the 2nd start.

Also, is there a way to simply block ads without modifying the file/s?

Blackhole/redirect advil/adsassets does a decent job, but you'll still get a big blank white page at most stop lights. Editting preferences is the only way to get rid of that. I wish someone would mod the apk to get rid of all the ads. (or waze offered a one time/subscription fee to remove them.)

Edit - Also, since I did this, Waze would just freeze up while in navigation. I've tried uninstalling and re-installing the app and that didn't seem to work.

It gets sketchy with adsassets/advil blocked but generally navigation still works for me. I've had more luck with redirection instead of blackholing them.(doesn't help)

The 3.9.6 apk supports these mods a little better (and more, like alert distance), but it lacks a lot of features like trips with friends, eta's, spotify integration, the inbox doesn't work, etc.
 
Last edited:
  • Like
Reactions: oreo27

skanadian

Senior Member
Feb 3, 2009
160
61
Ontario
@oreo27

Code:
chown root:root /data/data/com.waze/waze/skins/default
chmod 555 /data/data/com.waze/waze/skins/default
find /data/data/com.waze/waze/skins/default -name "*x28*" | xargs rm -rf

Explanation: POI icons get placed in that directory with the name [randombull****]x28@3x.png. We'll prevent access to the directory and dump any cached POIs.

Full script for anyone else that comes here

https://xdaforums.com/showpost.php?p=73880023&postcount=19
 
Last edited:

Valiante

Senior Member
Jul 7, 2013
525
122
Hm, very interesting.

Is it possible to roll this into a Magisk module, or TWRP flashable, similar to iYTBP?

Would be much more user-friendly and appreciated.
 

gohamstergo

Senior Member
Mar 6, 2010
1,225
353
Hm, very interesting.

Is it possible to roll this into a Magisk module, or TWRP flashable, similar to iYTBP?

Would be much more user-friendly and appreciated.
While that may be simpler, it's really quite easy to paste the code into a text file, rename to .sh, copy it where the directions say, and change it's permissions. I consider myself pretty dumb and useless and even I could figure it out XD
 

tymestopm

Senior Member
Jun 9, 2017
81
49
While that may be simpler, it's really quite easy to paste the code into a text file, rename to .sh, copy it where the directions say, and change it's permissions. I consider myself pretty dumb and useless and even I could figure it out XD
It's not the fact of 'pretty dumb' ... It's for people who flash a lot of roms to make it substantially easier.
 

Valiante

Senior Member
Jul 7, 2013
525
122
It's not the fact of 'pretty dumb' ... It's for people who flash a lot of roms to make it substantially easier.

While that may be simpler, it's really quite easy to paste the code into a text file, rename to .sh, copy it where the directions say, and change it's permissions. I consider myself pretty dumb and useless and even I could figure it out XD

From my understanding, everytime the app updates you have to do this again. That's why a module would make sense

EDIT; My mistake OP says it should survive, I misread
 
Last edited:

Snake-Plissken

Senior Member
Aug 21, 2006
977
100
San Francisco
hmm i did this and now i am having issues updating or installing apps from google play store. I dont know if its directly related but just before i did this mod by adding a script for magisk and rebooting, I updated all my apps. now i cant. It just says download pending :(
It might be just a coincidence, but its weird...
 

skanadian

Senior Member
Feb 3, 2009
160
61
Ontario
Waze blocked owning the skins directory by root/removing permissions in the latest version. (4.29 broken, 4.28 works).

Hi waze devs! Can I have a t-shirt?

I don't think I'll be posting anything else here.

Code:
[12:45:xx.xxx (0xd15xxxx) 15xxx 15xxx Error] Java Layer: Skins dir /data/user/0/com.waze/waze/skins/default permissions were changed; Notifying and exiting       [Logger_JNI.c:55 (Java_com_waze_Logger_WazeLogNTV)]

For future visitors, I'm adblocking advil.waze.com and using this code on 4.28 (check apkmirror) and it works fairly well.

Code:
#!/system/bin/sh
sleep 30

chown root:root /data/data/com.waze/waze/skins/default
chmod 555 /data/data/com.waze/waze/skins/default
find /data/data/com.waze/waze/skins/default -name "*x28*" | xargs rm -rf
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 9
    Hello there folks! If you are like many of us, you enjoy using Waze to get around but in the last several versions you may have taken a active dislike to distracting and potentially dangerous advertising popping up while you are on the road. These advertisements come in two forms, one of which is so-called "Points of Interest" [POI] balloons and the other is pop-up advertising when you are stopped at an intersection.

    I'm very sorry, but I don't need to see distracting pop-ups in traffic for the local movie, as this is an excellent way to end up having an accident due to how modern human brains have been wired to stare constantly at electronic screens. Plus the POI's obstruct other navigation icons or notifications of traffic on the screen. (My body will thank me if I don't stop by Dunkin' Donuts or the local fried chicken restaurant.)

    The overall solution is you will download an older version of Waze, and overwrite the preferences file with a modified file that cuts out the advertising. You will need root level access in order to do this.

    Since we are not modifying the program itself, and since the program is given away for free (in exchange for all that sweet, sweet "big data"), this is not what would be classified as "warez".

    Most advertising from Waze is served from advil.waze.com or some localized equivalent thereof, depending on your language. We replace callouts in the preferences file to advil.waze.com instead with http://127.0.0.1 which causes the android computer to connect to nothing. We also set the number of POI balloons on the screen to zero.

    attachment.php


    Instructions are as follows:

    0. If you have Waze already installed, your first step is to roll over to /data/data/com.waze/ and delete the entire folder. Then uninstall your existing copy of Waze.
    1. Next download and install the attached version of Waze 3.9.6.0.

    com.waze_3.9.6.0.zip 34.8 MB
    https://mega.nz/#!VRcFmBSA!Ztlwd8tuQm_KNickcnlrr3kZ47edtmfnUEuWWbMMyTk

    (No, it is not the most current version but this is what we do to block ads, and it works well enough.)
    2. Open this version of Waze on your android device just to get it going. Close out after you get to the navigation screen.
    3. Save the attached preferences zip onto your local disk, then decompress it there.
    4. Take this preferences file, copy it onto your android device.
    5. Navigate over to /data/data/com.waze/ and overwrite the preferences file you find there with our modified one.
    6. Enjoy a pleasant, relaxing, ad-free drive.

    This works excellently for older RK3188 CPU android head units.

    (Alternately, if you discover this modified preferences file causes problems on your phone or hardware, you should uninstall, reinstall, and manually replace any preferences callout to "advil.waze.com" with http://127.0.0.1 then set any references in that file about "POI" to zero.)

    As a general note, any rooted android device you have should have ad blocking enabled, which can be done by installing AdAway through FDroid. https://f-droid.org/ downside is most of these advertising filters are not quite well tuned to block advertisements in Waze.

    So we get around this by adding advil.waze.com to the blacklist option in AdAway.

    attachment.php


    Works well even in later versions of Waze, even if you can't block out POI balloons with this approach.
    Happy Motoring!

    Any thoughts or questions?
    3
    @oreo27

    Code:
    chown root:root /data/data/com.waze/waze/skins/default
    chmod 555 /data/data/com.waze/waze/skins/default
    find /data/data/com.waze/waze/skins/default -name "*x28*" | xargs rm -rf

    Explanation: POI icons get placed in that directory with the name [randombull****]x28@3x.png. We'll prevent access to the directory and dump any cached POIs.

    Full script for anyone else that comes here

    https://xdaforums.com/showpost.php?p=73880023&postcount=19
    1
    @oreo27
    Latest versions of Waze will overwrite preferences file on startup.
    If you own the file by root, 1. that will get reset by android on bootup, and 2. waze creates an alternate file anyway.
    We can solve this by owning preferences as root, and /data/data/com.waze as root after reboot.
    If you're running magisk, you can create a script in /magisk/.core/post-fs-data.d/99waze with these contents; (remember to chmod 755 your script)

    Code:
    #!/system/bin/sh
    sleep 30
    chown root:root /data/data/com.waze
    chown root:root /data/data/com.waze/preferences
    chmod 755 /data/data/com.waze
    chmod 644 /data/data/com.waze/preferences

    After doing this, some of your other preferences won't save between launches, so I suggest you set waze up the way you like it before you apply this.

    Unfortunately waze does not honour "Max POIs Display", "Coupons", "Ad Images" and "External POI URL*" in preferences.

    It does honour these which gets rid of popups at stoplights;
    ExternalPOI.My Coupons Enabled: no
    ExternalPOI.Feature Enabled: no
    ExternalPOI.Popup Enabled: no


    You can still adblock advil.waze.com and adsassets.waze.com to get rid of POIs, however this results in waze constantly "searching for network". I suggest redirecting them to a valid https webserver instead. The cert will simply fail. (doesnt work.)
    1
    I suppose the sleep is on there because the ownership changes within the first 30 seconds of boot? Perhaps that's why my permissions got messed up?

    Yup.

    Also, I noticed that once the file is modified, Waze will initialize and download language. Does this happen on your end as well?

    After a fresh install, you have to start/exit waze twice before owning by root. It doesn't download the language files until the 2nd start.

    Also, is there a way to simply block ads without modifying the file/s?

    Blackhole/redirect advil/adsassets does a decent job, but you'll still get a big blank white page at most stop lights. Editting preferences is the only way to get rid of that. I wish someone would mod the apk to get rid of all the ads. (or waze offered a one time/subscription fee to remove them.)

    Edit - Also, since I did this, Waze would just freeze up while in navigation. I've tried uninstalling and re-installing the app and that didn't seem to work.

    It gets sketchy with adsassets/advil blocked but generally navigation still works for me. I've had more luck with redirection instead of blackholing them.(doesn't help)

    The 3.9.6 apk supports these mods a little better (and more, like alert distance), but it lacks a lot of features like trips with friends, eta's, spotify integration, the inbox doesn't work, etc.
    1
    Popups at stoplights are still showing, I'm working on it.