text:
Ad blocking without rooting, OR low-risk rooting
I have previously nervously rooted phones I've owned (Samsung S2, S3) as I wanted to be able to use AdAway ad-blocker, effective not just in browsers (e.g. AdBlocker) but also in other apps. I say nervously because I always found the mode in which these modified ROMs are offered (websites such as XDA developers) a bit dodgy/flimsy. Nevertheless, this has worked well in the past, but I am aware that I might just have been lucky, as those forums abound with bad experiences, i.e. bricked phones, or at the very least tons of wasted time trying to at least make your phone work again even in its stock let alone rooted firmware.
Now I have a new phone, the most expensive I've owned so far (S7 Edge), and browsing these same websites again, I feel just as edgy performing this risky operation. For instance, the S7 Edge section of the XDA-devs website has several rooted ROMs available, however without spending hours and hours it is not obvious what the differences between them are. To name, just a few doubts:
1) how are 'recovery' firmwares different from ones just called 'Kernel' or 'ROM'?
2) in what way does each of those ROMs differ from the CyanogenMod, which I've happily used in the past but for which there is no S7 Edge version released from what I can see? Incidentally, I used Odin to install CyanogenMod on my old phones, rather than a 'recovery'.
3) are there major differences in how the S7 Edge will operate with such a rooted firmware/ROM as compared to the stock one? Specifically, will it be any more vulnerable to exploits etc, given that no-one can really tell whether these ROMs have e.g. built-in trojans?
Given all these concerns about Android rooting, is there any way that adblocking can be performed without rooting? If not, what is the least-intrusive and least-risky way to root an Android (in this case an S7 Edge)?

Since there already are two good answers here, I'll focus on what impact do "unauthorized operations", such as rooting through ODIN, flashing a custom Recovery, kernel or ROM, have on your warranty. Since the old S4, Samsung implemented a particular way to make sure users cannot mess with the device and then ask Samsung for repairs covered by the warranty. This system consists of a particular software, dubbed KNOX, being an irreversible bit which turns from 0 to 1 if you perform any of the above. This will both void the warranty, and forbid access to the KNOX containers.

Methods described here may help: https://android.stackexchange.com/a/218314/218526

It would be better if you split your question into three individual questions, but since they are linked to each other, I'll answer them here for you.

1) How are 'recovery' firmwares different from ones just called
  'Kernel' or 'ROM'?

They refer to different things altogether.
Recovery :
Recovery refers to the dedicated, bootable partition that has the recovery console installed. A combination of key presses (usually power + volume up) or instructions from a command line, will boot your phone to recovery, where you can find tools to help repair (recover) your installation, install official OS updates and/or custom ROMs and other stuff.
Recovery firmwares contain a custom recovery file that enables you to do a lot more additional things than what the stock recovery offers. This can include options to re-root your device, a file browser to browse through your files, format individual partitions and more.
Kernel :
Kernel is the core of the operating system that handles requests to and from the hardware, memory and process management and all the low-level stuff that is necessary for Android to be able to run. It is based on the Linux kernel with a few modifications to suit it to Android versions.
Kernel firmwares contain a kernel that, when installed, replaces the existing kernel and modifies the low level stuff in order to tweak the software to make better use of the hardware. Better battery life, higher performance, increased signal reception, etc. are some things a custom kernel can do.
ROM :
A custom ROM replaces your device's Android operating system — normally stored in read-only memory — with a new or modified version of the Android operating system. A popular custom ROM is CyanogenMod, which gives you a host of new options as compared to the original firmware.
ROMs may contain a different Android system altogether or might also include a kernel and/or a recovery. It's best to read the OP on those threads to find out what it contains.

2) In what way does each of those ROMs differ from the CyanogenMod,
  which I've happily used in the past but for which there is no S7 Edge
  version released from what I can see? Incidentally, I used Odin to
  install CyanogenMod on my old phones, rather than a 'recovery'.

This is subjective to the ROM you are referring to. Some ROMs use the RRO-Layers engine for theming, while others use the CyanogenMod theme engine. Some ROMs might have additional features over those present in CyanogenMod, others might have a different user interface altogether.
As to the unavailability of an S7 Edge version of CyanogenMod, this is because official builds aren't made yet or are in the works.

3) Are there major differences in how the S7 Edge will operate with
  such a rooted firmware/ROM as compared to the stock one? Specifically,
  will it be any more vulnerable to exploits etc, given that no-one can
  really tell whether these ROMs have e.g. built-in trojans?

Again, these are subjective to the ROM you choose. Basically, some offer better performance, others offer better battery life, and a few more offer a mix of the two. It depends on which ROM you choose.
There are a few ROMs that might be more vulnerable to exploits than others. Therefore, it is recommended to go for an official build of a popular custom ROM, as they are tested and checked so that they would not contain malware.

Given all these concerns about Android rooting, is there any way that
  ad-blocking can be performed without rooting?

As @xangua said, Adblock Plus will filter WiFi traffic, but needs a proxy server configuration.

If not, what is the least-intrusive and least-risky way to root an
  Android (in this case an S7 Edge)?

Rooting is device-specific. There are different ways to achieve root access on different devices. In the case of an S7 Edge, you could try Kingo Root, it has been claimed to work on an S7 Edge. However, be careful, one wrong step can brick your device.

Edits are welcome if I missed something or if additional information could be added. :)

many thanks for a great answer. ABP does not do a good a job as AdAway though (see my comment above) ...

Answering your first and main question: Ad blocking without rooting
On non-rooted devices running Android 4.1.2, 4.2.1 and higher, Adblock Plus will filter all WiFi traffic, but it needs to be configured as a proxy server manually. Detailed instructions are provided by Adblock Plus for not experienced users.
https://adblockplus.org/android-about
Avoid making multiple questions in one single post, make a single one for each single question.

ABP does not work well to block ads that are inside Android apps (such as YT), it produces inconsistent results, e.g. ads are blocked in some apps but not in others, or large blank spaces are left in their place. This has been my experience with it and so it has been for others (e.g. https://adblockplus.org/forum/viewtopic.php?f=15&t=38777). I now remember why for my S3 I had chosen to root, as AdAway served me perfectly for years. It doesn't seem to me ABP is able of doing a job of the same quality.

and point taken about multiple questions..

I have no idea why anybody has not mentioned "Lucky Patcher" yet...
Lucky Patcher is an application that can modify applications/APK files present on the phone by patching them.
One of the things it can do, for example, is remove ads. It's ad removing mechanism is very powerful and can not only make ads not load, but also remove/shrink the ad boxes so you wouldn't even think they were there.
It needs root if you want to patch applications without reinstalling them but it can also patch applications without root by uninstalling them, patching them and then installing them again.
It can do many other things too (some which are illicit and I highly discourage you from doing them)...
The application's interface can be overwhelming and takes some getting use to but once you get the hang of it, you will find it's power beats almost every other adblocker for Android out there.
How to patch an application to remove ads:

Open Lucky Patcher and tap on the application you wish to block the ads in.
Tap on "Open Menu of Patches"
Tap on "Create Modified APK File"
Tap on "APK without Google Ads"
Customize the ad-removal settings (if you want)
Tap on "Rebuild The App"
Wait until the patching process is complete and tap: "Go to file"
Tap on the first item that is in the list that appears
Tap "Uninstall and install" and follow Android's uninstall and install dialogs
Open the app and confirm that the ads have been removed!

Lucky Patcher can be downloaded here.

thanks, good to know, but for those of us who just want to apply a quick fix (e.g. rooting + AdAway) to get ri dof ads and move on with our lives, this might not be the best solution

Samsung Galaxy S7 has a stock browser app named - "Internet".
It includes ad blocking functionality as well as removing their containers on webpages. For it you will have to install one of the following apps from Play Store

Adblock fast
Crystal
Adblock Plus for Samsung

After installing open
Internet->More->Settings->Advanced->Block Content (enable the switch and choose the adblocker that you installed out of the above).
Unfortunately this is only an app based solution not system wide (which would only be available by rooting).
As far as rooting is concerned-

don't try to do it.You will lose Samsung Pay, Private Mode, Warranty and obviously Knox will be tripped. (if you don't mind losing these features go ahead!)

Ans 2- On S7 you will not be able to use Cyanogenmod for many months or never (as Samsung has blocked bootloaders on Qualcomm versions and they don't give Exynos source code). Hence all ROMs on XDA are stock modified ROMs (only containing small changes like adblocker, some x kernel, some changes here n there but mostly stock)
If CM comes to S7 then you will have to install via 'recovery'.
Ans 3 As these ROMs will be mostly equivalent to stock, they will operate normally (except until You modify it heavily). These ROMs won't come with Trojans for sure
No, system wide adblocking can't be performed without root.
Least risky way to root will be flashing Chainfire's autoroot via odin (only Exynos)

Airplane Mode = effective ad blocker within games. ABP = effective ad-blocker using the web browser. What are we missing here?

What we are missing is disabling ads within all apps (system-wide). ABP claims to do that but in reality does not (see my longer comment above), and either way is limited to WiFi traffic.

the Chainfire rooting solution seems simple enough - but again, it all seems very questionable and flimsy to me, and would feel uneasy risking a 700EUR device by applying a patch which has insufficient testing and for which not only no responsibility is taken but also no support is offered  -- looking at the Chainfire page, the developer himself never seems to reply to people's "I bricked it, help!" calls

there is thread dedicated to this by Chainfire on xda. If you do it correctly ,device won't brick. There are many guides and videos on net for rooting with this solution. Even I've rooted my S6 by this method only :)

Coming to the main issue of blocking ads without rooting...
If you have an unlocked bootloader you can then boot a custom recovery (even without flashing it) and then install MoaAB.
I use the same approach on three different devices with effective ad blocking. Not sure of the specifics for Samsung S7 Edge though.

