text:
ViPER4Android not processing
After a couple of times of trying many solutions I found on the internet, I still couldn't fix the problem.  I think, I have tried almost everything.

Actually, before this problem, I also have one more problem, which is now fixed.  That problem is that the Driver Status is "Abnormal", and the Audio Format is "Unsupported", like this:
Driver Version: 2.5.0.4
NEON Enabled: No
Enabled: No
Status: Abnormal
Audio Format: Unsupported
Processing: No
Sampling Rate: 0

Well, that problem is fixed now (solution here), but I still got a problem.

ViPER4Android is not processing, even if I'm playing a song.  I'm pretty sure that the music player that I'm using is supported.  I am using Google Play Music as my music player.
The problem is that, whatever I change (a setting) on ViPER4Android, it is still the same.  It doesn't do anything, but the stock equalizer does.  The stock equalizer is still working, which should be not.
Here is the driver status:
Driver Status: 2.5.0.4
NEON Enabled: Yes
Enabled: Yes
Status: Normal
Audio Format: Supported
Processing: No
Sampling Rate: 48000

Some things you might ask:
Have you tried turning it off and on again? (ViPER4Android):   Yes.
Have you tried turning it off and on again? (Android device):   Yes.
Have you tried disabling the stock equalizer? :   I "tried", but it didn't work.
What sites have you found on the internet for solutions? :   I can't remember 'cause there are a lot, but it's mostly on XDA.
Have you flashed a flashable zip? :   Yes.
What device are you using? :   See below.

Device:

Device:   Samsung Galaxy J7 Core
Model Number:   SM-J701F/DS
Android version:   7.0 Nougat
ROM:   Stock ROM
Recovery: TWRP
Rooted:   Of course!

This is a common issue

The issue is found on "audio_effects.conf", which contains unnecessary things that needs to be removed and some to be changed, in order for it to worked.

For Samsung devices, "audio_effects.conf" is found in /system/etc.

Remove these:
Libraries:
output_session_processing {
  path /vendor/lib/libLifevibes_lvverx.so
}

mysound {
  path /system/lib/libmysound.so
}

myspace {
  path /system/lib/soundfx/libmyspace.so
}

soundalive {
  path /system/lib/libaudiosa.so
}

soundalive_sec {
  path /system/lib/soundfx/libaudiosaplus_sec.so
}

soundbooster_plus {
  path /system/lib/libsamsungSoundbooster_plus.so
}

Effects:
soundalive {
  library soundalive_sec
  uuid cf65eb39-ce2f-48a8-a903-ceb818c06745
}

lmfv {
  library output_session_processing
  uuid 989d9460-413d-11e1-8b0d-0002a5d5c51b
}

fens {
    library output_session_processing
    uuid cbcc5980-476d-11e1-82ee-0002a5d5c51b
}

dha {
  library mysound
  uuid 263a88e0-50b1-11e2-bcfd-0800200c9a66
}

sa3d {
  library myspace
  uuid 3462a6e0-655a-11e4-8b67-0002a5d5c51b
}

soundbooster_plus {
  library soundbooster_plus
  uuid 50de45f0-5d4c-11e5-a837-0800200c9a66
}

Output Session Processing:
output_session_processing {
  music {
      sa3d {}
  }

  ring {
      sa3d {}
  }

  voice_call {
      fens {}
      lmfv {}
  }

  sec_voice_communication {
      fens {}
      lmfv {}
  }
}

Change these:
Libraries:
From:
pre_processing {
  path /vendor/lib/libLifevibes_lvvetx.so
}

To:
pre_processing {
  path /system/lib/soundfx/libaudiopreprocessing.so
}

Effects:
From:
bassboost {
  library soundalive
  uuid a926a540-418a-11e1-b2f1-0002a5d5c51b
}

To:
bassboost {
  library bundle
  uuid 8631f300-72e2-11df-b57e-0002a5d5c51b
}

From:
virtualizer {
  library soundalive
  uuid c747f6a0-418a-11e1-a621-0002a5d5c51b
}

To:
virtualizer {
  library bundle
  uuid 1d4033c0-8557-11df-9f2d-0002a5d5c51b
}

From:
equalizer {
  library soundalive
  uuid c117b70-f97f-11e0-be50-0002a5d5c51b
}

To:
equalizer {
  library bundle
  uuid ce772f20-847d-11df-bb17-0002a5d5c51b
}

For Samsung devices, after doing those things above, also copy the modified "audio_effects.conf" to /system/vendor/etc.


text:
Problem with music pausing
I've recently been having problems with my samsung j3. At first I thought that my earbuds were broken because the music paused every time the plug moved but that isnt the problem.
Every time I move the ear plug-in the musc pauses and most of the time the phone plays the music out of the speaker instead of the earbud connection. What is the problem here? I constantly have to leave my phone still and move around the earbuds plug-in in order to get a good connection.

Sounds as though either a faulty connector or phone jack

You said that when you plug in the earphones the music pauses and when you resume it starts playing on the phone speaker.
That is because the connection between your earphones and the headphone jack in your mobile isn't established.
The main reasons behind this is maybe there is some dirt in the headphone jack. You can remove it with an earbud.
In some other cases usually the headphone jack is damaged and needs to be replaced. I have this same issue and I didn't find any solution to this. So I bought a pair of bluetooth headphones.

source: Stack Exchange

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

sort: votes


text:
WhatsApp on Android 4.4 works only briefly and after rebooting phone
I have a Huawei smartphone running Android 4.4. I am experiencing a strange issue with the device, specifically with WhatsApp: the app will only work (as in sending and receiving messages and calls) for a few hours, then suddenly it is unable to connect to the Internet at all, it does not matter if the phone is connected to local Wi-Fi or to the mobile data network.
When trying to make use of the app, I get a notification saying "Unable to connect to the Internet. Please check that you're connected to the Internet and try again." The phone is, however, connected, and any other app (including a web browser) will work without any problems. As I said, this will happen regardless of the phone being connected to Wi-Fi or to the data network.
The only solution is to reboot the phone or uninstall and reinstall WhatsApp, but again the solution may last for a few hours at worst a couple of days at best, and then it is unable to connect again.
I've checked the phone settings and seemingly there isn't any permission problems or anything that would stop this app in particular to connect.
This problem did not happen originally and only started happening after the phone changed numbers after moving to a new phone company (and changing the SIM card). Could there be any relation? Anyone has had a similar problem and found a workaround?
Thanks

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


text:
Why (bind) mounts in /storage/emulated/0 are not visible in apps?
I mounted a directory into another directory with:
mount --bind "/storage/sdcard/dir1" "/storage/sdcard/dir2"

I do this at boot completion with Tasker. I can see the mounted files in adb shell and in Termux, even as non-root user.
But I can not see these files in apps like Total Commander or my Music Player.
I use Lineage 7.1.2.
In this thread, a solution is to switch off "mount namespaces" in SuperSU. Unfortunately, I have the LineageOS default SU app which does not seem to provide such option. Any suggestions?

Related: https://android.stackexchange.com/questions/217741/how-to-bind-mount-a-folder-inside-sdcard-with-correct-permissions

I have been using bind mounts without disabling mount namespaces on Android for a while - Marshmallow (Android 6) and Nougat (Android 7.1, LineageOS 14.1).
The bind mount is not visible to other apps because /storage/sdcard/ itself is also a layer of indirection. For example, when you run mount, you can see that the emulated "internal" SD card is not located at /storage/emulated, but at /data/media:
/data/media on /mnt/runtime/default/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser)
/data/media on /storage/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser)
/data/media on /mnt/runtime/read/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser)
/data/media on /mnt/runtime/write/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser)

These three mountpoints in /mnt/runtime are documented at Storage, Runtime permissions:

Android 6.0 introduces a new runtime permissions model where apps request capabilities when needed at runtime. Because the new model includes the READ/WRITE_EXTERNAL_STORAGE permissions, the platform needs to dynamically grant storage access without killing or restarting already-running apps. It does this by maintaining three distinct views of all mounted storage devices:

/mnt/runtime/default is shown to apps with no special storage permissions, and to the root namespace where adbd and other system components live.
/mnt/runtime/read is shown to apps with READ_EXTERNAL_STORAGE
/mnt/runtime/write is shown to apps with WRITE_EXTERNAL_STORAGE

So to make a directory visible to all other apps, you need to create the mounts in these places:
mkdir /mnt/runtime/{default,read,write}/dir2
mount -o bind /mnt/runtime/default/sdcard/dir1 /mnt/runtime/default/sdcard/dir2
mount -o bind /mnt/runtime/read/sdcard/dir1 /mnt/runtime/read/sdcard/dir2
mount -o bind /mnt/runtime/write/sdcard/dir1 /mnt/runtime/write/sdcard/dir2

To unmount:
umount /mnt/runtime/default/dir2
umount /mnt/runtime/read/dir2
umount /mnt/runtime/write/dir2
rmdir /mnt/runtime/{default,read,write}/dir2

In your question, the source and target are at the same filesystem, so the above will probably work as-is and show dir2 to other apps.
You can verify that the bind mounts are "visible" as intended by looking up the process ID of the desired app, and then checking the list of mounts from that app's point of view:
# cat /proc/(process ID here)/mountinfo

Debugging tips
If you cannot access the contents of the bind mount (i.e. "Permission denied" or something similar), then you should check whether the original file has the right UNIX permissions/ownership AND a SELinux label that matches the context. The latter can be debugged by looking for "avc: denied" errors in logcat-color (or just adb logcat). In some cases this can be fixed by using restorecon or chcon.
For example, I used to get the following error when I tried to access /sdcard/DCIM (which is a bind mount to a directory on external SD card).

