Related
Hello everyone,
I am a computer science student, noob java developer, web and database programmer and a general all around nerdy fellow.
Short Version (if you don't want to read):
How does the application level permission system work on the Android OS? Is it all simply held within the Manifest.permission xml file? Every time an application commits to an action that would require permission, does it simply do a quick check of the ID and then cross-reference the Manifest.permission file at the system level?
Long Version (if you want to read):
I have been looking at LBE Security as an app to allow me to control on a per app basis which permissions they are allowed to have. A wicked awesome idea. The only problem (aside from it not being open source) is that it drains the battery through CPU usage of its active guard feature.
I thought to myself there must be a simple way to manage the permissions of all apps without the necessity of a background service continually running. Could not an app be created (which would of course require root access) that would allow you to edit (through a GUI) the permissions of all your applications. Write to the Manifest.permission the appropriate changes and then close. Thus negating any continuously running background service drain on the CPU/mem=> battery?
Is this how all permissions for applications are handled through this one file? Or am I missing something?
I have searched quite a bit, as far as I can tell its all handled by Manifest.permission. Please enlighten me if I am mistaken.
Helping friend with a cheating husband. She wants something that can log URLs visited to see if he's making new webmail accounts. Any suggestions?
I figured a stealthy way to do this would be something like privoxy installed via the commandline and started in an init script. He's already rooted his phone, so that should make things a bit easier.
Basically the requirements are hidden (doesn't show in apps list or drawer), can log URLs, doesn't add significant battery drain. I see a bunch of paid apps (mobispy, etc) but can't verify if they're hidden from android OS. If he can just kill it with a something like ES Task Manager and uninstall it with Settings->Apps, it's probably not sufficient.
NDK
Hi.
You can introduce any cross compiled binary into the android system if the phone is already rooted. You can compile programs via the NDK and put them in /system, androids software center will never now.
It's probably easiest to install a network sniffer like tcpdump or even better tshark from wireshark. Just start it in init.d and let it write the first 1k bytes of every packet (port 80/443) to a capture file hidden in some sub directory. This will most likely drain battery.
As for hiding in the process list, it's probably easier to rename your sniffer to something harmless like 'wpa-agent'.
* BUT *
You basically want to introduce malware on another ones phone. This might be a felony in your country. And it's certainly unethical. In these cases I always suggest talking to the partner instead of spying. If it comes to spying on your partner the trust, which is needed in a relationship, is already severly damaged. And I'm really not sure that looking out for webmail accounts will repair this trust.
Crossbreeder is an 5in1 package created to make Android devices run faster with less lag and to give a significant performance boost.
Tested and confirmed to give our wildfires a considerable boost. Tested on CM6, CM7, CM9.
head to the original thread to get the flashable ZIP. and please remember to read the OP carefully before using this.
Zip files are also attached to this post.
Original Thread -
forum.xda-developers.com/showthread.php?t=2113150
all credit goes to idcrisis for creating this package. I'm just sharing this with my fellow buzzers.
what Crossbreeder actually do, QUOTED FROM ORIGINAL POST,
This is a combination of 5 different
key methodologies to improve the
Android experience:
1. It's a big new feature, DNS
caching, parallelising and tether
boost . A lot of the lag in a lot of
apps, apart from the GUI lag, is due
to slow DNS querying, specially on
the mobile network.
CrossBreeder now runs a caching,
parallelising DNS client on the
device. So now most of your DNS
queries will be served from the
cache and if not found, the query
will be sent in in parallel to
multiple DNS servers including the
two Google DNS servers and your
two ISP servers and the quickest
reply will be served to you, hot and
transparent. You can read this
rationale for this approach - http://
ma.ttwagner.com/make-dns-fly-...q-
all-servers/
This speeds up network access and
networked apps, like Browsers of
course, and Tapatalk, Gmail and
thousands of others drastically. And
removes a lot of the lag where it was
due to DNS querying. This will not
increase your network or download
speed but pages will load much
faster.
This will future proof your devices as
more and more apps start using
HTML5 and/or reside completely as
web pages or the like.
CrossBreeder boosts your tethering
connection. Client devices to your
device will take advantage of the
new DNS. Hence their usage is also
improved! In many cases this update
might even fix a broken tethering
feature on your phone. So if your
ROM doesn't have a working
tethering support, you an try and
install this update. It might
magically start working!
CrossBreeder blocks ads and
spyware in an efficient manner by
blocking access to the host. It does
this using a static block list of known
ad sites and behaving as an
authoritative DNS server for these
sites and redirecting them to a
dummy address. CrossBreeder runs a
simple web server serving empty
images and pages, so ads completely
disappear instead of showing an ugly
Page/Image Not found error.
You can update this block list from
an external specialised tool like
Adaway if you need
It also renames any existing /etc/
hosts file on your device. Testing
has proven that keeping a system
wide /etc/hosts file as is used by
most other Ad blocking software
actually slows down your system. So
it is recommended to use this
method instead. Check this out for
the demonstration of the slowdown
and how to test it yourself - http://
forum.xda-developers.com/
show...php?p=41877518
In order to achieve all this DNS
related functionality, CrossBreeder
relies on the excellent open source
utilities - DNRD and Dnsmasq
2. Modulate OS entropy levels for
lag reduction ala Seeder. The whole
OS reads either /dev/random or /
dev/urandom and both need
entropy. However this mod uses a
completely different, lightweight and
efficient random number generator
called Havege . This sharply reduces
cpu consumption and corresponding
battery life loss compared to Seeder.
It also does a better job at keeping
entropy levels high hence your
device is more responsive. It doesn't
run in a CPU intensive loop either.
The extend queue functionality has
also been added to CrossBreeder.
See here for another rationale
favouring Havege compared to Rngd
- ( http://code.google.com/p/csrng/ -
Look for the limitations.)
3. Change kernel parameters
specially the wakeup threshold ones
so read blocks are released instantly
and writes never wake up as we have
an external entropy generator. And a
host of other fail safe and working
tweaks from the community for each
key subsystem. ( one can look
inside /etc/CrossBreeder/
zzCrossBreeder ).
4. Remove /dev/random as it's
blocking . Link it to non-blocking /
dev/urandom. Since /dev/random is
blocking and designed to protect us
from Quantum alien cryptographers
with mathematical certainty and
urandom is non blocking pseudo-
random device that most apps and
OSs are using anyway and with
Haveged running, is as secure
anyway as it's very difficult to empty
the entropy pool faster than Havege
can replenish it. Pre ICS devices
have a lot to gain with this but ICS+
devices show visible gains too.
5. Frandom support (Optional) -
CrossBreeder now supports linking
both your random devices to the
extremely fast alternative - Frandom
( http://billauer.co.il/
frandom.html ). This module is
orders of magnitude (10-50 times)
faster than the standard character
devices ( Check this out - http://
forum.xda-developers.com/
show...&postcount=134 ). The
erandom character device also
installed by Frandom doesn't use up
system entropy at all on top of being
fast. You will need to ask your ROM
developer to develop the kernel
module for you and then place it
in /system/lib/modules.
CrossBreeder will then try and load
it and if successful, make all the
necessary adjustments so that both /
dev/random and /dev/urandom are
pointing to /dev/frandom and /dev/
erandom respectively. The speed
benefits are to be seen to be
believed. But since each ROM
requires a unique kernel module,
this option is left optional ( but
auto detect ). Advanced users can
even try and load the frandom
module built for other kernels if
they don't have one readily available
for their own kernel version using
the Punchmod utility. Read this:
http://forum.xda-developers.com/
show...5#post41920265
remember to download both Crossbreeder and uninstall ZIP files. it's very unlikely that crossbreeder will cause any problems, but it's better to be prepared.
Feedbacks are welcome
Edit - Attachments will no longer be updated. Visit the original thread for latest versions.
lakshan_456 said:
Crossbreeder is an 5in1 package created to make Android devices run faster with less lag and to give a significant performance boost.
Tested and confirmed to give our wildfires a considerable boost. Tested on CM6, CM7, CM9.
head to the original thread to get the flashable ZIP. and please remember to read the OP carefully before using this.
Zip files are also attached to this post.
Original Thread -
forum.xda-developers.com/showthread.php?t=21131500
all credit goes to idcrisis for creating this package. I'm just sharing this with my fellow buzzers.
what Crossbreeder actually do, QUOTED FROM ORIGINAL POST,
This is a combination of 5 different
key methodologies to improve the
Android experience:
1. It's a big new feature, DNS
caching, parallelising and tether
boost . A lot of the lag in a lot of
apps, apart from the GUI lag, is due
to slow DNS querying, specially on
the mobile network.
CrossBreeder now runs a caching,
parallelising DNS client on the
device. So now most of your DNS
queries will be served from the
cache and if not found, the query
will be sent in in parallel to
multiple DNS servers including the
two Google DNS servers and your
two ISP servers and the quickest
reply will be served to you, hot and
transparent. You can read this
rationale for this approach - http://
ma.ttwagner.com/make-dns-fly-...q-
all-servers/
This speeds up network access and
networked apps, like Browsers of
course, and Tapatalk, Gmail and
thousands of others drastically. And
removes a lot of the lag where it was
due to DNS querying. This will not
increase your network or download
speed but pages will load much
faster.
This will future proof your devices as
more and more apps start using
HTML5 and/or reside completely as
web pages or the like.
CrossBreeder boosts your tethering
connection. Client devices to your
device will take advantage of the
new DNS. Hence their usage is also
improved! In many cases this update
might even fix a broken tethering
feature on your phone. So if your
ROM doesn't have a working
tethering support, you an try and
install this update. It might
magically start working!
CrossBreeder blocks ads and
spyware in an efficient manner by
blocking access to the host. It does
this using a static block list of known
ad sites and behaving as an
authoritative DNS server for these
sites and redirecting them to a
dummy address. CrossBreeder runs a
simple web server serving empty
images and pages, so ads completely
disappear instead of showing an ugly
Page/Image Not found error.
You can update this block list from
an external specialised tool like
Adaway if you need
It also renames any existing /etc/
hosts file on your device. Testing
has proven that keeping a system
wide /etc/hosts file as is used by
most other Ad blocking software
actually slows down your system. So
it is recommended to use this
method instead. Check this out for
the demonstration of the slowdown
and how to test it yourself - http://
forum.xda-developers.com/
show...php?p=41877518
In order to achieve all this DNS
related functionality, CrossBreeder
relies on the excellent open source
utilities - DNRD and Dnsmasq
2. Modulate OS entropy levels for
lag reduction ala Seeder. The whole
OS reads either /dev/random or /
dev/urandom and both need
entropy. However this mod uses a
completely different, lightweight and
efficient random number generator
called Havege . This sharply reduces
cpu consumption and corresponding
battery life loss compared to Seeder.
It also does a better job at keeping
entropy levels high hence your
device is more responsive. It doesn't
run in a CPU intensive loop either.
The extend queue functionality has
also been added to CrossBreeder.
See here for another rationale
favouring Havege compared to Rngd
- ( http://code.google.com/p/csrng/ -
Look for the limitations.)
3. Change kernel parameters
specially the wakeup threshold ones
so read blocks are released instantly
and writes never wake up as we have
an external entropy generator. And a
host of other fail safe and working
tweaks from the community for each
key subsystem. ( one can look
inside /etc/CrossBreeder/
zzCrossBreeder ).
4. Remove /dev/random as it's
blocking . Link it to non-blocking /
dev/urandom. Since /dev/random is
blocking and designed to protect us
from Quantum alien cryptographers
with mathematical certainty and
urandom is non blocking pseudo-
random device that most apps and
OSs are using anyway and with
Haveged running, is as secure
anyway as it's very difficult to empty
the entropy pool faster than Havege
can replenish it. Pre ICS devices
have a lot to gain with this but ICS+
devices show visible gains too.
5. Frandom support (Optional) -
CrossBreeder now supports linking
both your random devices to the
extremely fast alternative - Frandom
( http://billauer.co.il/
frandom.html ). This module is
orders of magnitude (10-50 times)
faster than the standard character
devices ( Check this out - http://
forum.xda-developers.com/
show...&postcount=134 ). The
erandom character device also
installed by Frandom doesn't use up
system entropy at all on top of being
fast. You will need to ask your ROM
developer to develop the kernel
module for you and then place it
in /system/lib/modules.
CrossBreeder will then try and load
it and if successful, make all the
necessary adjustments so that both /
dev/random and /dev/urandom are
pointing to /dev/frandom and /dev/
erandom respectively. The speed
benefits are to be seen to be
believed. But since each ROM
requires a unique kernel module,
this option is left optional ( but
auto detect ). Advanced users can
even try and load the frandom
module built for other kernels if
they don't have one readily available
for their own kernel version using
the Punchmod utility. Read this:
http://forum.xda-developers.com/
show...5#post41920265
remember to download both Crossbreeder and uninstall ZIP files. it's very unlikely that crossbreeder will cause any problems, but it's better to be prepared.
Feedbacks are welcomed
Click to expand...
Click to collapse
Tested on rempuzzle, change nothing , will test other thing.
And Tested on miui v2.3,it improve the performances.
On aokp v5, it make bootloop when We usés the ROM too long ( without oc ).
On miui v4, improve stability.
Sent from my HTC Wildfire using xda app-developers app
Pator57 said:
Tested on rempuzzle, change nothing , will test other thing.
And Tested on miui v2.3,it improve the performances.
On aokp v5, it make bootloop when We usés the ROM too long ( without oc ).
On miui v4, improve stability.
Sent from my HTC Wildfire using xda app-developers app
Click to expand...
Click to collapse
well,rempuzzle probably don't need this, since its fast enough as it is now. but it would have been great if this worked.
I think aokp v5 has seeder intergrated, maybe they are conflicting with each other. but crossbreeder says it prevents seeder from executing, so I'm not sure.
anyway thanks for the info
but crossbreeder says it prevents seeder from executing, so I'm not sure.
Click to expand...
Click to collapse
It does. I had that myself when crossbreeder stopped seeder app automatically after having flashed it.
gerope said:
It does. I had that myself when crossbreeder stopped seeder app automatically after having flashed it.
Click to expand...
Click to collapse
yes, I know it does, I was just guessing a probable cause for the bootloop.
Maybe it's something else, better leave that to devs to look into.
Tested this on DK froyo ROM. It does make a difference.
Sent from my HTC Wildfire using Tapatalk 2
Updated Attached files to latest version (6.23.13_v2)
If your current Kernel doesn't support Init.d executions, try an app like Universel Init.d
https://play.google.com/store/apps/...&utm_medium=organic&utm_term=universal+init.d
Pator57 said:
Tested on rempuzzle, change nothing , will test other thing.
And Tested on miui v2.3,it improve the performances.
On aokp v5, it make bootloop when We usés the ROM too long ( without oc ).
On miui v4, improve stability.
Sent from my HTC Wildfire using xda app-developers app
Click to expand...
Click to collapse
I flashed AOKP v5 and deleted the seeder script from Init.d folder after flashing Crossbreeder, and I did not experience any bootoops while I was using that ROM ( I used it for about 2 weeks)
Does Rempuzzle support Init.d scripts?
lakshan_456 said:
I flashed AOKP v5 and deleted the seeder script from Init.d folder after flashing Crossbreeder, and I did not experience any bootoops while I was using that ROM ( I used it for about 2 weeks)
Does Rempuzzle support Init.d scripts?
Click to expand...
Click to collapse
Yea, im sure.
Sent from my HTC Wildfire using xda app-developers app
Definitely, this mod effects, cm7 becomes smoother.
while coming out of app drawer back to main screen, scrolling has also improved.
Thanks
Sent from my HTC Wildfire using Tapatalk 2
Intresting..
Thnx for this m8 Going to try hopefully it will reduce many lags :]
-------------------------------
Btw i'm new to this all :] :good:
New update available.
Visit the Original thread for more info and downloads.
http://forum.xda-developers.com/showthread.php?t=2113150
Hello there,
it seems that on the S9+ (and maybe S9, tho users over there report everything is fine) all the VPN-based ad blockers like DNS66, Blokada and the likes do not work correctly. When switching between wifi and mobile, the connection randomly dies, not letting anything through anymore until you restart the phone, or disable the blocker. It is documented in a github issue for DNS66 here. This is annoying, as I found this solution the most user-friendly. I know there is Adhell 3, but a) it's annoying to resign and reinstall every 3 months and apply for new keys and b) it doesn't block everything, not even if I manually feed it with all the hosts files that DNS66 uses. It blocks ads alright, but misses quite some.
Is there any known fix for this, or any other adblock suggestion besides that? I know that rooting and adaway would be best, but I won't root anymore since Samsung here in Europe straight off denies any warranty requests for rooted devices, even if it's got nothing to do with the root itself.
Adguard would a suggestion, but it does use a VPN blocking service for system wide blocking. It's not free and is subscription based. At one time I used adguard over dns66 as adguard worked and dns66 did not (VPN issues with dns66).
For non rooted users there is really no other options. Unless you want to setup a pihole server, somehow get your dns setting on your phone to point to the pihole server and go that route. In the case of dns changes on non-rooted devices it's either a VPN based change or knox. So your options are limited to one or the other. Of course this becomes moot if your plan on only blocking ads when you use a wifi connection.
I've done the pihole route before too, it works but doesn't catch everything. Some ads originate from the same domain as where your visiting, in which case dns adblocking won't work. For those scenarios cosmetic filtering would.
Otherwise I use adhell3 and adblock plus plugin on samsung browser. For practical intents and purposes I steered clear of VPN based setups for a reason. Also I don't mind recompilimg adhell3 once in a while, he's really put a lot of work into making it as simple as possible. I've got my android studio setup so that I just pull the latest changes, build the apk and install.
If adhell3 isn't your cup of tea then the only app I know is Disconnect Pro which costs $24.99 in the galaxy app store. Disconnect Pro functions the same way as Adhell3 does.. as a front end configuration for knox. I've read somewhere that Adhell3 has more features then Disconnect Pro, but I didn't look to much into that to find out what one has over the other.
If I were to suggest something I would suggest adhell3 combined with adblock plus plugin for your browser. combined those work the best for me... some ads might slip through, but dns based ad blocking is not the same as cosmetic ad blocking. Adguard should still do cosmetic filtering, but it's been a while since I used that app.
I am use this one on my S9+, it's free and work fine.
https://block-this.com/
first time posting on the P6 forum (last had a P3).
previously, I used dns.adguard.com for the Private DNS setting. however, that was not blocking all of the ads from within some apps. it worked pretty well until then. Now, I downloaded blokada 5, and that successfully blocks almost all ads. the lone problem is that when connecting to a website, it often slows it down.
curious to see if anyone has a similar experience or recommend an alternative to dns.adguard.com.
thanks!
jco23 said:
first time posting on the P6 forum (last had a P3).
previously, I used dns.adguard.com for the Private DNS setting. however, that was not blocking all of the ads from within some apps. it worked pretty well until then. Now, I downloaded blokada 5, and that successfully blocks almost all ads. the lone problem is that when connecting to a website, it often slows it down.
curious to see if anyone has a similar experience or recommend an alternative to dns.adguard.com.
thanks!
Click to expand...
Click to collapse
I personally use both NordVPN as well as AdAway with root; AdAway has a VPN function of its own, and you can use your own host lists, but the VPN solution is more resource intensive than the root solution.
V0latyle said:
I personally use both NordVPN as well as AdAway with root; AdAway has a VPN function of its own, and you can use your own host lists, but the VPN solution is more resource intensive than the root solution.
Click to expand...
Click to collapse
interesting - thanks for the quick reply.
i do have windscribe, but rarely use it. i have not rooted this device yet, as my understanding rooting will disable Google Wallet/GPay - and I use those more often than I would need to hide ads.
+1 to AdAway, plus if your preferred browser supports it, install an adblocker in it as well - I use uBlock for Firefox.
There's also MinMinGuard which has recently gotten an update to make it work on current systems, but that requires Lsposed if you don't already use it, as well as individually enabling it for every new app you install. Honestly, though, with AdAway plus a browser adblocker, I almost never see any ads in any app, so I don't find MinMinGuard necessary anymore.
Ad blocking apps like Blokada and DNS-based ad blockers like AdGuard can be effective at blocking ads, but they can also slow down your browsing experience. This is because ad blockers need to process and filter out ads, which can take up resources and cause delays.
One alternative to dns.adguard.com that you could try is Cloudflare's 1.1.1.1. This is a free, fast, and secure DNS resolver that also includes ad-blocking capabilities. Cloudflare's 1.1.1.1 uses their own ad-blocking technology which is based on the same technology used by their enterprise-grade Web Application Firewall (WAF). This can block ads at the DNS level, which can be less resource-intensive than using an app like Blokada.
jco23 said:
interesting - thanks for the quick reply.
i do have windscribe, but rarely use it. i have not rooted this device yet, as my understanding rooting will disable Google Wallet/GPay - and I use those more often than I would need to hide ads.
Click to expand...
Click to collapse
No root will not disable Google Wallet/GPay, you just have to install Safety net fix module and all works great, for banking apps just hide root into settings. I use all my banking apps, card tokens and gpay/wallet everyday. Rooking root + adaway.
anawilliam850 said:
Ad blocking apps like Blokada and DNS-based ad blockers like AdGuard can be effective at blocking ads, but they can also slow down your browsing experience. This is because ad blockers need to process and filter out ads, which can take up resources and cause delays.
One alternative to dns.adguard.com that you could try is Cloudflare's 1.1.1.1. This is a free, fast, and secure DNS resolver that also includes ad-blocking capabilities. Cloudflare's 1.1.1.1 uses their own ad-blocking technology which is based on the same technology used by their enterprise-grade Web Application Firewall (WAF). This can block ads at the DNS level, which can be less resource-intensive than using an app like Blokada.
Click to expand...
Click to collapse
i tried installing the 1.1.1.1 app from cloudflare, and it did NOT block the ads on my scrabble app. thx for the suggestion though.
Have you tried using a browser like Brave which would help with your browsing experience. I use a combination of Blockada for system wide blocking, pihole for in-home network based blocking and browsers like Brave/DDG for blocking and so on. I have a tasker based activity for turning on/off blockada when in home/out of home. It's my non-root solution.
Additionally you can also lookup -
ahadns.com - you get a customised secure dns url, you can setup filter lists and the URL is configured based on the seelctions.
nextdns.io - something similar to the above. 300,000 free ad-blocking queries per month and past that, the non-blocking DNS service will work till the next month.
cbarai said:
Have you tried using a browser like Brave which would help with your browsing experience. I use a combination of Blockada for system wide blocking, pihole for in-home network based blocking and browsers like Brave/DDG for blocking and so on. I have a tasker based activity for turning on/off blockada when in home/out of home. It's my non-root solution.
Additionally you can also lookup -
ahadns.com - you get a customised secure dns url, you can setup filter lists and the URL is configured based on the seelctions.
nextdns.io - something similar to the above. 300,000 free ad-blocking queries per month and past that, the non-blocking DNS service will work till the next month.
Click to expand...
Click to collapse
Hey, just stumbled across your post and thought that if you use piehole at home, you should be able to just use a VPN to you piehole when on the road so you don't have to rely on third party apps. Don't know about performance though, but you might give it a try.
Cheers
Been taking NextDNS for a test ride. Easy set up with a lot of features, up to 300,000 queries per month for free. What's not to like?
Fast and running pretty smooth so far, day 7.