In principle you can root the device yourself and use iptables-based transparent proxying to forward DNS and http queries to proxies that are not running with root privileges. Then you don't have to trust anyone else's software to be installed as root. In practice I don't know if there's any good software setup to run this way on Android.
For what it's worth, DNS blackholing is one of the most effective ways to adblock in apps, and it's easy to do yourself.

The DNS method sounds promising, however after following the instructions at https://7labs.heypub.com/mobile/ad-blocker-android-ios.html#Block_ads_via_DNS, either the WiFi stops working (for adbarricade DNS values), or it works but ads are displayed (for fooldns DNS values).

I'm not sure what you find dodgy about XDA, but it's not really any different from what manufacturers do when loading/updating phones. An official update could just as easily contain a backdoor, virus, etc and you would install it without a second thought. As long as it's done properly, phones being bricked as a result is not common at all, and is easily fixable if it does occur.
Rooting is extremely low-risk, but is currently not available for the S7 as they are still working on it. Things like that are also tested within the developer community before being released to the public.
As far as rooting, you MUST have the exynos version of the S7 for it to work. The Snapdragon version does not currently have a working root unless you install a custom rom.
http://forum.xda-developers.com/s7-edge/development/sm-g935-exynos-cf-auto-root-t3337354
If you prefer not to root, I found 2 options on a list of non-root apps for system wide ad blocking that does not require it. I can't post more than 2 links because my account is new, so I'll just link the thread I got them from.
http://forum.xda-developers.com/s7-edge/how-to/root-modifications-t3339094

Lucky patcher apk solved my issue :')
How to patch an application to remove ads:
Open Lucky Patcher and tap on the application you wish to block the ads in.
Tap on "Open Menu of Patches"
Tap on "Create Modified APK File"
Tap on "APK without Google Ads"
Customize the ad-removal settings (if you want)
Tap on "Rebuild The App"
Wait until the patching process is complete and tap: "Go to file"
Tap on the first item that is in the list that appears
Tap "Uninstall and install" and follow Android's uninstall and install dialogs
Open the app and confirm that the ads have been removed!

If you are unable to remove ads. Follow these steps:
For this purpose, you need to download an app called as Lucky Patcher.

So, Download Lucky patcher apk from above link.
Install that APK in your android phone.
Open Lucky Patcher.
Now, select the particular app of which you want to remove ads.
Click on Create modified apk and select remove Google Ads.
Finally, Tap on Rebuild the app.
Now, just uninstall old apk and install NEW apk again.
You are done.


text:
Notification sound is too loud when listening to music with a headset
I'm using a Galaxy S6.  When I'm listening to music with my headphones plugged in, notifications come through startlingly loud.
I checked my sound settings, and I have the volume for notifications very low.  I verified the volume in settings -> sounds and vibration -> volume.  If I have my music playing the test feedback volume is super high even at my low setting.  But once the music is paused, the notification volume returns to its normal reasonable level.
Why do my notifications use such a high volume to interrupt my music?  Is there a setting I'm overlooking to prevent notification volume from being boosted while music is playing?  I'd prefer a built-in solution without external apps, but I'm willing to use reasonable add-ons to manage volume.

Note: I'm ok with the notification interrupting/dimming the music, but I don't want the volume of the notification to rupture my eardrums in an attempt to drown out the music.

What music player are you using?  I use poweramp (with my gain turned quite low) and with the 6.0 update I started noticing this behavior, but I tested what happened when I closed poweramp and the notification sound was what I would normally expect to hear.  I wonder if it's caused by the 6.0 update changing something and the music app(s) you (and I) are using not updating to account for it yet?

This happens with both Google Play Music and the built in Samsung Music applications.

I'm also getting this, with Microsoft Groove and Podbean. I believe the problem started when the phone (I have an S6 Edge) was updated with Marshmallow.

The side volume buttons on your device can bring up four volume options by clicking the arrow. Try adjusting the notification setting and maybe even the system setting if that doesn't work. Easy listening my brother.

The questioner says they already set the notification volume as low as it will go.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
Is it possible to rebuild a Huawei (or other) phones firmware from a existing installation?
I wondered, if you can install a firmware to a Huawei phone from a update.app file, could it be possible to reverse it and build the update.app back? I mean it like create a update.app from the currently installed firmware on a Huawei phone.
I need it, because i have a Huawei Y560-L01 (Firmware build Y560-L01V100R001C577B043), and it seems i cant download this update.app version anywhere. If something happens to the phone, i could repair it with the update.app. Is it possible to rebuild the update.app from the currently installed firmware on a Huawei phone?