avc: denied { write } for comm=... name="Camera" dev="dm-1" ino=3547138 scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:mnt_media_rw_file:s0 tclass=dir permissive=0

And fixed that one by observing that the SELinux label is wrong (the tcontext in the error message already told me so):
# ls -Z /mnt/media_rw/myextcard/my_DCIM_directory
drwxrwx--x  4 media_rw media_rw  u:object_r:mnt_media_rw_file:s0  4096 2018-06-08 12:34 .

and changed that (recursively) to a label which is allowed by the default policy on LineageOS:
# chcon -R u:object_r:media_rw_data_file:s0:c512,c768 /mnt/media_rw/myextcard/my_DCIM_directory

This worked for me, because /sepolicy has a rule that states that priv_app can access media_rw_data_file files. Those who have a different situation/ROM can use setools-android to parse their /sepolicy file to see their options.

Thanks for this awesome explanation. I will try as soon as I have time for it. Btw. I used the same filesystem in the question, but in reality I tried to mount a directory from my external SD to the internal SD.

This statement is misleading: I have been using bind mounts without disabling mount namespaces. You need to be in root mount namesapce before creating bind mounts. Otherwise source directory will only be visible within the isolated mount namespace, not to all apps. Also /mnt/runtime/{default,read,write}/dir2 is same directory, so you don't need to do mkdir and rmdir on all separately. Also mounting on one automatically propagates to other two, so mount and umount are also required only on any one of the three.

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


text:
How to wipe sdcard?
I want to wipe sdcard, but am not sure how best it should be done.
usually wiping is done into device, for example:
cat /dev/urandom > /dev/mydev

The thing is that I don't find a device which is related to sdcard.
I understand it can be found in symlink /sdcard, and doing mount I find:
/dev/fuse /mnt/runtime/read/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/runtime/write/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0

but trying to wipe the device fails as following:
cat /dev/urandom > /dev/fuse
sh: cat: <stdout>: Operation not permitted

I also tried to find all partitions in emmc, but I don't see any storage/sdcard type:
lrwxrwxrwx root     root              2017-01-01 00:45 boot -> /dev/block/mmcblk0p7
lrwxrwxrwx root     root              2017-01-01 00:45 cache -> /dev/block/mmcblk0p21
lrwxrwxrwx root     root              2017-01-01 00:45 expdb -> /dev/block/mmcblk0p10
lrwxrwxrwx root     root              2017-01-01 00:45 flashinfo -> /dev/block/mmcblk0p23
lrwxrwxrwx root     root              2017-01-01 00:45 frp -> /dev/block/mmcblk0p17
lrwxrwxrwx root     root              2017-01-01 00:45 keystore -> /dev/block/mmcblk0p14
lrwxrwxrwx root     root              2017-01-01 00:45 lk -> /dev/block/mmcblk0p5
lrwxrwxrwx root     root              2017-01-01 00:45 logo -> /dev/block/mmcblk0p9
lrwxrwxrwx root     root              2017-01-01 00:45 metadata -> /dev/block/mmcblk0p19
lrwxrwxrwx root     root              2017-01-01 00:45 nvdata -> /dev/block/mmcblk0p18
lrwxrwxrwx root     root              2017-01-01 00:45 nvram -> /dev/block/mmcblk0p2
lrwxrwxrwx root     root              2017-01-01 00:45 oemkeystore -> /dev/block/mmcblk0p12
lrwxrwxrwx root     root              2017-01-01 00:45 para -> /dev/block/mmcblk0p6
lrwxrwxrwx root     root              2017-01-01 00:45 proinfo -> /dev/block/mmcblk0p1
lrwxrwxrwx root     root              2017-01-01 00:45 protect1 -> /dev/block/mmcblk0p3
lrwxrwxrwx root     root              2017-01-01 00:45 protect2 -> /dev/block/mmcblk0p4
lrwxrwxrwx root     root              2017-01-01 00:45 recovery -> /dev/block/mmcblk0p8
lrwxrwxrwx root     root              2017-01-01 00:45 seccfg -> /dev/block/mmcblk0p11
lrwxrwxrwx root     root              2017-01-01 00:45 secro -> /dev/block/mmcblk0p13
lrwxrwxrwx root     root              2017-01-01 00:45 system -> /dev/block/mmcblk0p20
lrwxrwxrwx root     root              2017-01-01 00:45 tee1 -> /dev/block/mmcblk0p15
lrwxrwxrwx root     root              2017-01-01 00:45 tee2 -> /dev/block/mmcblk0p16
lrwxrwxrwx root     root              2017-01-01 00:45 userdata -> /dev/block/mmcblk0p22

Thanks for any idea,
ranran

cat /dev/urandom > isn't a good way to wipe an SD card. SD cards do write balancing, so your command won't overwrite all data, but it still causes more write cycles than simply formatting it. It's the worst of both worlds.

how is best to format ? seems sdcard is not a seperate memory storage in my case.

Is your card adopted or portable storage?

Is the device and/or the sdcard section encrypted (should be enabled by default on current devices)?

What about formatting from Settings? TWRP? A PC? A camera? Anything? You don't necessarily have to go so low level. Of course I'm assuming you don't have some data you wish to destroy, in which case one pass of shred should suffice (warning, this will wear your card a bit!). Or, if you just have to get rid of the data, you could destroy it

there is no encryption in sdcard, I am also not sure where is actually reside (emmc or seperate sdcard?) I need to do it from android , I can't do it in twrp or pc.

!! WARNING !!
DO NOT RUN ANY OF THESE COMMANDS IF YOU DO NOT KNOW WHAT YOU ARE DOING. YOU COULD BRICK YOUR DEVICE. BE CAREFUL WITH THESE COMMANDS!!
!! WARNING !!
If you have access to rm:
cd to the drive and run rm -rf /path/to/files
WARNING! DO !!NOT!! USE rm - rf /!! I mean, unless you like having a bricked Android device, that is.
If you have access to dd:
dd if=/dev/null of=/dev/fuse
This overwrites everything with null data.
And if it doesn't work, try adding sudo in front of the commands. DO NOT USE SUDO CARELESSLY!


text:
Display Actual Number Notification Dot Non Samsung Devices
So on Samsung phones running Oreo active notifications aka notification dots(on other devices) actually displays a number of the active notifications.
Is there a way to get the number(& not just the dot) to display on non Samsung Android Oreo devices?

So after some searching it appears Notifyer actually does work but there is a setting you have to change.  First create the widget of the application and put it on your desktop.  Next open the Notifyer app and go under settings for the specific application.
Lastly you must uncheck use native count.  If you would like you can also check group notifications.

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


text:
How can I change directory of AnkiDroid to external Storage
After using anki for a while , my internal storage (16gigs)became full, and now I'm unable to add more cards, then I tried to change directory to external Storage but it did not work for me (I'm using Android 7.1.1 moto g4 play) and ot keeps popping up message saying 'the given path isn't valid' .if someone could help me out it would be great

What do you mean by "ot"? Is it a typo maybe?

The reason you are not able to store an app on your memory card could be using a card formatted in "Portable storage" mode. In that case no one single app can be pushed out of internal memory, but reformatting of a memory card in "Internal storage" mode can change that. Another reason could be a restriction made by app's developer and there is nothing a user can do about it.
Sources: https://www.androidpit.com/how-to-format-microsd-cards-as-internal-storage
https://developer.android.com/guide/topics/data/install-location.html


text:
Android Hotspot internet connection comes and goes
When I'm connected to my android hotspot from my laptop, internet connection
comes and goes every few minutes. It happens both on Windows and Ubuntu so that I think the problem is not from receiver side.
Phone: Xiaomi A1
OS: Android 8
If I remember correctly, it used to be ok in the past. I'm not sure, but maybe it started when I updated to Android 8. Maybe!

When this is happening, is the internet connection on the phone itself OK, or does that also drop out every few minutes?

Good question. I should have mentioned that. The weird part is that the internet connection is fine on phone while problem happens in the connected laptop.


text:
Change the user in Skype
I have several Skype accounts. How can I change the account used by the Android Skype app? I don't see a way to log off/log on. Should I de-install & re-install from scratch?

Ok, so the secret is that there is a settings page but to get there you have to tap your avatar/icon at the top of the chats history. Then the "Disconnect from Skype" option is at the bottom.

According to skype support, all you have to do, is open the menu on the top left, and you'll find a sign out button on the bottom of the menu.
You will then have an option to sign in using a different account.

I have no such page, because Skype start in the call history... but I figured it out.


text:
One WhatsApp account, 2 phone numbers
Let's say I have a number in my country and WhatsApp account associated with it. I want to travel far away, where roaming would be ridiculously expensive. Is it possible that I can buy a SIM card local to that country I choose to travel to, and still be able to use my home country's WhatsApp number?

If you want to use both numbers on the same phone, use the answer here to set that up. Otherwise the answer below is the correct answer, there is no problem using ur old WhatsApp number as long as you don't uninstall.

Yes, you will be able to use Whatsapp with another SIM card and your old account, but do not reset or reinstall the app to not provoke number verification.
Source: personal experience; https://faq.whatsapp.com/en/30028016/.


text:
Controlling IR in Galaxy S8?
I wonder if I the front-facing IR led of the Samsung Galaxy S8 could be used for different purposes (e.g., building my own facial recognition and depth sensing apps). But I couldn't find a way to access the front-facing IR led of the device from Samsung's developers' page: http://developer.samsung.com/galaxy/sensor-extension
Is there any way to control the front-facing IR led in a custom-built Android app?