Try a custom recovery tool. Google  Huawei Y560-L01 (Firmware build Y560-L01V100R001C577B043 toolkit. If that doesn't work, go to the official huawei website and use a flash recovery (this will erase the phone)

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Does boot take up any significant power?
If I wanted to conserve energy, and needed to check on my phone once every while, would turning the phone off and on every 30 seconds actually conserve more power than if I had it on all the time?
Does the boot sequence perhaps take more energy than the energy I saved in the off time, thus having negative "profit" of power save?

My phone is running CyanogenMod 12.1, and is a kminilte (S5 mini)

Are you asking about booting, meaning from a powered off state, or waking the device (tapping power to turn on the screen)? Booting every 30 sec is not practical since the boot process takes longer than that, if you meant every 30 minutes, then you are better off leaving it on.

@acejavelin Waking the device is not booting, as no init, and kernel start takes place. I agree it is impractical, but if it saved energy (which is doubtful after answer from GiantTree), I would do it

Giant tree's answer is correct... Booting the device takes a significant amount of power by comparison... Depending on the device, a properly sleeping device could probably run up to an hour on the power it takes for the 1-2 minute boot process and the necessary syncs and checks afterwards.

Yes, booting the device is very expensive in terms of power consumption.
Many reads from the storage and lots of computation needs to be done when booting the device so that you need considerable off time to justify turning it off.
Android's power conservation features (deep sleep, dozing etc) allow you to keep your phone turned on all the time and still consume less energy than booting it freshly.


text:
Flashing seems not possible
I own an Samsung Galaxy Tab Pro 10.1 wifi (picassowifi). I flashed the recovery with TWRP and installed CyanogenMod 10 on it. After a couple of months I tried installing a nightly update for CyanogenMod but after that I couldn't boot the tablet anymore. It just crashed after displaying the bootanimation. Now I want to reinstall the old version of CM.
But there are a couple of problems that occured:

I can't connect to the tab via adb
When I tried installing CM from a zip, installation fails with "E:
Unable to mount /system"
/system can't be mounted in the Mount-Menu of TWRP

I tried formatting the internal space, but it had no effect.
I read that "E: Unable to mount /system" could be solved by flashing a new recovery or switching to ClockworkMod. But flashing with heimdall also fails:
root@Ubuntu:~# heimdall flash --RECOVERY twrp-2.8.7.0-picassowifi.img  --no-reboot
Initialising connection...
Detecting device...
Claiming interface...
Setting up interface...

Initialising protocol...
ERROR: Failed to send data!Releasing device interface...

root@Ubuntu:~# heimdall detect --verbose --usb-log-level debug
[timestamp] [threadID] facility level [function call] <message>
--------------------------------------------------------------------------------
[ 0.002649] [00000af8] libusbx: debug [libusb_get_device_list]
[ 0.002746] [00000af8] libusbx: debug [libusb_get_device_descriptor]
Device detected
[ 0.002799] [00000af8] libusbx: debug [libusb_exit]
[ 0.002818] [00000af8] libusbx: debug [libusb_exit] destroying default context

root@Ubuntu:~# heimdall print-pit --verbose
Initialising connection...
Detecting device...

            length: 18
      device class: 2
               S/N: 0
           VID:PID: 04E8:685D
         bcdDevice: 021B
   iMan:iProd:iSer: 1:2:0
          nb confs: 1

interface[0].altsetting[0]: num endpoints = 1
   Class.SubClass.Protocol: 02.02.01
       endpoint[0].address: 83
           max packet size: 0010
          polling interval: 09

interface[1].altsetting[0]: num endpoints = 2
   Class.SubClass.Protocol: 0A.00.00
       endpoint[0].address: 81
           max packet size: 0200
          polling interval: 00
       endpoint[1].address: 02
           max packet size: 0200
          polling interval: 00
Claiming interface...
Setting up interface...
libusbx: error [op_set_interface] setintf failed error -1 errno 71
ERROR: Setting up interface failed!
Releasing device interface...

So my question are:

(How) can I fix this?
Is there any other way to flash the recovery in this kind of environment?
Maybe manually with the Terminal from TWRP?

I fixed the libusbx error
libusbx: error [op_set_interface] setintf failed error -1 errno 71 by following these instructions:
 echo "blacklist cdc_acm" >/etc/modprobe.d/cdc_acm-blacklist.conf
 rmmod cdc_acm # ignore ERROR is not currently loaded

After that the "Setting up interface..." step passed well for me.

This solution fixed the problem for me. Using model SM-T580 and Heimdall 1.4.1 on a Debian based OS.

Fix is not too much tough.

You need to download Odin ( It is tool like Heimdall , but has good control. It is Windows software. ) and drivers for your device.
Now need to open download mode. Place the tablet into Download Mode by pressing and holding Volume Down, Home and Power buttons together until a construction Android robot icon with a warning triangle appears on screen. Now press the Volume Up button to enter into Download Mode.
Launch Odin on the computer as an Administrator. Connect the Galaxy tablet to the computer using USB cable while it is in Download Mode. Wait for some time until Odin detects the device. When the phone is connected successfully, an Added message will appear under Odin message box. You should also see the ID: COM box in Odin will turn blue with the COM port number indicating successful connection.
Now click on PDA button and choose your recovery. Click start and wait to show pass.
Now you have TWRP as you asked.

Here is more suggestion, if this even fails to flash or something you feel going more worse. Then you will be needing stock rom to flash by using Odin in download mode. You can search for that on net. After that you can flash again your CyanogenMod rom.
NOTE: It is never recommended to flash any nightly build rom. So, please be careful before going to do like this in future. The reason behind this that nightly builds are not matured and may be some major bugs that has to be fixed.


text:
Make all new chrome Windows incognito
Is there a way to make all new Google chrome Windows on my Android be in incognito mode? Thank you!

Might help: How can I automatically clear my browsing data when I exit Chrome?

For android you need to have your phone rooted. Then you can go ahead and install IncognitoTab in xposed modules and it will work. If you want private browsing without root then download another browser like dolphin or Firefox.

Refer to this website: http://www.howtogeek.com/137466/how-to-always-start-any-browser-in-private-browsing-mode/ I think it explains it better then I can.

While this link may answer the question,
it is better to include the essential parts of the answer here
and provide the link for reference.
Link-only answers can become invalid if the linked page changes

Ok but the answer you stated said for Windows. For android you need to have your phone rooted. Then you can go ahead and install IncognitoTab in xposed modules and it will work. If you want private browsing without root then download another browser like dolphin or Firefox.


text:
How to root ZTE Maven?
I have a ZTE Maven phone, and I want to root it.
There doesn't seem to be any applications that can successfully do that.
How to root ZTE Maven? Just in case it's relevant, the model number is Z812.

Might help if you at least told us the model... The generic method is unlock bootloader, flash custom recovery, flash SuperSU... beyond that, one-click root methods should be avoided unless they are specifically designed for your device, using an incorrect root method could brick your device.

Hmm... I found a thread on XDA (the mostly likely place to find a root method), but all I found was a small group of people who have been trying since August 2015 and been unsuccessful. http://forum.xda-developers.com/zte-z7/help/xte-maven-z812-t3155895 This is likely due to the new security methods in Lollipop and continued into Marshmallow where it is virtually impossible to root unless you can unlock the bootloader of the device, which doesn't seem possible on this device. (I just gave the thread a quick read, so take it with a grain of salt)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Screen capture app with audio
Does the Android OS allow for screen recording with audio? Is there an app that can do this?
I have been using android debug bridge to capture video of the screen, but that comes without audio.
I have tried a couple apps , but have not found any that do audio. I found one that uses the mic to record the speaker, which is obviously pretty crappy.

What is the source of audio? an application in your Android or something other than your device?

To create promo videos of my apps, I use ScreenRecorder. It allows you to record with audio and maintains screen orientation of the app being recorded. I don't think your device has to be rooted. It has a high rating and over 10 million downloads.

If your phone doesnt have an internal recording support then I have an easy alternative.
Okay! This ones pretty simple, there are only 2 things you need:

Earphone With control button
Strong Clip

Before you record you will need to clip the button(Make sure the button is clicked) to your earphones. It will promp you to a google assistant but clicking away should avoid the problem. After that enable the sound recording to your Screen recorder software and it should record your device's internal audio without any of the outside noise.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
NFC battery draining through constant use
Does putting a device that constantly checks/uses NFC affect/drain the battery? One example is Dimple IO which puts NFC buttons on the back of your phone.

 The Tag Dispatch System of Android Developers  says

Android-powered devices are usually looking for NFC tags when the screen is unlocked, unless NFC is disabled in the device's Settings menu. When an Android-powered device discovers an NFC tag, the desired behavior is to have the most appropriate activity handle the intent without asking the user what application to use.

Therefore, your device is scanning for NFC tags, when the screen is on , so power would be used.
My guess , is that this power consumption would be low, and not cause a drain on battery, since

NFC is low power meant to exchange information within 5 cms
NFC is active only when screen is on
Since the tag information may remain unchanged, it may not require frequent polling
NFC isn't quoted as a battery hogger in the battery drain culprits list (subjective)

Specific to your question, it would depend on

How well the app optimises power ( it is not compatible with my device to see behaviour)
NFC chip level power consumption used in your device
How doze optimises (if using Marshmallow)

I would think that power consumption would be negligible, but it is a good idea to verify using an app like  GSam Battery Monitor to see the actual power consumption and you could post your findings as an answer
Edit: Answer to Does NFC drain power if tag is attached constantly? on Electronics SE gives good technical reasons for why the consumption should be low


text:
How to prevent Internet access in NetGuard, "Allow" checkboxes greyed out
In Android 6, I want to prevent some apps from using the Internet, so I installed NetGuard. Let's say for instance that I want to prevent Sky Map from accessing the Internet. Where should I click?

As you can see, Allow Wi-Fi when screen is on and Allow mobile when screen is on are greyed out for some reason, I don't know whether it is normal or not.
Unchekcing Apply rules and conditions does not prevent Internet access to the app.

Rooted CyanogenMod13

As you can see, Allow Wi-Fi when screen is on and Allow mobile when screen is on are greyed out for some reason[.] I don't know whether it is normal or not.

They are greyed out because you choose them to be so.  Under Settings, you would be having the following highlighted entries enabled which acts as global default for every app.
(Click image to enlarge)

[Unchecking] Apply rules and conditions does not prevent Internet access to the app.

Because it doesn't work like that. Since you're currently using NetGuard in blacklist mode, in order to prevent an app from accessing Internet, tap on the network icons next to the app's label.

Tap on the Wi-Fi icon to prevent app from accessing Internet over Wi-Fi
Tap on mobile data/network icon to prevent app from accessing Internet over mobile data

Once you tap on a network icon its color would change and the corresponding but previously greyed entry would be made available for change as well.
(Image courtesy of Marcel Bokhorst at his GitHub)

You can use official help for more information on NetGuard's usage.


text:
Recovering pictures from Internal storgae
We have an Android Verizon Ellipsis Tablet QMV7A.  We deleted our pictures and videos but desperately want them back.  They were not on an mini SD card, but on the tablet's internal memory.  When we connect the tablet to a PC is shows up as QMV7A and has a folder under that labeled "Internal Storage" with subfolders "DCIM, Videos, etc."  So the PC sees the internal storage, but no recovery software I have recognizes the internal storage.  How to I scan and recover files from the internal storage when I can't get programs like Card Recovery or others to recognize it?   Running Android 4.2.2 Thanks a ton.

Android Data Recovery can recover your deleted/formatted files from Android devices without taking out the SD card or CF card inside the Android phone or tablet. This program has a strong ability that not only can recover photos and videos, but also can recover contacts, text messages, and other data. You can download it from the play store.
I'm not sure if you've used backup photo apps but generally speaking Google photos automatically backup your photos. Try sending a text message and adding a photo as an attachment  it'll bring up a menu and it might show the places that your photos are saved to, you can also try downloading a file manager like ES and look for them there. Hope this helps.

Thanks Russlee.  I have tried that software and it does not seem to want to recover from the Internal Storage.  Only the SD card.  The internal storgae was were the tablet was saving the pictures.


text:
My location keeps turning on and I need help
I think my boyfriend is turning my location on somehow. I work and he distrusts me and he has asked me if I was at certain places and I am confused as hell. I need help figuring out how he would be able to do that if we arnt on the same plan. HELP MEEEE

The easiest and most important thing you need to do is go onto Play Store and download a "root checker" or "root verifier". Assuming you haven't rooted (jailbroken) your phone yourself, you can presumably tell if your significant other (or previous owner of the phone) has rooted your phone to gain access to all of your daily info. This would entail that your partner is computer-savvy, but there are other ways, too. If you bought the phone off ebay, the seller could have installed spyware on the phone as well (has happened before).
Other things to check are plain-sight tracking apps installed on your phone. Go into Application Manager and delete any apps you don't recognize. Also go into Settings > Security > Device Administrators and remove the rights from any apps you don't recognize (except for Android Device Manager). Most easy-to-use tracking apps will show up in that list.
Other than those two scenarios, there wouldn't be any way for a person to track you on the phone, unless they work for the CIA.
Hope this helps


text:
How to tell if an app used the internet for local file transfer?
My friend uses Send Anywhere to transfer files between her Android phone and tablet. The tablet connects to the internet through a hotspot from the phone.
The app is supposed to transfer the files locally, without using the Internet, but now my friend is claiming  that her SA transfers ate up her whole cellular data pack.
How can we confirm this or rule it out?
We have Opera Max, and I think maybe native Android features as well, which tell us how much data each app has used, but the problem is that they can't tell the difference between data being transferred locally to another device on the same WiFi network, and data actually being transferred over the internet. The same thing goes for the Xposed module Network Speed Indicator.
Things I have thought about:

Looking at the transfer speed: Depending of the speed of ones Internet connection, the speed may differ when local connection is used and the internet is used.
Checking the remaining cellular data allowance from one's operator before and after a transfer.

I have already tried both these approaches on one or two occasions, and what I found is that the transfered happend locally, without the Internet being used for anything other than the innitial "handshake." But the problem is that my friend is now claiming that Send Anywhere comsumed her whole cellular data allowance. If my friend is correct, it would mean that the app is unpredictable and may sometimes use the Internet even though both devices are on the same network (they would have been, my friend has only her one cellular connection and nothing else.)
This is actually not impossible. For example, another app called Airdroid, with some similar functionality, sometimes fails to get a local connection between a hotspot hosting Android device and a connected desktop computer. It then warns me that the two devices are using the internet to connect to each other. However, this only happens sometimes, and refreshing the web app on the desktop device usually solves it.
A similar bug with Send Anywhere may occur, but, like Airdroid, it may only happen occasionally. (It also might not warn me about it, like Airdroid does.) Therefore, it may be difficult to reproduce at any given attempt. Thus, I would like to monitor over an extended period of time how much data each app has used, in a similar way to what Opera Max dues, but I need to be able to distinguish between local data and actual internet data. Opera Max doesn't distinguish. If such monitoring is going on on my friend's device(s), I can be able to see whether it's actually true that Send Anywhere consumed her cellular data allowance.
Any advice?
The devices are both running Android 5.1. The tablet is rooted with Xposed, the phone is not rooted.

This is a common thing. If the cellular data is turned on in the sender device(which creates a hotspot), then it is a wifi which is available to the connecting devices.
An android phone would consume large amount of data in wifi than in a cellular data. So it can be suggested to turn of cellular data while using the specified app.

This doesn't answer the question at all. This should be a comment. We want the tablet to have internet access. (At least we don't mind). But we don't want that internet access to be used for large file transfers that are supposed to happen locally. This question isn't even about how to avoid the internet being used. This question is about how to detect whether an app did so.

I am not having the option to make comments i.e. Im not having enough reputations.

That's alright, but you should still not make answers that don't answer the question. By the way, the app in question requires internet access for the initial "handshake".

It is not possible to detect the internet consumed by other devices in the device which has provided the internet. I am clear with my answer. Please read it again.

First of all, I don't know what you mean by "detect the internet consumed by other devices," but in a lot of senses that is indeed possible. Secondly, even if it wasn't we could also use the guest device to investigate the situation. And no, your answer comes nowhere close to answering the question posed in OP. Please, let's wait for someone who has more knowledge of the subject matter. By the way, I'm in India. Cheers!

Sorry for my wrong wording. It is not possible to identify the internet consumed by other devices in the device which has provided the internet.

Depends what you mean. It is indeed possible to see how much data the device has consumed. I'm guessing that tools also exist (with root maybe) to see which IP addresses the guest communicated with, how much data was transferred to each, etc. It may even be possible to eavesdrop on unencrypted data the guest sent/received. This being the case, your statement is patently false. Anyhow, let's not clutter up this place with more comments, but let's rather wait for some more knowledgeable users to come along.


text:
Sim card not detected after installing CM13 (unofficial) on xperia l
i'm new to android. I recently bought a xperia l phone from my friend in which he had Cm11 installed i decided to upgrade to cm13 and it really messed up the phone.. the sim card was not detected and play store didn't work!!! so i came back to cm11 which then entered boot loop. So i decided to go with cm12.1. Now the pay services work like charm... BUTTTT sim not detected problem still persists!!! so can some one here gimme the link of the radio or modem files of xperia l c2104 or help me with any other solution for this problem... thanks in advance

http://forum.xda-developers.com/xperia-l Have you searched here?