Honestly I doubt it will be able to do the activities you seek.
For example the IR grid sensor on Project Tango which does the depth sensing:
https://www.ifixit.com/Teardown/Project+Tango+Tablet+Teardown/28148#s68068
Quoting IFixit:

From Google: "The IR projector is from Mantis Vision, and designed specific to our specs for field of view and resolution. It is custom designed to work in partnership with the 4MP RGB-IR camera on the other side."

iFixit looks like there were able to independently run the IR projector to show off the field of dots:
https://www.ifixit.com/Teardown/Project+Tango+Teardown/23835#s62129
While the teardown for a Samsung Galaxy S8+
https://www.ifixit.com/Teardown/Samsung+Galaxy+S8%2B+Teardown/87086#s164374
[right most photo] notes an IR emitter, I'm incline to say that it would be tuned for iris scanning or other declared feature and work more like a IR flashlight than a grid.
For comparison iFixit shows off the front facing hardware of a Samsung Galaxy S9+ compared with a iPhone X:
https://www.ifixit.com/Teardown/Samsung+Galaxy+S9%2B+Teardown/104308#s195687
And you can note that the depth sensor assembly on the iPhone X is similar to the Project Tango tablet as a single assembly rather than a collection of separate cameras/projectors (probably for tolerance reasons during assembly).


text:
Instagram Stories not Loading on Samsung S8
This is a new Galaxy S8 with Android 8.0.0 and the up to date version of Instagram installed. When I click on one of the stories, they just don't load. I get this screen:

When I click the reload button, nothing happens.
I find it rather unlikely that this is really a bug in the app.
I already tried rebooting the phone and reinstalling the app, both to no avail.

I found that it is the setting of the clock on the device. The automatic mode was switched off and I had the time set manually. This seems to interfere with Instagrams ability to determine the age of a story.
So switching on automatic mode for the clock solved the problem.


text:
How to give apps access to existing Secure Storage
How can I grant the apps on an upgraded Android, to the existing Secure Storage data?
To prepare for upgrading from LineageOS 14.1 to LineageOS 15.1, I made sure to wipe only Cache, System, and Data partitions. Specifically, I did not select Internal Storage to wipe, because I want the apps to continue to have access to the existing data.
Then, I followed the instructions to install LineageOS 15.1, which succeeded.
Now when I re-install the apps, such as Password Store and DAVDroid, they do not seem to have the same data from internal storage (they act as though there is no data yet). How do I get these apps to use the data, specific to each app, in Internal Storage that was not wiped?

Did you manage to make any progress on your solution?

Given the consensus I found when searching for answers, it seems there is no way to do this.


text:
MotoG5s encryption switch "on" but doesn't ask for pin on restart
I've had encryption turned on on my MotoG5s since I bought it last year. It used to ask for a pin every time it was turned on and at every restart.
Since updating to 7.x.x (currently on 7.1.1) it's never asked for this pin but the switch in settings says encryption is on.
Do people think my phone is encrypted? How can I check?

An Android device can be encrypted without a PIN or password.
In such a case and if the encryption is "hardware based" the data is just bound to your device. The advantage of an encryption without PIN/password is that it can be erased very quick by just throwing away the key. No need to overwrite the all the data.
Therefore the question is not if or if not your device is encrypted - the question is what risk or attack do you expect the encryption to resist?
If you want to avoid other people to access your data when you loose your device you have to set a pin or password (not only because of the encryption). It will then also be used for the device encryption, making it harder for an attacker to access your data.

So I use a pin, but maybe I should make my question more clear. I use to have to enter a pin immediately after the phone turned on to get it to boot, but this process in not longer happening. I just get to the "normal" screen to enter your pin/unlock the phone.

Google introduced a new encryption scheme that does not require you to enter the PIN twice (at boot and then for device unlock again) - it is named file based encryption. You can check if your device uses file based encryption via adb shell getprop ro.crypto.type - it should output file.


text:
Is there a way to browse encrypted files when using Android's File Based Encryption (FBE)?
I've learned that my Google Pixel 2 uses File Based Encryption (FBE) to encrypt my files. I was wondering if there is some way to see these files in their encrypted form. Can I mount the encrypted and decrypted on a rooted stock rom at the same time?
If so, can I decrypt my files on any other device than my Pixel? What about a pc?

Is your device unlocked (oem unlock) or rooted? Because on a regular locked stock device without root I don't think that you can get access to the unencrypted data.

My device is unlocked and rooted with the latest stock rom.

Then I think the best option would be to install and run a custom recovery ROM. Some custom recovery ask for the password, however if you don't provide the password you may be able to get access to the RAW encrypted data.

What I am trying to archive is a way to backup my files in an encrypted way. Thus, I can't use a custom recovery ROM, because I want to upload those files somewhere.

Usually you do a backup because your device can get lost or defect. As the encryption key is AFAIR usually bound to your device the backup would be useless in such a case. Better backup the decrypted files and encrypt the data in the backup files.


text:
Stopping in app monthly subscription
I downloaded an app called Vysor - https://play.google.com/store/apps/details?id=com.koushikdutta.vysor
I wanted to remove the ads so I purchased a monthly subscription - from their website. The ads got removed & it worked fine. Now I want to stop the monthly subscription after the first month is over. However, I see no option for this on the app itself to stop subscription.
In the playstore, my subscription doesn't show in "My subscriptions" - I have written to the email id given with the app and am waiting for a response. But other than that, what are my options?

Quoted from a page from the Vysor Google+ community:

Subscription Management, Cancellations, Invoices
Cancellation can be done any time. Just go into your account management and cancel the subscription. Instructions below.
Chrome Web Store Subscriptions
Vysor subscriptions purchased on the Chrome Store (Google Wallet) can be canceled in your Google Wallet bills section. If you cancel a subscription on the Chrome store, you will never be able to resubscribe with the Chrome store. Not even on a different plan. This is a bug with the Chrome store.

This guide was commented but not posted as an answer..
To clarify for others, your answer is here Vysor Google+ Billing and Licensing


text:
Replacing files with copies of themselves causing Android application to crash
I'm working with the Twitter Android application in an x86, Android 7.0, emulated environment, attempting to handle login sessions by cloning and restoring the application's data on disk.
For some reason, when tarring /data/data/com.twitter.android/databases, then immediately extracting that tarball back to the same place (so as to overwrite the files with copies of themselves), the application becomes bricked, crashing on startup until I do a full reinstall of the app. The same is true if I simply cp -rp the directory elsewhere, remove it, then restore it from the copy with cp -rp again.
This can be replicated by installing the Twitter application, logging in manually, then running the following from /data/data/com.twitter.android/ in an adb shell with escalated privileges (adb root):
generic_x86:/data/data/com.twitter.android # (ls -la databases; tar -cf /sdcard/db.tar databases; tar -xpf /sdcard/db.tar; ls -la databases)

ls -la before tar:
total 3200
drwxrwx--x 2 u0_a98 u0_a98   4096 2018-04-13 21:52 .
drwx------ 9 u0_a98 u0_a98   4096 2018-04-13 21:51 ..
-rw-rw---- 1 u0_a98 u0_a98 512000 2018-04-13 21:52 0-49.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 0-49.db-journal
-rw-rw---- 1 u0_a98 u0_a98  28672 2018-04-13 21:52 0-lru_key_value.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 0-lru_key_value.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:52 0-scribe.db
-rw------- 1 u0_a98 u0_a98  16928 2018-04-13 21:52 0-scribe.db-journal
-rw-rw---- 1 u0_a98 u0_a98 638976 2018-04-13 21:52 984053504628150273-49.db
-rw------- 1 u0_a98 u0_a98  74384 2018-04-13 21:52 984053504628150273-49.db-journal
-rw-rw---- 1 u0_a98 u0_a98  20480 2018-04-13 21:52 984053504628150273-dm.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 984053504628150273-dm.db-journal
-rw-rw---- 1 u0_a98 u0_a98  20480 2018-04-13 21:52 984053504628150273-drafts.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 984053504628150273-drafts.db-journal
-rw-rw---- 1 u0_a98 u0_a98  28672 2018-04-13 21:52 984053504628150273-lru_key_value.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 984053504628150273-lru_key_value.db-journal
-rw-rw---- 1 u0_a98 u0_a98  40960 2018-04-13 21:52 984053504628150273-scribe.db
-rw------- 1 u0_a98 u0_a98  12824 2018-04-13 21:52 984053504628150273-scribe.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:52 evernote_jobs.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 evernote_jobs.db-journal
-rw-rw---- 1 u0_a98 u0_a98  36864 2018-04-13 21:52 global.db
-rw------- 1 u0_a98 u0_a98  12824 2018-04-13 21:52 global.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:52 google_app_measurement_local.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 google_app_measurement_local.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:51 persistent_jobs.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:51 persistent_jobs.db-journal

ls -la after tar extraction:

total 3184
drwxrwx--x 2 u0_a98 u0_a98   4096 2018-04-13 21:52 .
drwx------ 9 u0_a98 u0_a98   4096 2018-04-13 21:51 ..
-rw-rw---- 1 u0_a98 u0_a98 512000 2018-04-13 21:52 0-49.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 0-49.db-journal
-rw-rw---- 1 u0_a98 u0_a98  28672 2018-04-13 21:52 0-lru_key_value.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 0-lru_key_value.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:52 0-scribe.db
-rw------- 1 u0_a98 u0_a98  16928 2018-04-13 21:52 0-scribe.db-journal
-rw-rw---- 1 u0_a98 u0_a98 638976 2018-04-13 21:52 984053504628150273-49.db
-rw------- 1 u0_a98 u0_a98  74384 2018-04-13 21:52 984053504628150273-49.db-journal
-rw-rw---- 1 u0_a98 u0_a98  20480 2018-04-13 21:52 984053504628150273-dm.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 984053504628150273-dm.db-journal
-rw-rw---- 1 u0_a98 u0_a98  20480 2018-04-13 21:52 984053504628150273-drafts.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 984053504628150273-drafts.db-journal
-rw-rw---- 1 u0_a98 u0_a98  28672 2018-04-13 21:52 984053504628150273-lru_key_value.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 984053504628150273-lru_key_value.db-journal
-rw-rw---- 1 u0_a98 u0_a98  40960 2018-04-13 21:52 984053504628150273-scribe.db
-rw------- 1 u0_a98 u0_a98  12824 2018-04-13 21:52 984053504628150273-scribe.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:52 evernote_jobs.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 evernote_jobs.db-journal
-rw-rw---- 1 u0_a98 u0_a98  36864 2018-04-13 21:52 global.db
-rw------- 1 u0_a98 u0_a98  12824 2018-04-13 21:52 global.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:52 google_app_measurement_local.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:52 google_app_measurement_local.db-journal
-rw-rw---- 1 u0_a98 u0_a98  16384 2018-04-13 21:51 persistent_jobs.db
-rw------- 1 u0_a98 u0_a98   8720 2018-04-13 21:51 persistent_jobs.db-journal

As you can see, the output of the two ls executions are nearly identical, all permissions are preserved, however the size of the directory after tar creation and subsequent extraction is smaller than before, I figure this is just the OS optimising the number of disk blocks used though?
I have searched the whole filesystem for soft links to the directory in question and have come up with nothing. You can also see from the output of ls -la that the directory only has 2 hard links (one from .../databases/ and one from it's own '.' entry), so I'm pretty sure no links are being destroyed.
I'm doing all of this when the application is not running, and I've tried restarting the system inbetween replacing the files with copies of themselves and starting the application. I've also tried on Android 8.0, and 7.1.1 with the results.
I'm very confused as to what's causing this haha, any help/ideas are greatly appreciated.
-----------------------------------------------UPDATE--------------------------------------------------------
Don't know why it took me so long to think to check logcat (duhhhh):
04-14 16:50:12.417: E/SQLiteLog(8473): (14) cannot open file at line 35652 of [8201f4e1c5]
04-14 16:50:12.417: E/SQLiteLog(8473): (14) os_unix.c:35652: (13) open(/data/user/0/com.twitter.android/databases/persistent_jobs.db) -
04-14 16:50:12.420: E/SQLiteDatabase(8473): Failed to open database '/data/user/0/com.twitter.android/databases/persistent_jobs.db'.
04-14 16:50:12.420: E/SQLiteDatabase(8473): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:723)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:299)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:254)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:218)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at com.twitter.database.BaseDatabaseHelper.a(Twttr:280)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at com.twitter.database.BaseDatabaseHelper.getReadableDatabase(Twttr:262)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at ewg.b(Twttr:274)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at ewg.f(Twttr:246)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at ewj$a.b(Twttr:217)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at ewj$a.c(Twttr:199)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at com.twitter.async.operation.AsyncOperation.a(Twttr:319)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at com.twitter.async.operation.b.call(Unknown Source:4)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at com.twitter.util.errorreporter.a.a(Twttr:93)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at com.twitter.async.operation.AsyncOperation.ag(Twttr:317)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at dsq$a.run(Twttr:257)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:457)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-14 16:50:12.420: E/SQLiteDatabase(8473):     at java.lang.Thread.run(Thread.java:764)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473): Couldn't open persistent_jobs.db for writing (will try read-only):
04-14 16:50:12.421: E/SQLiteOpenHelper(8473): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:723)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:299)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:254)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:218)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at com.twitter.database.BaseDatabaseHelper.a(Twttr:280)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at com.twitter.database.BaseDatabaseHelper.getReadableDatabase(Twttr:262)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at ewg.b(Twttr:274)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at ewg.f(Twttr:246)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at ewj$a.b(Twttr:217)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at ewj$a.c(Twttr:199)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at com.twitter.async.operation.AsyncOperation.a(Twttr:319)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at com.twitter.async.operation.b.call(Unknown Source:4)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at com.twitter.util.errorreporter.a.a(Twttr:93)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at com.twitter.async.operation.AsyncOperation.ag(Twttr:317)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at dsq$a.run(Twttr:257)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:457)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-14 16:50:12.421: E/SQLiteOpenHelper(8473):   at java.lang.Thread.run(Thread.java:764)
04-14 16:50:12.422: E/SQLiteLog(8473): (14) cannot open file at line 35652 of [8201f4e1c5]
04-14 16:50:12.422: E/SQLiteLog(8473): (14) os_unix.c:35652: (13) open(/data/user/0/com.twitter.android/databases/persistent_jobs.db) -
04-14 16:50:12.422: E/SQLiteLog(8473): (14) cannot open file at line 35652 of [8201f4e1c5]
04-14 16:50:12.423: E/SQLiteLog(8473): (14) os_unix.c:35652: (13) open(/data/user/0/com.twitter.android/databases/evernote_jobs.db) -
04-14 16:50:12.423: E/SQLiteDatabase(8473): Failed to open database '/data/user/0/com.twitter.android/databases/evernote_jobs.db'.
04-14 16:50:12.423: E/SQLiteDatabase(8473): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:723)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:299)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:254)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:194)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at com.evernote.android.job.f.a(Twttr:130)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at com.evernote.android.job.d.a(Twttr:242)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at ewa.l(Twttr:87)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at com.twitter.android.initialization.JobScheduleInitializer.a(Twttr:28)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at com.twitter.android.initialization.JobScheduleInitializer.a(Twttr:17)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at dez.a(Twttr:72)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at dfa.run(Unknown Source:6)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at io.reactivex.internal.operators.completable.c.b(Twttr:34)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at io.reactivex.a.a(Twttr:1686)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at io.reactivex.internal.operators.completable.CompletableSubscribeOn$SubscribeOnObserver.run(Twttr:64)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at io.reactivex.u$a.run(Twttr:452)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at io.reactivex.internal.schedulers.ScheduledRunnable.run(Twttr:66)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at io.reactivex.internal.schedulers.ScheduledRunnable.call(Twttr:57)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-14 16:50:12.423: E/SQLiteDatabase(8473):     at java.lang.Thread.run(Thread.java:764)
04-14 16:50:12.423: E/JobStorage(8473): could not load all jobs
04-14 16:50:12.423: E/JobStorage(8473): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)
04-14 16:50:12.423: E/JobStorage(8473):     at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:723)
04-14 16:50:12.423: E/JobStorage(8473):     at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:299)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:254)
04-14 16:50:12.423: E/JobStorage(8473):     at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:194)
04-14 16:50:12.423: E/JobStorage(8473):     at com.evernote.android.job.f.a(Twttr:130)
04-14 16:50:12.423: E/JobStorage(8473):     at com.evernote.android.job.d.a(Twttr:242)
04-14 16:50:12.423: E/JobStorage(8473):     at ewa.l(Twttr:87)
04-14 16:50:12.423: E/JobStorage(8473):     at com.twitter.android.initialization.JobScheduleInitializer.a(Twttr:28)
04-14 16:50:12.423: E/JobStorage(8473):     at com.twitter.android.initialization.JobScheduleInitializer.a(Twttr:17)
04-14 16:50:12.423: E/JobStorage(8473):     at dez.a(Twttr:72)
04-14 16:50:12.423: E/JobStorage(8473):     at dfa.run(Unknown Source:6)
04-14 16:50:12.423: E/JobStorage(8473):     at io.reactivex.internal.operators.completable.c.b(Twttr:34)
04-14 16:50:12.423: E/JobStorage(8473):     at io.reactivex.a.a(Twttr:1686)
04-14 16:50:12.423: E/JobStorage(8473):     at io.reactivex.internal.operators.completable.CompletableSubscribeOn$SubscribeOnObserver.run(Twttr:64)
04-14 16:50:12.423: E/JobStorage(8473):     at io.reactivex.u$a.run(Twttr:452)
04-14 16:50:12.423: E/JobStorage(8473):     at io.reactivex.internal.schedulers.ScheduledRunnable.run(Twttr:66)
04-14 16:50:12.423: E/JobStorage(8473):     at io.reactivex.internal.schedulers.ScheduledRunnable.call(Twttr:57)
04-14 16:50:12.423: E/JobStorage(8473):     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-14 16:50:12.423: E/JobStorage(8473):     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
04-14 16:50:12.423: E/JobStorage(8473):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-14 16:50:12.423: E/JobStorage(8473):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-14 16:50:12.423: E/JobStorage(8473):     at java.lang.Thread.run(Thread.java:764)
04-14 16:50:12.430: E/SQLiteLog(8473): (14) cannot open file at line 35652 of [8201f4e1c5]
04-14 16:50:12.430: E/SQLiteLog(8473): (14) os_unix.c:35652: (13) open(/data/user/0/com.twitter.android/databases/evernote_jobs.db) -
04-14 16:50:12.432: E/SQLiteDatabase(8473): Failed to open database '/data/user/0/com.twitter.android/databases/persistent_jobs.db'.
04-14 16:50:12.432: E/SQLiteDatabase(8473): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:265)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:218)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at com.twitter.database.BaseDatabaseHelper.a(Twttr:280)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at com.twitter.database.BaseDatabaseHelper.getReadableDatabase(Twttr:262)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at ewg.b(Twttr:274)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at ewg.f(Twttr:246)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at ewj$a.b(Twttr:217)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at ewj$a.c(Twttr:199)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at com.twitter.async.operation.AsyncOperation.a(Twttr:319)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at com.twitter.async.operation.b.call(Unknown Source:4)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at com.twitter.util.errorreporter.a.a(Twttr:93)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at com.twitter.async.operation.AsyncOperation.ag(Twttr:317)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at dsq$a.run(Twttr:257)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:457)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-14 16:50:12.432: E/SQLiteDatabase(8473):     at java.lang.Thread.run(Thread.java:764)
04-14 16:50:12.438: E/SQLiteDatabase(8473): Failed to open database '/data/user/0/com.twitter.android/databases/evernote_jobs.db'.
04-14 16:50:12.438: E/SQLiteDatabase(8473): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:723)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:299)
04-14 16:50:12.438: E/SQLiteDatabase(8473):     at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:254)
....