Yes i did, but not much help from there as no one having xperia l had that problem. I installed various radio.img files and worse things happened. After i asked the question above the phone just got hard bricked!!!!! can u help :( :(

Sorry. I have not handled hard bricked devices before.

It is normal that the play store crash (you need to flash openGAPPS according to your new flashed OS). How have you flash CM12/CM13? Have you performed a full wipe (Dalvik Cache + System + Cache + Data) before the installation?

Did you check if you have the latest modem/baseband installed?

Your baseband was messed up. Try to flash the stock ROM and don't flash CM13.
This happened on my Samsung Galaxy A3, when its baseband was messed up when I try to install it.

Yea flash stock rom of xperia...(model)..via download mode...
You need PC
Qpst installed on it&
And to go in download mode press volume+&volume- then connect the USB cable


text:
What does the ROM files (FACTORYFS, HIDDEN, CACHE, PARAM, etc.) mean?
Flashing my Galaxy S 2 i9100 (after breaking with CyanogenMod update CM-13.x) I used the following command:
sudo heimdall flash \
    --FACTORYFS factoryfs.img \
    --CACHE cache.img \
    --HIDDEN hidden.img \
    --MODEM modem.bin \
    --PARAM param.lfs \
    --BOOT boot.bin \
    --SBL1 Sbl.bin \
    --no-reboot \
    --KERNEL zImage

Question
I'm wondering what's the role of the different files?
update: I encourage you to use CM-12.1 instead of CM-13 for your i9100 as the later is not officially supported.

HIDDEN is the preload partition

From [INFO] What the ROM files mean

boot.bin This is the Primitive Bootloader. Seems to make some basic
  initializations and finally loads the secondary bootloader.
Sbl.bin The Secondary Bootloader. It loads the PIT, the Linux kernel,
  params.lfs and the modem. It also is responsible when the device is
  charging while it's off. This file contains the picture you see when
  in Download-mode. So it's also responsible for the flashing stuff and
  getting into recovery.
The Sbl.bin seems to be there twice. The second one may be for backup,
  if something bad's going on.
param.lfs A collection of JPEGs. These include the Galaxy S-Logo you
  see first when booting the phone as well as the phone-!-computer
  picture, the loading spinner and some pictures of an Android giving
  some information: "CP CRASH UPLOAD MODE", "FORCED UPLOAD by KEY
  PRESSING", "POWER RESET or UNKNOWN UPLOAD MODE", "USER FAULT Not
  KERNEL PANIC UPLOAD MODE" and "KERNEL PANIC UPLOAD MODE". And there is
  the Logo of NTT docomo, which is a Japanese mobile operator company.
Maybe there are more information in this file, but I didn't extract
  it.
The rest of the files should be rather obvious:
zImage is the Linux kernel.
recovery Backup Kernel. Don't know if it's
  used on every device.
factoryfs.rfs is the System partition with the
  Android system.
dbdata.rfs is the partition where the app data get
  stored.
cache.rfs is for Dalvik cache.
modem.bin is the Modem.

From How to Use Heimdall – specifically on Samsung Captivate – Download 512 513 and 803 PIT files

IBL+PBL is the boot loader, be extra careful with it;
PIT is the partition table;
EFS contains some important data like IEMEI, be extra careful with it;
SBL is the second boot loader;
SBL2 is the backup of the second boot loader;
PARAM contains some images used as various stage of the boot process;
KERNEL is the kernel;
RECOVERY is the backup of the kernel;
FACTORYFS contains /system file system which is some kind of root file system;
DBDATA contains /data file system which is the database to store application parameters;
CACHE contains /cache file system which contains the Dalvik cache;
MODEM contains the firmware for the modem.


text:
Vibration not working on my android device
Vibration not working in my android device. I am currently running on android version 4.2 Jelly Bean. My phone model is Lenovo a369i.

Hi, can you explain exactly what do you trying to do? It just does not work, event for system notifications? Or just for your app?

It's not working for everything. Phone calls not vibrating, when putting in meeting mode its not vibrating. Also I checked the vibration test but its also not working. Please help

if test does not work too, the vibrator is broken, it's hardware problem...

Do you know how to fix that?

err, it is material problem... Buy a new phone...

Well i seems funny but i banged my phone for 2-3 times(top part where vibrator lies) on floor and it worked. :)

if you are comfortable with the disassembly of the devices, you might want to give a look at your vibration module. It might be possible that it is stuck or
oxidized.


text:
Still gpsd drains battery on galaxy
There are a lot of questions about gpsd drains the battery on Samsung Galaxy noteIII. Most of them, including the official gpsd page, says that it is actually another application which uses gpsd and that is the problem not gpsd itself...
Now the question, how can I find which application uses gps daemon? I know the famous ones are maps, camera. However, I am looking for other applications.
As discussed here, Spare Parts+ should do such thing, but it doesn't work on galaxy (see its related comment with reputations). I also tried Gsam. All it shows is that/system/bin/gpsd is being in used!!
It is really annoying... How can I find who is using /system/bin/gpsd
????!!!!!

As that's usually done via location services, you can watch out for related wakelocks. See How to deal with (orphaned) WakeLocks? There's a section dealing with that.


text:
Hiding Navigation Bar in Android 5+
Is it possible to hide the navigation bar in the footer along with the status bar at the top when I use apps by default in Android 5+ or do I require a fullscreen app to enable myself to do this?

Not fully from the settings, no.
I used to use an app like https://play.google.com/store/apps/details?id=com.gmd.hidesoftkeys (Whose Pro mod was epic) to hide the soft keys and swipe bottom of my screen to show them.

Are there any good options which don't require root (how do I sort root access, if I do need to go down that "route" :-)


text:
Reset Knox password
I had installed Samsung Knox on my Galaxy Note 3 and now I have forgotten its password. It is not very clear what should I do, in order to reset the password.
From the login page, when I click on the "Forgot password", it asks for an email. As I enter the mail, it says the email has not been registered.
How to reset the Knox password?

After you go to the web portal, follow the steps below:

On the My KNOX User Portal, Click on Devices and select your device.
Click on Reset KNOX Password.
Launch your My KNOX if you aren't inside it already.
Enter your new unlock code; tap Continue.
Enter your unlock code again; tap Confirm.

From To manage My KNOX


text:
Unable to locate USB debugging option
I have reset my samsung galaxy note 3 to the factory!
Currently, the android is 5.0 and I am not able to locate developer options to enable the USB debugging information. Any idea?
Model Number: SM-N900
Android Version: 5.0
Build Number: LRX21V.N900XXUEBOL2

You have to click on "About Device", then press on the Build Number field 7 times to display Developer Options where you would enable USB Debugging.


text:
Moto G external storage failing to show on Mac and other USB issues
Since upgrading my Moto G 2nd gen to OS 6.0 I am having issues with USB and file transfers when connected to 3 different Macs with different OSes which all worked OK before. Sorry this is a bit long...
When I plug it in, Android File Transfer (AFT) starts up automatically but I get an error window saying 'Can't access device storage'... I find the phone is in USB charging mode only. If I change it to MTP, AFT does then show the internal storage files, but will not show the contents of the SD card.
I have also tried PTP mode (which would be more useful) but iPhoto does not show any of the (new) photos,  which it used to before the upgrade.
Additionally sometimes the Mac appears to lock up - no keyboard or mouse control - I suspect the USB circuitry is getting locked up - even unplugging USB does not clear this. The only 'fix' is to hold down the power button to reboot.
I can see the SD card contents on the phone and can copy files on/off with OTG but this is a bit of a pain.
I've not read of anyone reporting exactly these issues.

Is SCP working? Also, is your device unlocked when connected to the usb port of your computer?

SCP? sorry not sure about that? Device does not get locked when connected or disconnected from the comp (thanks)

SCP is "secure copy" (https://en.wikipedia.org/wiki/Secure_copy)

I do not believe SCP is invoked as the device is able to write to the SD card - where should I check?

No, SCP is an external app. I was asking if you are able to transfer files from your device to your computer using this method.

Seems I have SCP installed, just working out how to use it....

I showed this to a pal of mine who uses the same setup and he had the same issue. He discovered the symbolic link to the SD card was incorrect and of course not editable for non-rooted devices. He found a fix:-

Eject the SD card from Setup>Storage
Shut the phone down
Remove the SD card
Restart the phone
When running, put the SD card back in.

This seems to rebuild the symbolic link and now I can see its contents again via Android file transfer - hope this might help others.


text:
play store rating effective measure of an app quality?
Most of the apps are rated between 4.0 and 4.6.
How can I judge an app from its rating if they are all basically equally rated?
Is there a way to make a judgement more effective?

I think that you should also check the downloads counter, and the number of people that have rated that app, in order to have a better idea.


text:
Is it possible to keep multiple address books on a single phone?
I'm trying to find a way to set up and manage multiple address books on my phone, and to keep them distinct.
I want to do that to separate my personal contacts from the work ones.
The default behaviour is to collect all contacts from my various accounts in a single big list (two google accounts and some other social networking apps), but it is a bit of a mess to have everything together. I know that the default app have a built-in group manager, but it has a bit of a clunky interface that's not very handy (whenever you open it, you are several clicks away from the desired grouping).
Ideally I'd like to have a solution that let me manage my contacts in a powerful and customizable way, i.e. with tags, custom groupings, and so on, and that let me switch easily between said groups without too much clicking around.
How can I do that? I'm also willing to consider a third party app, but right now everything I've tried still collects every contact from all accounts together.

You can use contact groups within a single address book.

Yes, I know, but the interface to navigate the groups is not very handy, whenever you open the address book you are many clicks away from it. And the main view is always made of all the contacts from all accounts, something that I'm trying to avoid. I need a more sophisticated solution.

I agree.  Hopefully someone will have an answer.  As a workaround, you can use groups with a different contact program that has a better UI and easier workflow (UX).  There are dozens to try, of course.

One app that works to create different groups of contacts is contacts plus. It is a bit of a crummy interface but works. The only way I found of doing via the native Google app is by creating different Google accounts and saving the contacts to each specific account, then signing in to an account and signing out of the other when you need to use another set of contacts.

Thanks, I've already tried Contact+ but I haven't found the option to keep separate address books. How can I do that?

No it's called contacts "plus". Contacts + doesn't work for that matter.

Did the app work?

@DevinErsoy: That's why it is always recommended to link from play store the app and also give salient features of the app that you think would help the OP. Request edit your answer

@DevinErsoy - Could you give a brief sequence of steps to follow with Contacts Plus to have two addressbooks? I did not find how. Thanks.

This might work. It's an app called DejaOffice. It allows you to separate your contacts, calendars, etc into different sections. I've used it before and it's a great app. Or an alternative is to create a different Google account for each "Profile."

Could you give a brief sequence of steps to follow with DejaOffice to have two addressbooks? I did not find how. Thanks.

I've found an app called FullContact that pretty much solved my problem. It can be connected to a Google account (not necessarily the one used for the Android phone). Its address book is completely separated from the main phone contacts app (not like, I.E. Contacts+).
So now I have my personal contacts (linked to my main Google account) in the default contact app, and my work ones (linked to another Google account) in FullContact

Could you use the address book in FullContact as "standalone"? I.e., not syncing with any Google account. Contacts would be entered by hand, and/or imported/exported via csv, vcf, etc.

I don't use this app anymore, I can't answer you, sorry.

Contacts VCF allows you to have multiple address books. You can open and edit vCard files (.vcf). Each vCard file is its own separate address book.
Contacts VCF does not usually access the main address book on the phone but you can import your contacts from there.
Since this app works with the standard file format for address books, it's compatible with other apps and PC applications.

I managed to do it with Android for work profiles. It is convoluted and pain in the ass to set up but you get 2 completely separate contacts, gmail, calendar, etc

OpenContacts works well as separate private addtessbook
https://f-droid.org/en/packages/opencontacts.open.com.opencontacts/

Yes you can have multiple address books. You could just use google account for this purpose. You can put different people in different groups and do a custom view in settings to show the items you like.


text:
Screen unlock history
I have a Nexus 5 Android phone with standard pattern-locked screen. Is there a way to see a (recent) history of when my screen was unlocked?

If you've not rebooted your Android, then you may be able to get the time stamp for the last few unlocks performed. Setup adb in PC and execute:
adb shell dumpsys activity broadcasts

In the overwhelming (possibly) output,

For stock Android 6.0.1:

locate the string Historical broadcasts summary [background].  Following it would be the summary of some historical broadcasts.
In the new given info, locate the string android.intent.action.USER_PRESENT1. One of the next few lines to every matched line would show you the time stamp of a successful unlock.
The order of matched lines would be chronological with most recent entry being the first to show up.

For stock Android 5.1.1:

locate the string Historical broadcasts [background].  Following it would be details of  some historical broadcasts.
In the new given info, locate the string android.intent.action.USER_PRESENT1. One of the next few lines to every matched line would show you the time stamp of a successful unlock.
The order of matched lines would be chronological with most recent entry being the first to show up.

A demonstration performed on Android 6.0.1:
adb shell "dumpsys activity broadcasts | sed -ne '/Historical broadcasts summary \[background\]/,\$p' | grep -A2 'android.intent.action.USER_PRESENT'"

Output:
(Click image to enlarge)

In the output,

enq: enqueueClockTime
disp: dispatchedClockTime
fin: finishedTime
I do not know what they particularly correspond to but I can assure you that one of them is what you're after, possibly the first one. The output is in consonance with the rudimentary observation performed in parallel by keeping a tab on time during screen unlock.

1 Courtesy of Chris for the answer here.


text:
How to access guest SD card
Using Droid Explorer, how to I access the guest microSD card?
In Windows Explorer, it comes up as a connected device, with a path of Computer\Acer Iconia Tab A100\SD Card\Documents
How do I get to that in Droid Explorer?
*(Windows 7 with Android 4.0.3 and Droid Explorer 0.9.0.4)

Oh - you know, this always happens.  I spend time trying to figure things out, and as soon as I post a question, I find the answer.  doh!
I found it under /mnt/external_sd/documents


text:
Disable turn on when charging finishes
When my Android phone is charging, the moment it becomes fully charged, it 'wakes up'
from standby mode. This is  annoying, because
I often let it charge at night in my room, and it wakes me up. Is there a way to prevent this from happening without powering off my Android phone? Thank you!

See How to prevent brightness when battery reaches high?

No, that's not what I'm talking about. What I mean is that it leaves standby IR turns on mode when it's fully charged.

Suppose my phone is 56% charged, and I plug it in to the charger, then I put it in standby mode, then when it becomes 100% charged, it will suddenly cease to be on standby mode for a few seconds, then it will 'go back to sleep.' This happens on my phone, and I want it to stop.

So you want your device to not end the standby mode when battery reaches 100% since it causes the device to turn on the screen at high brightness which wakes you up. Correct? Tell me please, doesn't the linked question actually tries to tackle the original problem which is about high brightness disturbing sleep?

It turning on wakes me up regardless of how bright it is. I am am one of those people who are easily woken up. Thank you, though.

A quick search on our site turns up: How do I stop my phone from beeping when it completes charging? (with further links). Another search to check. No full match, though.


text:
Android devices not allowed to connect to WiFi
I am a college student and they provide us free WiFi here . When trying to connect to the WiFi all devices connect to it instantly except Android devices. When Android 6.0 was launched the devices having Android 6.0 could connect to the WiFi , devices like iPhone , windows phone and blackberry connect easily . I have a rooted Android Phone (not Android 6.0) so i changed my MAC Address but still couldn't connect.
How does the router segment devices based on their OS ?
How can I make my Android device connect to the WiFi?

You should probably talk to your IT department. Without knowing a lot about the network configuration there won't be much we can do for you.

+1 for the @eldarerathis comment. Its possible they find Android "riskier", since they are rootable, and are perceived as security risks to the network. They may require some VPN, if they allow connections at all.

@eldarerathis the IT department told me that they have done an OS block in the network , no Android devices can connect to it. Since I have a rooted device ,  I wana know what parameters should I change in my device so that the router does not identify my device as an Android device or anything like that.

@MohitBadwal you need to change the MAC adress to one of the allowed devices (preferably an Apple one, if iPhones are allowed) and set your hostname as well (or simply don't provide one). The most important part about this are the first 3 octets of the MAC that specify the manufacturer. After that you may impersonate anything you like, you have a rooted phone after all.


text:
Swapping functions of Back and Menu hardware buttons on Samsung Galaxy S4
Samsung reverses the position of Android's Back and Menu (aka Options) buttons, when compared to almost every other device.
How does one swap the functionality of these hardware buttons, specifically on the Samsung Galaxy S4?
Fortunately, the hardware buttons have no visual indication of the pre-programmed functionality if the user turns off the LED lights for those buttons.  Thus, swapping them so the Back button is on the left should be transparent to the user.
Root and Xposed solutions are fine, if required.

What is Options' button? Can you provide a screenshot? Have you tried Xposed Additions?

@Firelord "options" button means the "menu" button here. Pre-KK devices had such a soft button. While on most devices, "back" is the right-most and "menu" the left-most button, indeed Samsung devices have that inverted. Confuses me each time someone hands me one (I always hit the wrong button first :)

@Firelord LOL.  Izzy is correct.  I always called it the Menu button, but others kept correcting me claiming it's called the Options button, so that's the terminology I originally used in this question.  I'll edit the question to use both terms. :-)


text:
Odin3 Bootloader button is greyed out
I'm trying to install the custom Rapture ROM to improve performance on my aging Note 4. I've rooted it and now in following the instructions I see I need to update my FW which involves loading BASEBAND.TAR.MD5 using Odin3. (quick link).
My problem is that even though I've downloaded the baseband and bootloader when I run Odin3 all of the buttons except for 'AP' are greyed out so I cannot proceed. Please advise.

You may want to refer to my research concerning ODIN, which you can find at http://android.stackexchange.com/q/139675/152843 . Specifically, search for the [ButtonOption] section of my answer, and edit your Odin3.ini accordingly.

In the case you weren't eager to look at the research, here's the solution.
In the same folder of your Odin executable, you'll find a file called Odin3.ini. Being it a configuration file, it defines the behaviour Odin should meet at startup. What we're interested into, though, is to examine its content, so fire up your text editor of choice and open the file.
Once opened, you'll see various sections, each marked by a [Something] label. What you need to do, is to find the [ButtonOption] label.
After you've found it, you'll see various entries under it. Specifically for your case, the section should be similar to the following:
[ButtonOption]
Bootloader=0
PDA=1
Phone=0
CSC=0
UMS/PATCH=0
USERDATA=0

Now, a 0 means that the corresponding checkbox is greyed out, while a 1 lets Odin know that such checkbox will be selectable. Since the flags' names can be confusing, here's a brief overview of their meaning:

Bootloader = BL button
PDA = AP button
Phone = CP button
CSC = CSC button
UMS/PATCH = UMS button
USERDATA = not implemented yet

You should now be able to edit the flags in order to activate the needed checkboxes. Just remember to save your changes afterwards.


text:
Forgot code to access phone. Any way to recover pictures on it?
A little while back, I passed on my Samsung Galaxy S6 to my mom. She used the fingerprint scanner to get into the device. Today, her battery died for the first time and because you can't use her fingerprint the first time after a restart and she forgot the backup password, we cannot access the phone.
I thought there was an option to reset the device using her Google account after entering the wrong code a few times, but that option doesn't appear unfortunately. I read about Samsung's Find my Mobile, and while I was using the S6 I activated it and I can find it in my list of phones when I login with my Samsung Account, but I am unable to unlock the phone with it because it says it's offline at the moment (it's online, but I assume it says that because it isn't activated anymore, I reset the phone before I gave it to my mom).
I know that I can enter recovery mode to factory reset the device. The thing is that she really wants the pictures on it. Is there any way at all for me to get the pictures from the device? If I'm correct, it was fully stock.

Could you provide more info, such as Android version and willingness to root?

What is your carrier? If you are on T-mobile or International you'll be able to flash TWRP recovery.

I have the international version. I think it's on 6.0.1 and  I am willing to root. How would I go about flashing TWRP?

Alright, I managed to get all the files of the device! Here's how to do it in this particular case:

Like suggested by someone else in the comments, I flashed TWRP to my Galaxy S6 using ODIN.
After flashing TWRP, I turned the Galaxy S6 off and I booted to recovery by holding the Volume Up + Home button + Power button simultaneously.
I installed Google's Android SDK Manager and from within the SDK Manager, I installed the SDK Platform Tools. This allowed me to use ADB.
From within the Platform Tools folder, I held shift and right-clicked an empty space to open a CMD window in that folder.
I connected the Galaxy S6, which was still in TWRP, to my computer.
In the CMD, I ussed the command adb devices to check if it was recognized. It was.
Lastly, I used the command adb pull /sdcard to pull ALL DATA from the internal storage.

Hopefully this will help others with the same question!
PS: I didn't provide any download links because I'm not sure if it's allowed. But like always, Google is your friend.

Wait here... Phone was locked and there would not be debugging mode enabled. So, explain how you passed that thing?

Well, I just used the steps I provided. I used the comments from here along with the help I got from the XDA forums where they told me to install TWRP too. I then googled how to use Adb and I pulled the data and wiped the phone afterwards. What I wrote above is all I did.

I mean here 1. How odin recognised your device. 2. If it was so then you were able to copy all the things without doing all these steps.

If it's actually safely built, then no. If the device isn't running the latest software, it's possible that you could use a security exploit to delete the lockscreen settings database, but otherwise you're SOL, I'm afraid.
If you backed the photos up via Google Photos, they might still be there. Also check any other cloud storage or backup services you may have used.
As a last ditch resort, I don't believe there's an option in a stock configuration of Android that locks you out of your phone after so many attempts, so really all you're limited by in getting into it, is your patience of trying every possible combination.

I see, that's pretty bad news... Since when exactly was the option to use your Google Account to recover your code removed? I'm sure it was there not too long ago.

@YoungStarDC I'm not entirely sure, but I haven't seen it in a while


text:
Is there a shell command to open Ethernet settings?
To open the Wi-Fi settings, one can use the following command:
 # am start -n com.android.settings/.Settings\$AdvancedWifiSettingsActivity

Is there a similar command to open the Ethernet settings as following?

@AaronGillion  I added a screenshot per your request.

Woah, that's awesome. What device is this??

@AaronGillion It is just a generic tablet.  At least many tablets support Ethernet. One could plug in a USB-to-Ethernet adapter to enable Ethernet.

@Hong Since you're asking, I assume that am start -n com.android.settings/.Settings\$EthernetSettingsActivity does not work, correct?

@DeathMaskSalesman I thought I tried it, or something similar, and it did not work. I tried it again a moment ago, and it worked.   Could you turn your comment as the answer, so I can accept it.  I was looking at this page:https://github.com/Mirkoddd/Settings.apk/tree/master/smali/com/android/settings, but could not find anything related to Ethernet.  Where can I find all the possible settings activities?

@Hong I included the method I used in the answer below. Since its output is far from being refined, you may wish to perform further research and improve my answer with your findings.

The way to launch the Ethernet Activity of the Settings, is to issue:
am start -n com.android.settings/.Settings\$EthernetSettingsActivity

in a terminal.
By the way, the method to obtain an unrefined list of all the activities in an app, is to extract such data directly from the AndroidManifest.xml. Luckily, we can accomplish this with the following terminal commands:
path=$(pm path com.android.settings)
path=${path#p*:}
aapt d xmltree $path AndroidManifest.xml | grep Settings\$. > /sdcard/SettingsActivities.txt

Now, the first line assigns to the variable path the path where to find the Settings apk. This is useful if you need to include this snippet in a script, and you want to make it portable for various Android flavors.
Line 2 sanitizes the path variable, by removing the "package:" prefix set by pm path, thus making it usable for the third line.
Line 3 does the real job: it dumps the AndroidManifest.xml of the app indicated in the path variable. It also filters the output, in order to consider only the lines which contain "Settings$", and then outputs the result, saving it to a file with an arbitrary name (here SettingsActivities.txt), for further examination.

Thanks a lot for the extraordinary elucidation!  I tried those commands, but got /system/bin/sh: aapt: not found.

Yeah, your device may be one of those that doesn't ship aapt by default. You'll be able to address this issue by downloading the first aapt from http://www.izzysoft.de/ftp/local/android/ , unpack it, and install it on the System partition by following the info provided in the readme.md file (by the way, that site belongs to Izzy, famed Android SE moderator).

Thanks a lot!  I am all set.  Since I may do this for different devices, I pulled settings.apk to my computer and used Android SDK's aapt to extract the information based on your tip.

"There is no such activity in standard Android"


text:
How to flash a rom on an entirely blacked out phone (s5 mini G800H)
Three or four months ago, whenever I tried to connect to Play Store or my gmail account etc. my phone returned a network related error message, which happened after I made a factory reset. Some games encountered errors too.
I tried to flash a rom from sd card, but it did not install even though it said that installation was successful. Odin doesn't recognize my phone, and there is no root, so rom installer won't work because I can't install custom recovery without root (correct me if I'm wrong).
In this desperate situation of mine is there at least something I can do (except buying a new phone)?

Custom Recovery can be installed without root.
If you have Samsung Kies running while the phone is connected to PC, chances are high that it interferes with Odin. Disable Kies
Try the following method that makes use of adb commands through a commmad prompt from PC instead of using Odin.

Download TWRP recovery for S5 Mini from here -> TWRP Recovery
Make sure USB drivers are installed.
Download 15 sec ADB installer
Rename the downloaded img file to "recovery.img" and move this to the ADB folder that was downloaded earlier. Make sure you have ADB.exe, fastboot.exe and the recovery.img in the same directory
Enable developer options and USB Debugging in your device
Connect the device to PC. Make sure device is detected. If not re-install the correct USB drivers.
Once device is detected, open a command prompt and change location to the ADB directory. Issue the command "adb devices". This should give your device ID as the output.

Executive the following commands carefully:
"adb reboot bootloader" - the device will reboot in fastboot mode
Once device shows up fast boot screen, type " fastboot devices " and make sure device ID is listed
Type "fastboot flash recovery recovery.img" . this installs the TWRP image into the device. If successful you will see an Okay message in command prompt.
Issue command "fastboot reboot" and wait for device to reboot normally. Once this is done you can try the key combination to boot into recovery. If everything went well you should be greeted with the TWRP recovery instead of the stock Android recovery.
Once this is done. You can root your phone/install the ROM.zip file using the TWRP Recovery
Hope this helps.


text:
Trying to install cyanogenmod on nexus 7 but can't get into Team Win Recovery Project
I have followed the steps from How to Install CyanogenMod on the Google Nexus 7 (Wi-Fi, 2012 version) ("grouper")

If you are not already in recovery, boot to recovery mode now.
  Hold Volume Up, Volume Down, & the Power button. Continue to hold all three until the screen flashes, then release all buttons.
In Team Win Recovery Project, select menu choices by tapping on the appropriately labelled button.

After #4, you are suddenly supposed to be in team win recovery project. But I'm not. I am in the menu that gives you the options "start, restart bootloader, recovery mode, and power off".  If I choose recovery mode, I see a picture of an android and his chest/belly is open with a red triangle.
How do I get into team win recovery project?
Alternatives are also welcome. Hand holding will be needed though... I'm a noob to mods.

You can use command adb reboot recovery .

Since your recovery is broken. You should use the other part of the tutorial. Installing a custom recovery using fastboot

A nexus? If I remember right, spam buttons. It sometimes works

Spam buttons? I don't follow

When I type adb reboot recovery, I see an image of an android with his chest open and a red triangle with an exclamation point @VivekJi

I went through the tutorial from top to bottom @RahulParashar. So I completed that section before moving onto "Installing CyanogenMod from recovery"

You can try to do it through command line from your PC.
Install adb drivers in PC 15 seconds ADB installer
Download the TWRP img file for Nexus 7 from twrp website TWRP for Nexus 7
Rename the downloaded img file to "recovery.img" and move this to the ADB folder that was downloaded earlier. Make sure you have ADB.exe, fastboot.exe and the recovery.img in the same directory
Enable developer options and USB Debugging in your device
Connect the device to PC. Make sure device is detected if not download the USB drivers.
Once devices is detected, open a command prompt and change location to the ADB directory. Issue the command "adb devices". This should give your device ID as the output.
Executive the following commands carefully:

"adb reboot bootloader" - the device will reboot in fastboot mode
Once device shows up fast boot screen, type " fastboot devices " and make sure device ID is listed
Type "fastboot flash recovery recovery.img" . this installs the TWRP image into the device. If successful you will see an Okay message in command prompt.
Issue command "fastboot reboot" and wait for device to reboot normally. Once this is done you can try the key combination to boot into recovery.  If everything went well you should be greeted with the TWRP recovery instead of the stock Android recovery.

Hope this helps.

Followed your instructions and got it working. Seems like the trick was to rename the image file from whatever it downloaded as to recovery.img? That did the trick!

great to know that!


text:
How to move files(including apps) to an adopted sd card directly from PC?
I don't really know how to make a title for this and it might be somewhat far and my english is not on point but please understand.
I have a 16gb SD card that is formatted as an adopted internal storage and an internal of 1gb (4gb originally, but OS occupies 3.4gb or something and built-in apps [which I can't move to the adopted. I don't know why]). My ways of getting data onto my phone is via the USB cable to PC/Laptop, but since the PC/laptop can't read the SD card, it only shows the 1gb internal. Let's say I want to move a larger file; 2gb, how can I make it possible? Any more ways to move files?

Anyways, Shareit (a file-sharing app, available on pc) is my last resort but I feel that via the USB cable is faster.
Device: Lenovo A7000-a
Android 6.0 (just updated. Reformated everything since apps cant be read because all my data(including app data/files/obb) was on the sd card and it needs to be an adopted to be capable of reading app files.)

Out of curiosity: is reverting to Lollipop not an option?

I'm not really techy and, to be honest, I don't know how to revert back, and I fear that I will just destroy the device. The system updated and I thought it may be best because (maybe) future updates will be on about Android M, leaving Lollipop to be somewhat abandoned.
Again, I'm not techy and I probably don't know what I'm talking about. Sorry about that.

So your SD card has a certain format. This allows it to be used for apps, but the downside is your Windows doesn't see it. In theory a good driver should present the SD card over MTP, but that's wishful thinking.
The best way to access your SD is via adb. Install adb on Windows and push your files over USB. This requires typed commands in a shell.
You might also be able to see your SD when connecting your phone to a Linux system.

First thing you need to do after selecting sd card as internal storage: Go to settings then Storage and sd card. Open menu and tap migrate data. This will Transfer app data, books etc to sd card from internal storage, making sd card as default write basically. Also you can access SD card now. Cheers! Lenevo A7000 user.


text:
SD CARD ENCRYPTED
I had my SD card encrypted on not 4 my brother turn off my administrative user which delete and rest the password. So he reset to what he thought it was. Now I can't get the SD card to give me the data. How do I retrieve my data. Is it possible?

Unfortunately that probably deleted the files in the SD card as well. If that is true there is no fix.


text:
How to keep the phone unlocked when it is connected to a known WiFi network?
I am using Moto G2. I would like to know if there are any means of keeping the phone unlocked when it is connected to a known WiFi network.

Use the location in Smart Lock. That should work.

If your device is rooted with Xposed, you can use Gravitybox to do this. Been doing this for few years now

I don't think Smart Lock allows Wifi as an option - at least it doesn't on my S7. I do recall when I used to own a Moto, that Moto had some of its own smart actions, but don't know what happened to those proprietary apps of late.
Some neat tips - I do realize you have the G2, not the OG.
http://phandroid.com/2015/08/05/moto-g-2015-first-things/
You can try to use Trusted Places if your device can find your location easily enough - or - use Trusted devices if you have a Bluetooth device you can set up such as a speaker or on your PC.

Delayed Lock might work for you. I've been using it for years and it's done an excellent job of unlocking the phone when connected to chosen wifi networks. https://play.google.com/store/apps/details?id=de.j4velin.delayedlock2.trial

Link answers are not great because one has to click to look at them.  And they can become invalid if the link disappears.  You could improve your answer by detailing the essential steps here.


text:
(Why) is it required to flash in order to install Google Play on CyanogenMod?
Is it required to flash in order to install Google Play on CyanogenMod? If so, why? Or is there a method to install Google Play on CyanogenMod without flashing?
In comparison, other app stores such as F-Droid or aptoide can just be installed as APK, so I am wondering.
I am not wondering about why one needs to install CyanogenMod and the google apps separately, I know it is due to licensing issues.

You may find an answer at http://android.stackexchange.com/questions/123358/whats-the-difference-between-flashing-gapps-on-system-partition-vs-installing-f . As @Firelord pointed out, there shouldn't be any difference in terms of functionality between a GApps package installed as system and one installed as user.

As can be seen here, an answer has already been found. It appears that the only thing that justifies an installation as system app, for the Google Apps, is to make them unable to be uninstalled via the package manager (since you need root privileges to alter the System partition). As Firelord pointed out in the above answer, there appears to be no further difference in terms of functionality.
If you're wondering about why you're asked to flash CyanogenMod and the GApps separately, instead, I can respond that, due to license issues, the developers aren't allowed to include the GApps directly in a CM package.

A third-party and ordinary app can have multiple apps sharing the same UID. Example: Automate app from Llama. Your answer isn't convincing. Please provide correct and verifiable facts.

I have no proof for what I claim, since I didn't test the effective functionality of a GApps package installed as user. Since it already seems to be an answer that may address this question, I propose to delete my answer altogether, and point OP to the other question.

There actually is an important feature only available to system or trusted apps: the ability to install other applications without enabling the "Unknown sources" option. I think Play Services relies on other system-level permissions as well, but I don't know any off the top of my head (/cc @Firelord)

@eldarerathis I though of that too but then I also wondered why flashing is needed in particular? Why not just put the apk(s) into an appropriate location under /system and reboot the device. Would it not work?

@Firelord  I think that would also work. If I'm remembering right, that's how many of the Play Store installation guides for the Fire TV Stick explain it, because it has no custom recoveries currently. Flashing is usually just easier, I suppose.

Please don't mix things from Cyanogen OS with Cyanogenmod. Cyanogen Inc. is in charge of Cyanogen OS the commercial variant of Cyanogenmod, while Cyanogenmod itself is maintained by the community/volunteers.


text:
one plus one update from 5.0 to 6.0
I'm update my device (one plus one) to 6.0 and it works fine
but I cannot open caller and make call , also I cannot send sms (message)
my contact numbers & text message  sometimes disappeard.
I don't know what is the problem?
android version: 6.0.1
cyanogen OS version : 13.0-ZNH0EAS26M

I made reset factory to my android device , and It works fine


text:
Is there a way to show OTP messages on screen without opening OTP messages?
I am having problem switching between apps when using banking apps or online transaction on android phone when they sends OTP and I need to enter the OTP code.
Sometimes when I switch to inbox to read and remember the OTP code, When I move back to the browser page to enter the OTP, the page gets reloaded and either it sends OTP again or triggers invalid page as the page gets reloaded.
I need some way to show the OTP code on screen as soon as the message arrives in inbox so I can see and enter the code without switching between apps. Can someone help please?

Amit, multiple things here: first, asking for app recommendations is off-topic on Android.SE. But while this could be re-phrased into "how can I" in your case, it's the underlying issue to be aware of: You should not use the same device to receive OTP codes where you do the banking itself! That's a huge security risk. Hackers could intercept the code. Malware would have easy game this way. So a safe solution to your issue would rather involve using a second device.

Try Multi Clipboard and OTP Viewer. While this does Multi Copy or is a Clipboard manager, This also reads One time Passwords and show on a floating widget that actually resolves your issue.
Since you want to use OTP codes without switching to inbox, this app shows the OTP message in a floating widget and the code floats on screen as soon message arrives in your inbox.
Note: I'm affiliated with the company CV Infotech which has developed this app.

Try FreeCharge app. It can detect OTP without opening messages. You can pay mobile bills, electricity bills, DTH and much more using this app.

You can try using third party SMS manager apps like SmartSMS
It claims to have OTP Copy on notification shade, Moreover I've used this app so I guess it will be useful to you as well


text:
How to share my mp3 collection with my family's android devices?
I have a collection of CDs that I ripped to mp3 to listen on my android phone. My kids want to listen to some of them on their android phones as well. Is there a way to share my mp3 collection with them so they can also play them on their own android devices? Is there a way to create a family library of mp3s for sharing across all the family's android devices?

Have you tried with UPnP? Do you want access limited to local network?

Why the downvote? If you're going to downvote, please give a reason as I don't understand what the problem is

@Firelord I don't know UPnP, can you give a link to recommended UPnP programs for this issue? I don't mind if access is limited to our local home network or not, but the only people I want to share the mp3 collection with are my kids and my wife and they can access our local home network. Does that answer your question?

Try something from here. You would need to run a UPnP/DLNA server in your own device and run UPnP/DLNA client on your kids' devices. If the server is setup correctly and devices are in same network, the client would detect the server and make available the collection immediately. I think BubbleUPnP has the capability of both server and client.

Exactly as @Firelord says: BubbleUPnP is what you should check first, for both ends. Install it on the device you've stored the MP3 files to, have it scan them and share them. Then install it on the "clients" (your kids' devices), and have them add that "server". Go one step further, install it to another device, and decide what title to play on which device :) // Of course you could also install a "media server" on your computer, *BubbleUPnP can work with that as well.

The first thing that comes to mind is network-based sharing. A common solution is Plex.
Ideally you would install Plex Server on a device that is on 24/7, like a NAS/router/home server. Then install Plex Clients on each device and connect with the Server.  The added advantage is Plex allows connections from over the Internet if you configure it to do so. So you can access the songs from work/school/car etc.
If you don't want to set up the full-time Plex Server, but just share from your phone over LAN, then you can also use the Plex client on your phone to serve the files. But using the client to serve means it is UPnP, so not easily accessible over the Internet. (You can't install Plex Server on Android OS).
TLDR; install Plex clients on all your devices. This solution is not free. If you just want LAN sharing, there are free DLNA apps like bubbleupnp. I personally use a Servers Ultimate server with Ginkgo DLNA clients. Ginkgo is very small if your family just want to consume your content.