So somehow replacing the SQLite databases in /data/data/com.twitter.android/databases affects the databases in /data/user/0/com.twitter.android/databases/.
Deleting the files in either directory has the effect of deleting them in the other directory, suggesting they're hard linked - but I can't see that they are.
Also deleting all the files inside either databases directory has no effect - the app starts normally and the db files are restored from somewhere.

Instead of using tar (it's never a good idea to fiddle with the files of an application still running), why not using adb backup and adb restore? You can restrict that to a single app's data. Of course, the app must allow for backups (and not have opted out).

@Izzy Thanks for the suggestion. Unfortunately the app doesn't allow backups. I've tried with a rooted device & Titanium backup, but I get a similar problem in that the restored application crashes at startup every time.

Already feared that being the case. On a rooted device with Xposed installed, you could try it with the BackupAllApps module (which should make adb backup ignore the AllowBackup flag).

Just tried that now. The Xposed module definitely bypassed the AllowBackup flag as the backup is ~25mb. However on uninstalling the Twitter app, then reinstalling, then restoring the backup data, the same thing happens - the application crashes on startup. Confusing huh!

Indeed confusing. And that's the end of my "wisdom" on this … so someone else has to pick up. Good luck!

Thanks anyway :) I've narrowed it down to something to do with SQLite databases in /data/user/XX/com.twitter.android/databases and /data/data/com.twitter.android/databases becoming unlinked I think.

Before creating the backup I would make 100% sure that nothing is running anymore by uninstalling the app but keeping the data (adb uninstall -k com.twitter.android). Otherwise databases may get corrupted as you have observed.

@Robert Nice idea. Unfortunately still have the same problem when I do that.
It's so odd, anything I remove in either /data/user/XX/com.twitter.android/databases or /data/data/com.twitter.android/databases is reflected in other, suggesting they're hard linked, but I can't find any hard links.
Also found out that simply removing all the files in either directory has no effect - the app starts up normally.


text:
Does my World Clock have an Error (Time for Jameica/Kingston)
So I am in Berlin and try to see the time of Jameica. Berlin is currently UTC+2, Jameica UTC-5 -> makes -7 difference.
I tried this around 11:30 local time, and expected 5:30, but what I got is 20:30.
What is going on there. Is it a bug? Or a feature?
In the adding screen it shoes GMT -5

The weather is nice - but the time wrong.

Settings seem right

And now the funny workaround part - if I choose another city in UTC-5 all works:

Same time as it would be right in Kingston - weather not so good:


text:
list disable package feature/component
we can use pm list packages -d to list disabled packages.
but how can I list disabled feature/component inside a package?
for example I disable all fitness related stuff from gms
pm disable com.google.android.gms/.fitness.sync.FitnessSyncAdapterService
and so on
and I want to have an overview again which feature I have disabled

Not as straight-forward as listing packages. Here's an except (Bash code) on how my tool Adebar does it (for all apps on a device, spooling results to a file as pm disable comands in the way your question quotes it), to be found in lib/scriptgen.lib:

  local comps
  local myline
  scriptname="${OUTDIR}/deadReceivers.sh"
  echo "#!${BASH_LOCATION}" > "${scriptname}"
  echo -e "\n#\n# Disabled components for ${DEVICE_NAME} as of $(date '+%Y-%m-%d %H:%M')\n#" >> "${scriptname}"
  for pkg in $(adb ${ADBOPTS} shell "pm list packages 2>/dev/null"); do
    pkg=${pkg//[$'\t\r\n']}
    pkg=${pkg##*:}
    [[ "${pkg}" = "android" ]] && continue
    comps=$(adb ${ADBOPTS} shell "dumpsys package ${pkg}" | grep -E -A99999 "disabledComponents:" |grep -E -B99999 "enabledComponents:")
    if [[ -n "${comps}" ]]; then
      echo >> "${scriptname}"
      echo "# ${pkg}" >> "${scriptname}"
      for myline in $comps; do
        myline=${myline//[$'\t\r\n']}
        [[ "${myline}" = "disabledComponents:" || "${myline}" = "enabledComponents:" ]] && continue
        echo "adb ${ADBOPTS} shell \"pm disable ${pkg}/${myline}\"" >> "${scriptname}"
      done
    fi
  done

In short: You'd have to parse the "disabledComponents" section from the output of dumpsys package <package_name> ("comps" in above code fragment). As you can see, that segment is followed by a list of enabled components, in case you want to know where to find those.

nice Adebar and IzzyOnDroid!


text:
How do Google and Samsung's "Find My Device" service can bypass Android's Secured Lock Screen?
As I know, when the phone is locked that means it has been encrypted.
So how do Google and Samsung's "Find My Device" service bypass Android's Secured Lock Screen? Does it mean they have our decryption key?

When the phone is locked it doesn't necessarily mean it's encrypted. Usually it's the other way around.

@Izzy, isn't it File-Based Encrypted with direct boot (https://source.android.com/security/encryption/file-based) ?

As I wrote: Encryption will certainly require a "lock" (password) – but a lock doesn't require encryption. Screen lock usually doesn't: while you lock your screen, the file system stays "decrypted".

@Izzy, even the file system stays "decrypted" but the rest still stay encrypted right ? We still need the key to decrypt in order to fully use, don't we ?

I don't understand what you mean. When locking the screen one simply locks the screen, nothing else. If encrypted, the file system always "stays encrypted" – even if the device is unlocked and you're working with it. Knowing the encryption key and passphrase, the OS can access it. As soon as you shut down, the passphrase is forgotten and the file system thus inaccessible. But that has nothing to do with locking/unlocking the screen. IOW, "bypassing the lock screen" doesn't touch encryption, AFAIK.


text:
Blackberry Priv won't connect to Windows 7 for file transfer
I posted this question before but it was "protected", so I can't answer it. So I'm reposting it so that I can answer my own question.
I can't get my Blackberry Priv to connect as anything other than charging via USB. My PC isn't recognizing that a device is connected. I've downloaded and installed the Tethering and USB drivers here. I restarted after installing them. On the phone, it never gives a notification that it has connected as a charging device, and I know that's what you'd normally click on to change to file transfer. Also, in the settings options, in Storage and USB, there is only information about device storage, nothing about the USB connection type. I've enabled developer options. In there, I've turned on "USB debugging" and "Allow USB debugging in charging mode". I'm at a loss as to what else would need to be done to get file transfer working, and honestly I'm completely confused as to why it's not showing up in the Storage & USB options. I'm having a hard time finding anyone else mentioning this issue.

This was a hardware issue rather than a software issue. I had the same problem with two different Privs, so I thought it must be something to do with the Android system. But it turns out that, for some reason, my phone didn't like using a USB 3.0 port. That only charges it. Switching to a USB 2.0 port finally got me the charging notification, so I was able to switch. As a side note, setting it to "File transfers" (MTP) didn't work. I had to use "Photo transfer (PTP)" to get it to see the device. And in that case, it only sees the onboard storage, not the memory card. So it's an imperfect solution, but since my photos are on the phone storage, not the card, and I can copy from the card to the phone if I really need to, it works well enough to solve my issue.


text:
How to enter recovery mode in a watch with one button (power)?
I try to enter recovery mode in watch with one power button and no additional buttons , but failed to do that.
Is it possible to enter recovery mode with this single button ?
I try this with 2 different watch:
microwear H5,
kingwear 98
One of them is using android 5.1 , the other android 6.
Thank you

So you are talking about an Android Watch/Android Wear, right? You should also name your Android Watch model. From what I read the method is not the same for every device. BTW: Of course it is possible - the morse code also needs only one button and allows to transfer large texts - may be you should reformulate your question to "How to enter the recovery mode".

I've edited the message, it is a regular android, not android wear

It seems that OP got an answer from Xda-developers for Microwear H5.

You can enter recovery mode via adb command or installing a reboot to recovery app from play store.

The adb command is the usual one for rebooting to recovery:
adb reboot recovery

The answer also applies for Kingwear KW98.


text:
New android phone retrieve google calendar reminders
I got a new phone because my old one is destroyed (never to return).
I am trying to get back the reminders I set myself using the google calendar app on my samsung galaxy s7 edge. The reminders would appear in blue on my calendar. I set reminders like, "remind me every 2 weeks to achieve such and such a task, etc., etc."
Anyway, I goto https://calendar.google.com/calendar/r to try and have a look for my reminders and none are there! I can only assume that the reminders were stored in the phone's internal memory because they certainly are not showing in google calendar on a PC... unless I am mistaken about google calendar being a cloud app.
How could @I get my reminders back?

I'm guessing by 'reminders' you mean 'notifications' attached to Google Calendar appointments. Mine appear ONLY on the website INTENTIONALLY, because I have Google Calendar Notifications OFF on my phone. Do you have this setting, too, albeit unintentionally? See the setting (within Calendar) Settings > Notifications > is ON. You can also get to the setting via Settings > Apps > Calendar > Notifications. Make sure they are not reporting 'Blocked'.

No, mine say 'alerts'. The point is if you set reminders on a android phone and you lose said phone, the reminders will be lost too. Unless... I'm looking for a solution to this problem. But I did recover my reminders using the PC apps SmartSwitch to backup the phone data and SideSync; which mirrors my destroyed phone screen to a dsktop's monitor. Although getting past the unlock screen with no display was a killer which involved making paper stencil template with keypad numbers. A pain but it did work.


text:
WhatsApp messages disappeared without having been deleted
I was texting like normal yesterday morning when all of a sudden it said WhatsApp is not responding or something like that, but after it came off EVERYTHING was deleted, even my backup. I had messages from 2016 there. What should I do to recover my lost messages?

If you have enabled Google Backup in Whatsapp. You can have your messages back. For this you have to start Whatsapp from beginning and re verify your phone number and if you have any Whatsapp backup in your google Drive Whatsapp will automatically restore it for you.


text:
Factory reset protection (FRP) verification
I have a Samsung phone with Android 6.0.1. I'd like to know  if the FRP is activated. I've been searching on the web for instructions on how to do this. So far I've found instructions requiring the user to actually factory reset the phone. Is there a way to verify if FRP is on (and activate it if not) without having to factory reset the phone?
My phone is secured with a pin number.

According to Samsung support, FRP is automatically enabled when you set up at least one Google account. If you still want to check it's status manually, you will need to enter Download mode. To do this:

turn off your phone and wait about 10 seconds
hold Volume Down, Home and Power buttons simultaneously until you see a warning
press Volume Up to continue.

After doing these steps, some text should appear on the screen, including "FRP LOCK" or something like that. There you can check whether protection is enabled or not.
Important: to exit download mode, you will need to hold the power button for more than 10 seconds, or if that doesn't help just pull the battery.

Please note that FRP can be easily disabled by flashing new ROM without GApps, but if your bootloader is locked that's not an issue.

The factory protection lock should be always enabled as long as you have a password,pin or fingerprint lock on the phone

Please indicate the source from where you saw this.

I have seen a from a bit too many sources to be sure exactly which ones but I thought it was just common knowledge that having a password on an android phone automatically enables frp


text:
Ascend P7 Stopped booting after use of DualBootPatcher
I have a Huawei Ascend P7-L10 that was running EMUI on android Lollipop (5.1.1). It was working great and ran very well. I installed DualBootPatcher to use MIUI as well and flashed the zip file. I switched to the MIUI rom from the app and rebooted the phone. Now all I see when I turn it on is the Android android image and a page with the title "Unfortunately, boot failed, get more information..." with instructions to shutdown or go to rescue mode.
I have tried using the HiSuite application on Windows 10 to recover it, and I have put the dload folder with "UPDATE.APP" inside it on my micro SD card to force install it. I just got a message saying the installation failed and it flashes something about there not being an "UPDATE.APP" on it for a short time as well.
I also tried using fastboot to flash the firmware to the phone, but my bootloader is apparently locked and I have no working way to unlock it.
I'm not sure where to go from here.

Attempting any flashing stuff with a locked bootloader is pretty much your own fault. I do remember there are multiple ways to trigger the download mode (with UPDATE.APP) though...

I tried that with a micro SD card and it didn't seem to work. Is there a way to access internal storage without a full boot maybe?


text:
Does Android come with a built-in plain text editor?
I need to edit a simple plain text file. Is there a built-in text editor that comes with Android? I have Android 7, LG Stylo 3.
I just need to open a text file, and enter some words:
cat
dog
etc
I need to edit text, then share it via email or have it saved in Android file system so I can share it later.
Second question: if there is no such a thing, what is the simplest plain text editor app available for such task?

No Stock Android does not to my knowledge.  This should really be on http://softwarerecs.stackexchange.com

We don't do software recommendations here. But be welcome to check my corresponding app listings: Office Suites and Text Editors and, maybe, Notes.

No AFAICT, unless it it is preinstalled by the device manufacturer, for example some devices like Xiaomi, Huawei come with a preinstalled document editor (WPS), which not allows you to view but to edit text files as well.
As suggested above, stock android only comes with with text viewer , not editor, in any case if you need to install it, please see Izzy's list of suggested text editors

Yes. I'm on Lenovo k8 note right now which is running stock Android 8.0. I was looking if it has some built-in text editor like vi in unix based systems.  I installed terminal emulator and looked for vi, vim and nano but got no luck. Then I tried sed(Stream EDitor) which also comes preinstalled with most unix based systems, and it worked well. So, yeah you can use sed to do some command line text manipulation.

This does not answer the question. On Android you have no command line. You should delete this wrong answer.


text:
LG G6 - "Charging blocked, moisture detected", would rooting help?
When I charge my LG G6, I randomly get the error message "Charging Blocked - Moisture Detected".
I sent it back to LG, but they said I was no longer covered by warranty because the SIM card tray is broken. They said it will cost me $100+ to fix the software, which makes me think that I can fix this by changing the software on the phone.
Would rooting my phone solve this software specific issue?

Have you submerged your phone in the water?

Your warranty should cover the damage SIM card tray.. I believe that this can't be fixed with a simple software modifications because the device is probably identifying a short circuit that is most likely caused by moisture shorting out the chip board... Maybe try drying your device for a few days and try again.

@LloydDominic I did not.

@Zillinium Apparently the warranty does not cover physical damage such as a broken sim card tray. I've had my device in dry conditions for weeks at a time but I still get this message occasionally.

I did not submerge my phone but it started appearing couple of days back and only goes away after all the charge has drained and I have let it for at least few hours. Any resolutions?

The only resolution I have is to use a wireless charger instead.

Try cleaning your charging port. There might be water there.

No there is no water or dirt there. I've used paper to clean it, and its been in dry conditions for several days.

Hmm. Try factory resetting?

I did a factory reset several times, but I always end up with the same issue.


text:
Changing WhatsApp number without losing chat histories
The SIM of my currently used WhatsApp number is not with me now. I want to change my WhatsApp number without losing some important chat histories. Is it possible to change the old WhatsApp number to a new one with some old specific chat histories intact, by verification only through the email ID associated with the previous WhatsApp number?

WhatsApp makes it very simple to change your number. After changing your number, everything will stay the same. All your groups and chats will stay intact.
To change your number, open WhatsApp settings and press on account and then press in change number. Follow the simple steps to verify your new number.
That's all! All your groups and conversations will still be there.

Just make sure to let your contacts know that you changed your number. Otherwise they will not be able to reach you...


text:
Android x86 won't boot with GRUB 2 - stuck at Detecting Android x86
I recently installed Android x86, using ~~99 GB free space on an old drive, partitioning it into /dev/sdb3.
After reinstalling grub (accidentally selected "yes install grub" in the installation menu), Android x86 refused to boot. It just gets stuck at "Detecting Android x86"
Debug mode mentioned two errors:
"VFS: could not find a valid V7 on sdb3"
and
"EXT3-fs (loop0): error: couldn't mount because of unsupported optional features".
How do I fix these? It works fine with the version of grub that the installer provides.

Your error message is discussed here:
https://forums.gentoo.org/viewtopic-p-7259024.html, it's for Gentoo, but maybe it could help you.

Why "accidentally"? You need to have its bootloader to be able to boot it, unless you create manually the boot files yourself. Note that installing its bootloader will erase your current bootloader, so if you had a previous OS already installed, you need to re-add it to the new bootloader files.

The message where you are stuck at "detecting Android-x86" has nothing to do with the fact that it installed the boot loader, but could be related to error in the bootloader config files.


text:
How to configure the (Nougat) system spell checker to go simultaneous multilingual with any 3rd party keyboard?
I configured several system languages, but I get red underlined text when the word is not in the primary (first) system language. I use a 3rd party keyboard and am on Android 7.1.2 Nougat.
As the user interface for changing underlined words is not from the keyboard itself, but from the system, I ask myself:
Can I configure the system spell checker keyboard-independent to accept multiple languages simultaneously?
I want to keep using my 3rd party keyboard (Messagease).

Can you try using another / third-party spell checker?  I think, when you are using Gboard as your keyboard, it will also have Google spell checker.

@Loyd Try what and why?


text:
Cannot unlock Nexus 5X due to bootloop
My phone is in a boot loop. It shows the Google text and restarts after few seconds. Not even the animation starts. It is the same if I start recovery mode.
I have windows 10, "Android ADB Interface" driver from Google and the phone shows up in device manager when i connect when the phone is in the bootloader screen (power + down).
I only can communicate with the phone when it is on the bootloader screen. For fastboot devices the phone shows up but not for adb devices. I tried all my usb ports.
DEVICE STATE - locked and unlocking from OEM is disabled.
I tried to connect to LGUP in Download Mode (power + up) with no success it doesn't recognise the phone.
I tried to unlock with Nexus Root Toolkit but it restarting my device and waiting for it but it restarts before the program recognizing it.
If I could make it work with LGUP or I could unlock somehow I could flash it with an image what can disable the big cores so the bootloop probably goes away.
I don't mind losing data. Any advice?

When you have a probably working image and a working fastboot why don't you flash the image via fastboot?

Possible duplicate of Nexus 5X bootloop, recovery mode doesn't exist


text:
My phone doesn't boot at all after restarting bootloader
My phone is Huawei Y3II.
Now, my phone is not starting, no matter how I press the power button.
I have tried Smart Phone Flash Tool, but it failed and it got an error 2004 - 6045.  Now, it does nothing when I click on "Download".
I have restarted the bootloader with ROM Toolbox Lite

fixed it by flashing every partition alone while the battery is off the phone .. and then hard rest ....... fuuuucccckkkk yeaaaaaaaaaaaaaaaaaaaaaaaaaaaahhhhhhhhhh


text:
How to uninstall app that seems to be an adds?? *The app that I accidentally install is not an apk but in the form of system app and I forgot the name
This is the picture
It's really nice to have some one helping..
Thanks

Holding down on the white square at the top left of the advertisement app tab thing as shown in the screenshot should take you to the app's info panel, where you'll be able to uninstall the app.

Long Press on the icon for the app in your recent applications list and it'll show you exactly what package caused the ad page.
Ad's aren't usually incorporated in system apps because you've already paid for them and it'd be double charging, Developers add adverts to their apps to help support their creativity, You can't just make apps for free as it's the same as digging a whole without a ladder.

There is no System App which shows you adds. Adds are added by Developers for earning. Check your Device for any 3rd Party App which shows add even after closing it.

I disagree. Gmail shows advertisements, though only inside the app but nevertheless it does, and it is a system app!


text:
Android apps not updating automatically
I have published an application and it went live after sometime. Now I have enabled automatic updates in the play store settings. I can see my app there and it's showing me update button. But why it is not automatically updated? Also i haven't got any notification about new update available?
Can anyone please tell how automatic updates work? App starts downloading update the time it is available or play store check updates after some interval?

When an update to an application is published in the Play Store, updates start rolling out. Not all users will see the update immediately; I think the figure is a few hours for the update to be available throughout the country or world.
The Play Store app checks for updates periodically, I think a few times daily. You can configure toggles to:

Notify when updates are available
Automatically install updates
Notify when automatic updates have occurred

A user will only be alerted for an update if the application is installed from the Play Store. As a developer, you may have installed from adb, in which case the application will not update from the Play Store. You can always reinstall the Play Store version, which will be updated.

Yes as answered above the updates don't happen right away. It could take up to 24 hrs for it to reach all users. The playstore generally updated when the device is idle and plugged in


text:
What is MTK NLP Service?
I have a Sony XPERIA M5 Dual (E5663) with stock Android 6.0. Recently I found that my GPS is activated without any app running. I checked Locations in the settings and found an app called MTK NLP Service has been requesting GPS location. I can't seem to remove it. What is that app and why does it need GPS?

MTK=MediaTek that is the chip manufacturer of at least one chip in your Smartphone. Most likely it is the central service handling location requests on your system.

NLP - Network Location Provider.


text:
How to repair damaged Android 4.2.2 on tablet?
While deleting apps to free up storage, I removed important system
functions (display touchscreenscanning).
How can I replace the system with a fresh version of Android 4.2.2?

You need to find a complete ROM for your tablet and flash it. Basically:
1. Search Google for " stock ROM" if you want the exact same system. Make sure you get the "gapps" (Google Apps) for that version of Android.
2. You will need a custom recovery, so search Google for " custom recovery" (TWRP and CWM are 2 common recoveries).
3. Find the instructions to flash your tablet

OP specified he wants to "replace the system with a complete new Android v4.2.2", so I believe he means "repair" instead of "upgrade" in the title.

If your goal is to have a fully-functioning device again, you should be able to do a factory reset to return to a factory image. If you did not root, then your system image should be ok.
Navigate to Settings > Backup and Reset > Factory data reset and proceed from there. This will delete all data on the device, but your installation of Android 4.2.2 will be fresh, just when you started using it.


text:
Moto G5S Plus File Manager is not showing any items
Moto G5S Plus File Manager is not showing any items.
I used another File Manager like ES Explorer.
I see all items but Moto G5S Plus File Manager is not showing any items.

This is most likely because it's permissions are not enabled and/or you do not have the storage areas checked.
In Settings - Apps, press the 3 dot menu and select "Show System" then scroll down to File Manager and select it. Select Permissions and verify "Storage" is enabled.
In the File Manager app, swipe right to open the menu and make sure "Internal Storage" and "External Storage" are selected at the top of the page.
If you have a lot of small (under 50k) pictures, they will not show up by default. In the app's Settings menu there is an option called "Hide small pictures" which you may need to turn off.

Actually it was working properly for last 3-4 months so I believe there is no permission issue. I see this issue recently.

@user886982 If you have verified the permission is enabled, and the other things I noted, the only thing I can think of is the Storage and Media databases are corrupt. Go to Settings - Apps and enable "Show System" and find Media Storage and External Storage and Clear Data on both of them, then reboot... After the device is restarted completely, wait at least 5 minutes for the databases to rebuild then retest. This action will NOT delete or remove any of your actual files. The other possible corrective action would be a wipe of cache partition.

@acejavelin: Please resize the screenshots (add an "l" to the screenshot URLs) as they are a bit large - see https://meta.stackoverflow.com/questions/253403 I tried to edit the post but just adding 4 characters is too less for an edit...

@acejavelin Strange when I edit your post it works perfectly in the preview. It works: Press F5 to reload the page...

@Robert lol... nevermind, it should be good now. I figured it out.


text:
Gooogle play store
Keep getting a pop up informing me that that my Google play servecis has stopped. I have restarted my tablet but not getting any joy. Samsung tablet

If restarting the device has not worked, you can try the following and see if it gets resolved
Try clearing the app caches and app data of

Google Play Services
Google Services Framework
Google Play Store

If it persists try uninstalling the updates of Google Play Store app from
Settings->Apps/Apps Manager->Google Play Store->Uninstall Updates->Ok
now restart the device and launch Google Play Store app.


text:
Isn't stereo speaker a software thing?
I've got a Note 8, and heard the Galaxy S9 was coming with stereo speakers. My doubt is: can't the phone software activate the "phonecall" speaker just to have both speakers running at once? Any explanation would be appreciated.

You can hypothetically use your speaker for phonecalls to play media however the phonecall speaker is usually of low quality and low volume, you probably wouldn't even hear it make a difference...   As far as I know they've just added another speaker phone speaker, Most devices support recording the system audio in stereo with a screen recorder


text:
Samsung Galaxy Note 4 stuck in reboot loop - what is the problem?
Here is the situation: My phone (Samsung Galaxy Note 4) turns on and works perfectly fine if I am do not click on any app.
Then say I click on some app. If I try to press too many things in too short an interval of time, then my phone restarts itself. Also if I clicked to turn on data or WiFi, then the phone reboots regardless of whether I select an app or not. When the reboot is complete, it displays a much lower battery level than it had when it turned off. Then it reboots again, and continues a few times until the battery hits 0%. Then I need to charge it up.
(*) if my phone was plugged into a charger, then this does not happen - it never reboots, and never has any issues. But if I keep it plugged into a charger all day, it effectively is no longer a smart phone, but is more of a desktop PC
Questions:
What is wrong with this phone? How can I find out what is wrong? Can it be fixed? If so, how?
Note: I am a novice, I don't know much about technology other than how to use my device for day to day stuff. It is not rooted or anything like that.

Update: I went to a Samsung repair centre where they concluded that this was a hardware issue, and the hardware needed to be replaced. (The cost of this was £200, so it does not represent value for money in my opinion)


text:
Unable to move apps to SD card
My Android ZTE has a 32GB SD card. There is no option to transfer apps from my phone to this SD card. what am I missing?

Sometimes you can't install apps on SD Card, It depends on the Android version your running.


text:
How do I enable multilingual suggestions in GBoard
I switched to a different phone recently and had to install all the apps anew.
I am bilingual and I used GBoard (Google Keyboard) on both, and on the old one I had it configured in such a way that it would automatically treat both languages I speak as one, so as I typed it would suggest words from both languages, even in the same sentence.
I can't figure out how to get that feature back on the new phone. It only ever suggests English words. How can I make it suggest words in both languages?
In GBoard settings -> Languages I have both languages installed and on both I have Multilingual typing enabled. Still it seems to make no difference

https://android.stackexchange.com/a/165510
"On the the keyboard options you'll find settings for Languages, Preferences, Theme... and in Text correction you'll find the toggle you're looking for: multilingual typing."

In 2018 it is here:
Latest Gboard moved the multilingual typing toggle to Languages > Language. There, each language defines whether it uses multilingual typing or not, and with which languages.

Go to language → spelling check →  if it says that it's  system language, then go and click it and select the desired language. That way even if the Gboard has languages that don't support multilingual , you can still make it so that it can work with both languages


text:
App names are not shown on the home screen of Trebuchet launcher
All my apps lost their text labels!

I tried rebooting, but it didn't help.

This turned out to be a setting and not an error.
Long-press on the home screen, click on Settings, and then slide "Icon Labels" to ON under both "HOME SCREEN SETTINGS" and "DRAWER SETTINGS". This eliminates the need to clear any cache or data.
Thanks to Rahul for helping me troubleshoot this.

Just in case, my labels weren't showing because I had a black backround and the text was black. Changed it to text color yellow, and labels showed.


text:
Temporarily rooting an old 2nd generation Moto G - how can it be done?
I have an old Android phone (Moto G 2nd generation, running 5.0.2), from which I need to access files in the data\system folder.  As I still do use this phone, I'd rather not permanently root it.  However, I've been doing some reading, and it looks like it's possible to temporarily root it in a way that lasts until the phone is next rebooted.
I've never rooted anything before, and my Googling of this only finds seemingly permanent rooting solutions.  I can only assume that the terminology I'm using to search for how to do this is wrong.
I'm a reasonably technical person, but I confess I am rather lost as to the correct way to proceed.  Is what I'm trying to do even possible (WITHOUT wiping the phone)?
TLDR: How can I temporarily root my Moto G 2nd Gen phone running Android 5.0.2?

What you're doing is definitely possible and can be achieved with Towelroot or similar apps.  If Towelroot doesn't work then why not use a full root method and uninstall root access afterwards.

Is your bootloader already unlocked? If yes, then just boot TWRP without flashing it, and access the files through it's file manager or USB interface. If the bootloader is not unlocked already, then there is no way to root or access the system partitions. For better or worse, Moto has these devices locked down very well when the bootload is locked. I would avoid using TowelRoot, Kingroot, or other "one-click" methods as they are known to brick Moto devices.

Darn.  The bootloader is most certainly not unlocked.  I do appreciate your warning about those one-click solutions.  They seem to be at the top of most Google results on all this, but I suspected that it couldn't possible be that easy.

If there is a way to "temporary root" your device it can be usually used by any app - unless you are able to fix the used vulnerability on-the-fly (but I think there are only a few people world-wide who could do so).
IMHO the best way to unlock the bootloader, install LineageOS. Even the nightly releases of Lineage are usually very stable. Lineage is by default not rooted. After installing Lineage you can activate encryption using a long password (have to be entered only at boot).
A unlocked bootloader is not nice but way more secure than a vulnerable system which can be exploited by any app. An unlocked bootloader at least requires physical access to your device. If your user data is encrypted only the system could be modified. Hence it would be only a problem in the "evil maid" scenario, but not in case of a device loss.


text:
What do I do when my phone is pitch black due the the dumb brightness system going all the way to 0
This has happened to me several times and this time I cannot get in turned back up.

Can you elaborate your query?

Welcome to Android Enthusiasts! We will need much more information to give good recommendations here. Please [edit] your question and include at least: The device you're using, Android version it is running. Also check and update the tags you've used to match your issue.

Tell whatever voice assistant you have (Google Assistant, Bixby) to set brightness to %50 or such. There's no way to set a minimum brightness.

You can send this command via terminal, it will set brightness to near maximum (200 on 255)
adb shell settings put system screen_brightness 200

Hello. Please follow [answer] to expand this post into a helpful one. Not everyone would be able to make sense of this post unless they are aware of both adb and settings command. Also, do tell us why 200?


text:
How to dim any ongoing music when receive notification?
How to dim any ongoing music sound by certain percentage (let's say 20%) when I receive message instead of pausing the current ongoing music and play the notification sound and continue play the ongoing music?


text:
Copy message text in android 7
In my past phone (Android 6) I could long tap a message and sow "Copy" context menu.
Now in Android 7 I see only some strange icons on taping a message.

Could somebody advice how I can copy message text?

 This icon on the top means copy. Pressing this button
should copy the text to your clipboard.
 This icon means share. After pressing this icon, you shall be prompted with multiple apps on your device that allow you to share this message.
This icon means forward. When you press this icon, you'll be able to directly forward this message to somebody else.
This icon means info. Pressing this icon will show you more information about the message. (e.g. sender, server, etc..)
This icon stand for delete. By pressing this icon will the message be deleted.

But how do you copy only a specific portion of text from a message and not the entire msg?


text:
Hey Google vs OK Google
Is there any way to use "Hey Google" instead of "OK Google" on my Motorola Z2 Play?
On my old phone Huawei P8 Lite from 2015 running android 6.0 i was able to use "Hey Google" instead of "OK Google"
I remember at some point when i clicked retrain voice model i was offered to say both "OK Google" and "Hey Google"
But on my new phone running android 7.1.1 no matter how many times i click retrain voice model it just keeps offering me to say "OK Google" 3 times.
I have all the latest software updates for my phone, and the latest available version of the Google app.
It is frustrating to see this option on much older phones, what am doing wrong here?
"OK Google" is very awkward for me especially after getting used to saying "Hey Google" on my 3 year old junk phone.
I tried asking this on the Google support site but they didn't read my question and just copy pasted the same response they give to everyone who reports any issue with Google Assistant.

"Hey Google" should work on MM devices.
You can install https://play.google.com/store/apps/details?id=com.google.android.apps.googleassistant app if you're unable to set 'Hey Google' from main Google app.

Thank you for the response, sadly the app you linked is "not available in my country"


text:
How to stop the Facebook app from updating itself automatically?
I have the Facebook app installed on my Android 7 phone.

Auto-update is disabled for all applications on my Play Store account
I have disabled installation from unknown sources

For some reason, whenever there is an update of the Facebook app, it automatically updates itself even though I disabled auto-updates for all applications.
How to stop the Facebook app from updating itself automatically?

Update: The settings location was changed, now at:
Settings & Privacy --> Settings --> Media and Contacts --> App Updates --> Auto-Update Facebook

Open your Facebook mobile app and navigate to that location to turn off the option:
(From the three lines icon at the top, at the bottom you'll have Settings & Privacy which should be expanded).
S̶e̶t̶t̶i̶n̶g̶s̶ ̶&̶ ̶P̶r̶i̶v̶a̶c̶y̶ ̶-̶-̶>̶ ̶A̶p̶p̶ ̶S̶e̶t̶t̶i̶n̶g̶s̶ ̶-̶-̶>̶ ̶A̶p̶p̶ ̶U̶p̶d̶a̶t̶e̶s̶ ̶-̶-̶>̶ ̶A̶u̶t̶o̶-̶U̶p̶d̶a̶t̶e̶ ̶F̶a̶c̶e̶b̶o̶o̶k̶

Wow thank you. I didn't know facebook had its own auto update "feature" bypassing the android OS or playstore one.

There is no such option as 'App Updates' and the Gif you have moves too fast.

I've updated my answer, the setting has been moved.

Looks like the setting is removed... again...

where is it now. Couldn't find it :(


text:
Remove badge (notification count) on home application icons
How is it possible to disable the "unread notifications count" on app icons, like the Facebook icon here?
I have an Android 5.0.2 (not rooted) on a Samsung A3 2015.
PS: I have already done this: hold Facebook icon during 2 seconds, swipe to "App  Info", then uncheck the checkbox "Show notifications", but it did not change anything about the notification count on the icon itself.

I can't check it on my device because I don't own any Samsung phone, but to resolve your issue you can try to uninstall FB, install it again, then before you log in type adb shell pm revoke com.facebook.katana com.sec.android.provider.badge.permission.READ and adb shell pm revoke com.facebook.katana com.sec.android.provider.badge.permission.WRITE in the command prompt. Then, proceed with login. Of course you need to enable USB debugging and have ADB properly installed on your PC before you begin.


text:
Why does Google Voice Typing transcribe certain words incorrectly, and not offer alternatives?
There are a few words that I use in everyday conversation that Google Voice Typing doesn't seem to want to recognize.  The first is "extraordinarily."  It always transcribed "extraordinary Lee."  The other two words (in censored format, since I imagine vulgarities are kinda frowned on in the forums) are the s-word with the suffix "ty" appended, and the mf-word.  The former is always transcribed with only one T.  The latter is spelled without the C.
I swear a great deal.  It's how I talk.  I'm also a stickler for proper spelling and punctuation, so it bothers me that Google spells cusswords like a fourth grader, in addition to the other typo.  Also, recently it seems that all the options for corrections have disappeared--every time I dictate something, there are NO words underlined at the end.  What gives?  Anybody got any input on this?

If I say "extra (pause) ordinarily" it writes extraordinarily out as 2 words, so that may be a small bandage. But obviously it's not good enough, and I'd love to know a way to train Google Voice too.

Why does Google Voice Typing transcribe certain words incorrectly, and not offer alternatives?

The Google voice  typing does offer some alternatives:

Tested on Android 12 with a Google Pixel 6 and Gboard keyboard.

Is it possible that alternative words were not presented when the OP wrote their question?   Also, did Google Voice Typing ever exist outside of Gboard?   BTW, your screenshot is fantastic, especially with your avatar photo at the top!

@RockPaperLz-MaskitorCasket  alternative words may indeed not have been presented when the OP wrote their question. I recall having the same problem a few years ago. I don't recall whether Google Voice Typing ever existed outside of Gboard. Thanks, yes pretty amazing the resolution of current phones!

Thanks for the update.  What I would love to see is quality offline voice typing, and preferably not from Google!  I spend too much time correcting words I tried to type with my oversized fingers... and in lieu of a good voice typing tool for Android, I'm still searching for an offline swipe-to-type keyboard with high accuracy.

@RockPaperLz-MaskitorCasket yes I wish benchmarks were made more often https://www.isca-speech.org/archive/pdfs/interspeech_2018/dernoncourt18_interspeech.pdf

Thanks for the link.  BTW, I just posted this related question: https://android.stackexchange.com/questions/244537/do-any-versions-of-googles-voice-typing-work-completely-offline

I just opened the link you provided... I see you're one of the authors... fantastic!