text:
Run adb command inside the terminal emulator or programmatically without root
Is there a way to run theadb backupcommand on the device itself without using a ᴘᴄ computer ?
Of course when I try to do it,adbcomplains the daemon isn’t started and it fails to find a device.
u0_a192@klimtwifi:/ $ adb connect localhost:9999
* daemon not running. starting it now on port 5038 *
* daemon started successfully *
unable to connect to localhost:9999:9999
u0_a192@klimtwifi:/ $ adb connect localhost:5038
connected to localhost:5038
u0_a192@klimtwifi:/ $ adb shell
error device not found
u0_a192@klimtwifi:/ $

Addressing Revision 4
You're still doing things incorrectly even though I noted in revision 1 of my answer that you would need adb in PC for once and once alone as long as no reboot or disabling of USB  debugging occurs.
Regarding your attempt:
u0_a192@klimtwifi:/ $ adb connect localhost:9999
* daemon not running. starting it now on port 5038 *
* daemon started successfully *
unable to connect to localhost:9999:9999
u0_a192@klimtwifi:/ $ adb connect localhost:5038
connected to localhost:5038
u0_a192@klimtwifi:/ $ adb shell
error device not found

adb connect localhost:9999 didn't work because you didn't do adb tcpip 9999 from a PC. The said command would set the property service.adb.tcp.port to specified port which in turn is read by adbd when it is started/restarted and used to listen for connections.
adb connect localhost:5038 didn't benefit you simply because either you got confused or  failed to understand the basics I noted in revision 1 of my answer.
First, clear up any confusion. Just because the term daemon is mentioned doesn't mean that it is adbd. A daemon can be for lots of things.  A description of protocol between adb clients and server is noted here. A good understanding of how adb client-server-device/emulator communication occurs is noted here. You're requested to read all the documents to gain understanding of how adb works.
Now, here are the details for your attempt: When you did adb connect localhost:9999, you actually instructed adb client in your host Android device to connect to a slave running adbd listening on 9999. Your adb client tried to look for adb server on your host Android device. Because it didn't find the server running, it started a server and bound the server to port 5038. Nowhere you instructed adbd to listen on port 9999 or even 5038. You can confirm this with root access. Do su -c 'netstat -natup' and you would find adb not adbd listening on port 5038 after execution of your command.
It should now be clear why adb shell resulted in the error.
I should stress that it is futile to even think about running adb client related command on a device without access to PC for once or without root access. I have already noted the procedure in regard to PC in revision 1. If you do have root access and still need to use adb on device then do:
su 2000 -c 'setprop service.adb.tcp.port  PORT'   # choose PORT greater than 1024.
su -c 'stop adbd && start adbd'                   # this would stop and start adbd.
su -c adb connect localhost:PORT                        # you shall now be connected and would be required to accept fingerprint to authorize USB debugging.

(Click an image to enlarge it)

Edited Revision 1
Looking for this?

You're doing things incorrectly. First, a bit of basics:

adb is a bridge which helps in communicating with a slave (an Android device) from a client on host machine (typically a PC) through a server running on host machine.
A slave has a daemon named adbd which has to running in order for slave to communicate back.

When you attempt to run an adb command which requires an Android device for desired output, the adb server expects a slave connected to host using USB. Since no Android device is connected to your Android device through USB, you get error: device not found. If you connect an another Android device through OTG and have USB debugging activated there, you would/might be able to run adb successfully. At least I was able to.
A simplest workaround is to have adbd listening on TCP as well. In that case, you can connect to localhost and get the job done. There is no way a process with ordinary privilege in Android can restart adbd  to listen on TCP. The official way on stock Android is to do adb tcpip PORT from host machine. In this case, you would need a PC with adb setup there. Connect the device to PC and execute from PC, the command:
adb tcpip PORT   # PORT is port number in your device to listen for and establish connection on TCP. Default port is 5555. Choose a PORT greater than 1024

You can now unplug the device. As long as you don't reboot the device or disable USB debugging from Developer options, adbd would continue to run and listen for connection on your supplied PORT.
Don't worry about security. While adbd would receive connection from local Wi-Fi network, one cannot successfully connect to your device unless you authorize debugging by accepting their fingerprint.
Anyhow, in your terminal emulator, execute
adb connect localhost:PORT

You would be required to accept a fingerprint. If you followed instructions carefully, you would get the output:
connected to localhost:PORT

Now you can run your backup command. But honestly, it is not clear to me what you're trying to achieve. If backup alone is the goal, then Helium app might be able to help, although it also requires root access or PC with adb setup.
In case you're not aware of this, not all the apps can be backed up using adb.

@Firelord : ok I finally found a way to do what I want : simply use the backup android service (called by/system/bin/bu) which will require user interaction anyway. So the definite answer is it’s not possible for obvious reasons.

@user2284570 I tried that before editing my answer but I noted that without adb or root access, running bu didn't work. Troubleshooting through logcat revealed that android.permission.backup wasn't granted to the ordinary user. Are you saying you successfully made backup without using adb or root access?

@Firelord : of course not.

I found that connecting to adb localhost let user shell access. Doing real adb through USB let me root shell :-(

First of all, Thanks Firelord for the detailed information. I have followed this answer and found that you don't need to use -c parameter and 2000 and '' stuff for getting the job done. First type 'su' (without quotes) for superuser then enter directly 'setprop' commands and other commands, it works fine!!


text:
How to Install system app with SE Linux enforced on Galaxy s7 Android 6.0.1
first, sorry for my english :)
i try to install a user app (installed in /data/app/) as system app on my new galaxy s7 :
- Android 6.0.1
- Rooted
- factory ROM
I follow many tutorials :
http://www.addictivetips.com/mobile/how-to-install-any-app-as-system-app-on-android/
http://www.androidauthority.com/install-user-app-as-system-app-how-to-93522/
After reboot, my application is in the the folder /system/app but i can't launch it: it crash when i launch apk directly, even if permission are correctly set.
With another smartphone (samsung s4 rooted with cyanogenmod and SE Permisive), the copy paste technique work well.
Someone knows why i can't launch it ?
Thanks a lot

First tip: for third party apps that are installed as system apps, the /system/priv-app path is to be preferred in comparison to /system/app.

Thanks for your answer, i try it and nothing change. App is in good folder but i can't launch it.

Heh... couldn't be that simple. Ok, second tip: via a terminal emulator, run u:object_r:system_file:s0 path_of_your_app.apk as root and reboot. This changes the context of your app, making SELinux believe it's a genuine system app, so apply this procedure only if you're absolutely sure that your app is not a malware.

No problem. You also gave me the clue I needed to improve my flashable ZIP generator.


text:
moto g2 caught in restart loop
this is a year old phone just barely past the warranty,its running on kitkat 4.4.4 with no rooting or any other tweaking with system.
a few weeks ago i left it at night with google music playing and the next morning i found it caught in restart loop. it was constantly restarting and i could not power it off. it would light up and goto the moto logo and with a vibration go off and repeat this. earlier the frequency of restarting was very high now it has slowed. also the battery shows 0% and low in boot menu but turns ok on charging for some time.
only thing i can do is get into flash boot menu and when i select normal or recovery the phone restarts and again goes blank. it gets warm when charging or when its restarting.moto care has asked to take it to their centre but theres none within a 100km radius
now its been around three weeks, ive found no solution for this other than factory reset which will delete all my data on the phone to make it usable again
i dont want to lose my stuff as there are many imp pics and notes etc
is there any way to save my phone without formatting the data or can i recover the images and other files once factory setting are restored?
im not sure if i had synced or made any backups
there were two changes i made before it all happened
1.the phone was out of space i moved watsapp videos to my pc and freed around 2gb
2. that night i installed adobe flash player from a movie site
pls help me guys im just a naive user and dont know any programming etc

One way that might be possible is to connect your phone to the computer using usb. I'm not sure in kitkat but you can then safely transfer your most needed files to the computer. You may need to have usb debugging options enabled however.
Also, if you have a removable case then do it and remove the sim card (and the battery if you can). I had a similar problem and the phone fixed itself after removing the sim card.
Most cases are specific to the phone and most likely hardware based. If you can find a repair center near you (doesn't have to be moto care but make sure it is a licensed repair center) they could probably pinpoint the problem.
Hopefully you will be able to fix this issue.
I have linked some websites below that may be useful:
http://forums.androidcentral.com/ask-question/418757-moto-g-stuck-boot-loop.html
http://www.droidviews.com/how-to-recover-when-your-android-device-is-caught-in-bootloop/

thanks but its my bad moto g2 has non removable battery, also i must add i didnt used a memory card in it
also when i connected it to pc, it remain unrecognised as windows could not find drivers for the phone
on other thought if a device is not on how can we discover it on computer? Any s/ware??

I would get your device into download mode. To do that press power button and select “power off”. Then, press the volume up button on your LG G2. While you are holding the volume up button, plug in your phone's USB cable. Keep pressing the Volume up button until the download mode  is being displayed. Then try to see if you can recover files on PC