Flash OS firmware on an OS corrupted device via TWRP I have a big issue: I got 2 units of the Android TV device called "Stream+" sold by Channel Master, manifactured by Technicolor (https://www.channelmaster.com/Stream_OTA_DVR_p/cm-7600.htm)

One is perfectly working.
The other one has the OS files completely corrupted and does not even allow me to complete a factory reset successfully (and that's out of warrancy as well, so I have to fix by myself).
All it does when is switched on is showing a welcome logo, then attempts to load the OS but stays stuck forever, freezed in a black screen.

The following is the menu with the options shown when I load it on recovery mode: https://images2.imgbox.com/c9/0e/E947NI4Z_o.jpg

What I want to ask is...
Can I use TWRP to flash a copy of the OS Firmware from the device 1 (the fully working one) and then flash the defective one with it?
Defective one, as said, DOES NOT load the OS, all I can do is using one of the options shown in the above pic.

Have I got any chances to solve this through TWRP? (Or anything else)

https://www.androidcentral.com/10-basic-terminal-commands-you-should-know
this is a starting point to flash twrp or a custom rom using the Android Debug Bridge  ADB

Look for a utube how to install ADB and fastboot for your pc . Then when u have adb command window open connect usb to device & use
 1. The adb devices command  which is    "adb devices"

do this first before down loading any of the sdk package as you need to know if your pc can recognize your device.

you could also use somthing like this for the type of device you have this only works for samsung but there are others for different manufactures

https://www.google.co.uk/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&cad=rja&uact=8&ved=2ahUKEwjz65GBkaneAhWlhKYKHaTHBuQQwqsBMAN6BAgDEAQ&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DJv538rOL5p0&usg=AOvVaw3bIUhWGgbgikQiD3eBUfG1

hope this points you in right direction


Soft bricked Moto G4 (XT1625) after SuperSU install So, yeah. I told a friend I would root his phone for him... and I went and soft-bricked it. Haven't told him yet, because I'm hoping I can fix it before long, but I'm running out of options (and time).

Side note:

I followed this guide when trying to root:
www.reddit.com/r/MotoG/comments/22mimr/the_guide_to_rooting_the_motog_with_a_howto/

and got until unlocking the bootloader when I realized that instead of being a guide for the Moto G4, it was a guide for the Moto G on android 4.x.x.

So I did flash the wrong logo.bin, but hopefully that was the only issue created there. I got the correct one elsewhere and all was working fine.

End side note

So I moved to how-to-geek's tutorial here:
http://www.howtogeek.com/115297/how-to-root-your-android-why-you-might-want-to/

I got twrp installed, booted in recovery and loaded SuperSU (version below)

SR1-SuperSU-v2.78-SR1-20160915123031

Now it's softbricked. Kind of just hangs on the boot screen.

I can get into the bootloader and twrp, but that's about all I can do at the moment. I've tried reseting the cache and dalvik cache, and have tried formatting the device with no luck.

My next step is that I'm installing vanilla firmware from:

http://rootjunkysdl.com/files/?dir=Moto%20G%204th%20Gen%20XT1625

and I plan to try to flash that when It's all done. I'm unsure if that's safe, but don't have many other options.

If you know anything I can try, please reply. Any help is greatly appreciated

Proper research would have prevented this, in the future if you need information on rooting a device, go to a REPUTABLE source like XDA or a similar forum and make sure the information is specific to your device AND the current Android version. Lollipop, Marshmallow, and now Nougat are changing the way rooting is being done.

All retail/unlocked Moto devices running Marshmallow have an extra step that is required when flashing to force a systemless root installation by the SuperSU install script.

After successfully flashing TWRP and booting it, go to Advanced - Terminal and enter:

echo SYSTEMLESS=true>>/data/.supersu

And press Enter, then exit. The spelling and spacing must be exact or it won't work. Then go to the main menu of TWRP and flash SuperSU normally, you should see the script specifically state it is doing a systemless install and patch the boot image (and in your case, cleanup an old standard root installation).

Source

Please use only the referenced version from my thread (yes, I am the original author of that source thread), they are tested and working to both root the device, and cleanup a failed root.

Be aware on the first boot after this procedure, the device will boot loop twice, do not be concerned, this is normal, then it will boot normally after that.

And since you did not do a nandroid backup before rooting (shakes head), you may need to flash back to stock via fastboot before this procedure will work. The image for your device is available here. Remember that you cannot flash this in TWRP, you MUST flash each partition manually with fastboot and this will return the device to out of the box condition.


Got weird fullscreen ad when visiting website When I vistit on my nexus one the website alternativeto.net and open a subpage then suddenly I see a fullscreen ad with the title "liferay.com" and the address cat.m.ifortune.mobivillage.de

I see the desktop version of alternativeto.net when I visit them

Is it a problem of alternativeto.net or is there some virus on my smartphone?

It doesnt happen on other websites while surfing with my smartphone

if it is not android related, please move it to the right board (didnt know if i should post it in superusers?)

It has to be related to the website. It's possibly just a pop-up ad.

Currently there's no known virus for the Android platform. There're other forms of malware but no viruses. Nevertheless you should always make sure to only install applications from trusted sources.


Is the lt03wifiue build the same as n1awifi? I have an SM-P600, when I download TWRP it shows lt03wifiue for the build name. When I download LineageOS it shows n1awifi for the build name. Are these two the same builds?

n2awifi is the TabPRO 10.1. You might be referring to n1awifi (which you correctly mentioned in your other question).

Sometime during development, some Samsung devices were reassigned codenames, and lt03wifi was renamed to n1awifi (see commit here and developer note here).

No need to worry as these are still the same device, and the ROM itself has provision for the name change (it checks match for either codenames when installing).


SMS and Gmail notification volume Is there an app that can control the volume of notifications for separate apps like SMS and Gmail? I searched around and found a number of old threads that says it's not possible.  There was an app called WhoIsIt that did what I was looking for but it seems to have been discontinued.

Otherwise I guess I'll have to make a custom ringtone that's louder than normal and use different ringtones for SMS and Gmail.

I'm on Android 2.3 btw.

Quick Answer
Volume control is managed system wide. The Android OS doesn't support independent control per application, only per stream type.

Technical
The AudioManager Class only provides developers a way to adjust the audio volume per Stream type, not per application running.
This means that when setting the volume for a specific stream, will affect the entire system.
Currently available streams:

STREAM_ALARM - The audio stream for alarms.
STREAM_DTMF - The audio stream for DTMF Tones.
STREAM_MUSIC - The audio stream for music playback.
STREAM_NOTIFICATION - The audio stream for notifications.
STREAM_RING - The audio stream for the phone ring.
STREAM_SYSTEM - The audio stream for system sounds.
STREAM_VOICE_CALL - The audio stream for phone calls.

Most of this screams exists since the API level 1, and continue to act the same way on the current API level 16.


I have a hard bricked nexus 7, I have a hard bricked Asus nexus 7 i have tried everything can find to "unbrick" it.  i get to the google logo and thats as far as it gets. anyone got any ideas.

I can get to fastboot mode. I can move the choices from start to restart bootloader to recovery mode to power off to start. I have pressed the power button on each choice. if i hit start it goes to the google logo and freezes there. If i hit recovery mode it  goes to the google logo and no farther. hit restart bootloader comes back to start then hit the power button and the google logo comes up and freezes. same at the recovery mode. Power off is the only thing that works.

Thanks for the help

did you try to get an image for your nexus device from this place: https://developers.google.com/android/nexus/images?hl=en and flash it ? If nothing is wrong with the hardware then this will help, just follow the steps provided on that page.

By the way, i've upgraded my nexus 7 to the latest Android 5.1.1 and i could not use it, because it keeps on freezing, rebooting. Had to downgrade back to 4.4.4 and now my device is back.


Link2sd: boot loop at reboot I'm happy with link2sd functionality (just installed: everything looks awesome, lots of free space). I reboot and my Acer liquid metal is stuck in bootloop.
I take the sd out, boot again and everything is ok. I pop the sd in while the phone is one and I can't see my apps on sd :(
Something is wrong with link2sd mount script but how can I debug this?

Have a look at the following
Issue with the Apps that are installed on SD Card after reinserting the SD Card

I was one of the Hard user of Link2SD application. What I observed from this app is that you should not remove your SD card once you have applications on your SD Card. While phone booting some of the applications gets initialized.

If the phone system does not find the SD Card and its applications then it is going to break the link between the SD Card applications and the system.

You might be seeing those applications on Settings -> Applications -> Manage Applications
but they won't be accessible.

To answer your question there might be a way but not known to all. You can mail the developer of Link2SD mentioning the issue. They might give you a solution.


How do I setup a Gmail account with 2-step verification in K-9 Mail? I'm trying to setup my Gmail account in K-9 Mail, but when I'm setting up the incoming server, I keep getting the error: "Wrong username or password". When I'm trying to set up an outgoing server, I get an error which directs me to the two-step verification at Google.

I have 2-step verification configured on my Google account, but can't seem to get this into K-9 Mail. I've searched all over and tried following different guides, e.g. this question, and I've also tried to change the password on my Google account but nothing helped.

How can I properly configure K-9 Mail for my Gmail account with 2-step verification?

IMAP clients generally need to use application-specific passwords in order to access accounts that use 2-step verification. You'll need to generate a new app-specific password, then use that to set up your incoming/outgoing servers instead of using your regular account password. Google's support page (linked above) includes instructions for doing this. Summarized, the procedure is:

How to generate an application-specific password

Visit your Google Account settings page.
On the left, click Security.
Under the "Signing in to Google" topic, click App Passwords.
Using the dropdown menus within under the App Passwords section,  select which application you would like to generate a
password for along with the device then click "GENERATE". You'll then
see the application-specific password (ASP) you just created along
with instructions on how to use it.
When you sign in to an application requiring an ASP, enter your ASP in the password field, and make sure you check the "Remember password"
option if you want the application to remember the code.


How do I create a shortcut to another file or folder inside a folder? How do I create a shortcut to another file or folder inside a folder?

Example:

Suppose I go to a folder A /storage/sdcard0/pictures. I know that I have another folder B /storage/sdcard1/music. I want to create a shortcut inside folder A that point to folder B such that when I click on the shortcut, it goes to folder B.

I would appreciate if the answer is not about creating a shortcut on your home screen because this question is about creating a shortcut in a folder, not on the home screen. Thank you.

For the benefit of future visitors, Android's /sdcard is an emulated storage, not the real filesystem. It doesn't support symlinks (what you call shortcut).

See this answer for details.


How to get notified about removed apps from Google Play Store? Recently I found some apps (which I already installed) have been removed from Google Play Store for different reasons according to Google.

Is there a way to get notified about removed apps from the Play Store, like some app to check currently installed apps, whatever (special) newsletter/feed for this or any other way?

The whole answer relies on the fact that when this query is made:

https://play.google.com/store/apps/details?id=PKG_NAME    # PKG_NAME is the package name of an app

among other things, the HTTP code in the returned headers in most of the cases would either be:

404 (resource not found) - app not available
200 (success) - app available
403 (forbidden) - app not available in your region or you're not authorized to access the resource

I've used the said information in the two solutions proposed here.

Automation

I found Tasker (user guide) apt as well as flexible for the job. Details on trigger i.e. Profile would follow later. For the time being, follow these instructions for the core.

Create a task named App Status and create the following actions in it:

Code→ Run Shell

Command: pm list packages -3 -i | grep -e "com.android.vending" -e "com.google.android.feedback"
Store Output In: %Pkgs
select Continue Task After Error

This will store the list of all the apps' package names installed from Play Store, into variable Pkgs. Remove

-i | grep -e "com.android.vending" -e "com.google.android.feedback"

from Command if you don't want to restrict the task to apps installed only from Play Store.
Variables → Variable Set

Name: %ret
To: tap Enter key in your keyboard for once

I learned this step from the post here by plepleus. This step is needed because we intend to copy each line (has a package name of an app) from Pkgs into a separate variable. It is for ease of use.
Variables → Variable Split

Name: %Pkgs
Splitter: %ret

This step splits Pkgs, makes an array of Pkgs and each line is assigned to an index of that array. Hence, the size of the array is the number of lines Pkgs had.
Variables → Variable Set

Name: %Count
To: %Pkgs(#)

We're creating a variable named Count and assigning it the length of Pkgs array, for the purpose of looping.
Variables → Variable Set

Name: %Tmp
To: %Pkgs(%Count)

Now that we're in a loop, we're storing the value assigned to a  Pkgs's index into a new variable named Tmp. This step is needed because Tasker has limited functionality when dealing with complex variable names.
Variables → Variable Split

Name: %Tmp

This step splits the line at whitespace and store the preceding and succeeding fields into Tmp1 and Tmp2. Tmp1 contains the package name among other things.
Variables → Variable Split

Name: %Tmp1
Splitter: :

This step finally extracts the package name from Tmp1 and stores it into Tmp12. Note that if Tmp was not declared in action 5, we would have been forced to split %Pkgs(%Count)1 which is an invalid variable name for Tasker.
Net → HTTP Get

Server:Port: https://play.google.com/store/apps/details?id=%Tmp12
Mime Type: text/html
select Continue Task After Error

This step queries the status of the app in Play Store and saves the returned HTTP code automatically in HTTPR.
App → Test App

Type: App Name
Data: %Tmp12
Store Result In: %Label
select Continue Task After Error

This step finds the app's label from its package name and stores it in Label.
Variables → Variable Subtract

Name: %Count
Value: 1

This step decrements Count variable so that we can move to next cycle of loop.
Task → Goto

Type: Action Number
Number: 5
If: %Count != 0

This step finally implements the loop. When this action is executed it checks whether Count is 0 or not. We've assumed that all lines in Pkgs had package name so it amounts to reason loop should run until Count becomes zero, in which case, simply exit.

How you would like to be notified is I leave upon you to decide. Whatever you intended to do for the purpose of notifying yourself the status of an app in Play Store, do it only between action 9 and 10. As an example, you can setup App Status task to show a notification when an app is not found in Play Store. You can add the action: Alert → Notify:

Title: Play Store: App not available
Text: %Label
Priority: 5
If: %HTTPR eq 404

You can use AutoNotifications to get around the Tasker's limited functionality of creating notifications.

Considering that a reboot causes loss of all received notifications, you can write the final output of the task into a file. Use the action File → Write File and use it in append mode. That's just an advice per Izzy's comment on the question. I won't be able to offer any help in this regard.

As for the Profile, choose any number of triggers you want. I recommend a time based trigger, but you can also opt to create a shortcut on home screen.

That's all for automation here.

Command-line

I couldn't ignore command-line which makes the objective so easy to be achieved in this particular case.

Dependencies

Requires busybox binary. If you don't have it installed, refer to: How do I install missing command line tools onto an Android device?
Requires aapt binary. If you're running a CM or its derivative ROM then ignore this requirement. Otherwise, for Android 4.x, you can consider downloading the binary from here. For the purpose of installing it in device, follow the root or non-root approach mentioned here, appropriately.

Android 5.x users: ask Google for assistance.

My little script

#!/system/bin/sh
# Check if the busybox binary exists under /data/local/tmp/ or /system/xbin.
# Set the detected binary's path into the variable busybox or exit if file
# doesn't exist or executable permission is not set
if [[ -x /data/local/tmp/busybox ]]; then
    busybox=/data/local/tmp/busybox;
elif [[ -x /system/xbin/busybox ]]; then
     busybox=/system/xbin/busybox;
else
     date +'busybox binary not found or executable permission is not set. Exiting';
     exit;
fi

# Check if the aapt binary exists under /data/local/tmp or /system/bin or /system/xbin.
# Set the detected binary's path into the variable aapt or exit if file
# doesn't exist or executable permission is not set
if [[ -x /data/local/tmp/aapt ]]; then
    aapt=/data/local/tmp/aapt;
elif [[ -x /system/bin/aapt ]]; then
    aapt=/system/bin/aapt;
elif [[ -x /system/xbin/aapt ]]; then
     aapt=/system/xbin/aapt;
else
     date +'aapt binary not found or executable permission is not set. Exiting';
     exit;
fi

# List packages which were installed from Play Store  and store the package names under /sdcard/acc_assoc_packages.txt.
# Remove -i | grep -e "com.android.vending" -e "com.google.android.feedback" if you don't want to restrict the script to apps installed only from Play Store.
pm list packages -3 -i | grep -e "com.android.vending" -e "com.google.android.feedback" | $busybox sed 's/package://g'| $busybox awk '{print$1}' > /sdcard/acc_assoc_packages.txt
$busybox printf "List of installed apps not available in Play Store:\n\n" > /sdcard/rm_packages.txt;     # rm_packages.txt would show the list of apps not available in Play Store

# For each package name in acc_assoc_packages.txt, find whether the package is available in Play Store.
# If not, the HTTP return code would be 404 in curl's output. Use it for any processing you want.
while read line; do
    ID="https://play.google.com/store/apps/details?id=";
    ret_http_code=$(curl -skI $ID$line | awk 'FNR==1{print $2}');   # -s is for silent mode, -k is use ignore certificates for SSL connection, -I is to show only header information
    path=$(pm path $line | $busybox sed 's/^package://g');          # get location of APK of package. Required for finding app's label
    label=$($aapt d badging $path 2>&1 | $busybox sed -ne '/application: label=/p' | $busybox cut -d "'" -f2);   # Get app label using $path

    # If returned HTTP code is 404, write into rm_pacakges.txt the corresponding app label, package name and print to standard output.
    # Else simply print to standard output.
    case $ret_http_code in
        404)
            $busybox printf "Status: Not Available - $label ($line)\n";
            $busybox printf "$label ($line)\n" >> /sdcard/rm_packages.txt;
            ;;
        403)
            $busybox printf "Status: Not authorized to access resource - $label ($line)\n";
            ;;
        200)
            $busybox printf "Status: Available - $label ($line)\n";
            ;;
        *)
            $busybox printf "An unknown error occurred. Are we online?\n";
            exit;
    esac
done < /sdcard/acc_assoc_packages.txt

Save the script under /sdcard into a file named app_status.sh and run that file from a terminal emulator app in this manner:

sh /sdcard/app_status.sh

Demo output:

(Click image to enlarge)

Shortcut

If you've busybox and aapt binary installed and working in device, you can drastically reduce the steps needs in App Status task.

Store the following script into a file named app_status.sh under /sdcard.

#!/system/bin/sh
pm list packages -3 -i | grep -e "com.android.vending" -e "com.google.android.feedback" | $busybox sed 's/package://g'| $busybox awk '{print$1}' > /sdcard/acc_assoc_packages.txt
$busybox printf "List of installed apps not available in Play Store:\n\n" > /sdcard/rm_packages.txt;

while read line; do
    ID="https://play.google.com/store/apps/details?id=";
    ret_http_code=$(curl -skI $ID$line | awk 'FNR==1{print $2}');
    path=$(pm path $line | $busybox sed 's/^package://g');
    label=$($aapt d badging $path 2>&1 | $busybox sed -ne '/application: label=/p' | $busybox cut -d "'" -f2);

      case $ret_http_code in
        404)
            $busybox printf "Status: Not Available - $label ($line)\n";
            $busybox printf "$label ($line)\n" >> /sdcard/rm_packages.txt;
            ;;
        403|200)
            # Intentionally left blank
            ;;
        *)
            $busybox printf "An unknown error occurred. We'll be victorious next time.\n" >> /sdcard/rm_packages.txt;
            exit;
    esac
done < /sdcard/acc_assoc_packages.txt

Now delete any action you have in the task and setup the following ones:

Code → Run Shell

Command: sh /sdcard/app_status.sh
Store Output In: %Pkgs
select Continue Task After Error

This step will write into file rm_packages.txt the entries as the apps not available in Play Store. This is the core action. The following actions are optional and meant only for the purpose of notifying yourself.
Task → If: %Pkgs Set
Alert → Notify

Title: Check apps' status
Icon: optional
Priority: 5
Actions: Action → App → Launch App → select a text editor app such as QuickEdit → Data: file:///sdcard/rm_packages.txt

Example notification:


Share WIFI from PC over USB All the questions with similar titles are the inverse of what I want. I would like to connect my tablet (that is "blocked" on the Wifi) to my Windows 10 computer over a USB cable and have the computer "share" the Wifi. Is this possible?

EX: My tablet is blocked from the internet (home policy) but you can get Wifi by asking and staying in the main rooms, I want to have my tablet access the internet by having the computer "share" the internet with the tablet. I don't know if this is possible and if it is would like to know how.

I have a Nexus 7 2013 32GB Wifi on 6.0

Different ways of sharing interet connection from Windows to other devices

Nowadays there is a lot of ways to share internet connection to other devices and each method has its pros and cons.

Here is a breakdown of methods:

Using Windows 10 Mobile Hotspot Feature:

Newer editions of windows 10 (after 1607 anniversary update) have a built in mobile hotspot feature which allows internet sharing to other devices

pros

easy to use as its built-in
no extra tools needed
internet is shared over Wi-Fi (no need for cables)

cons

some network types are not recognised e.g 3g dongles.

Using 3rd party tools

Nifty tools such as mhotspot,  or Connectify provide the ability to share internet to other devices by making use of Microsoft Virtual Wi-Fi Adapters

pros

provide many additional tools to monitor and customising  created networks
improved encryption
internet shared over Wi-Fi

cons

some of these are commercial softwares and  are relatively expensive

3a. USB Reverse tethering

Reverse tetherng is a relatively newer method of sharing internet especially from devices that do not have a wireless adapter.
 It uses the USB cable to share internet from the computer to the target device and oftern requires 3rd party tools and drivers as well as system modification of target devices.

Reverse Tethering (root)
Requires the target devices to be rooted prior to connection and a USB server application or server to be installed on android. For better coverage this method often requires another Xposed module Hack connectivity service to increase internet coverage to most apps if not all.

Reverse tethering (no root)
Similar to root based method but requires extra programs to be installed on windows

Specific requirements of reverse tethering no root:

Java runtime environment (JRE)
PC server application
Android server application

pros
 - can provide faster connections usually with low latency
 - reverse tethering (no root) works on windows, linux and mac

cons

requires usb cable
installs additional apps on PC and phone
connections can be difficult to establish
some of these workarounds only work for some apps and not every app is guaranteed to have internet access, but from my experience browser, Gmail, google play were working just fine

Update

3b. Using  adb to reverse tether

Using bash script

alias t='r && sz $tether && r && sz $n'
tether='am start -n com.android.settings/com.android.settings.TetherSettings && input keyevent 66 && input keyevent 66'
n='netcfg rndis0 dhcp'
alias sz='ad shell'
alias de='ad devices -l'
alias r='ad kill-server && ad start-server'
alias ad='adb'
alias pu='adb push'

Special thanks to user42276 for this script

Pros

One good thing about scripting is that it eliminates the need for third party apps which may bloat the device/PC

Cons

Pretty much similar to method 3a above

Using Windows ICS

Another way is to just use ICS in Windows with no third party software involved:

Requirements:

Terminal Emulator on your Android
Alternatively using adb shell commands (to use adb, you need to enable "USB debugging" on your Android).
Optional, BusyBox on your Android.

Instructions

Connect your Android to PC by USB cable and enable "USB tethering". You are still allowed to enable this option even when your 3g/wifi on your Android is off.
Windows will automatically search Windows Update and install driver for you.
Open "Network Connections" in Control Panel. Right click on an Internet connection that you have i.e WiFi connection (other connections like LAN also work), so right click on WLAN connection with Internet, and select "Properties".

In tab "Sharing" click "Allow other network users to connect through...", then select the USB connection in dropdown list below.

Click OK. Windows will automatically setup your USB network connection and assign to it an IP address (usually 192.168.xxx.xxx or similar; for Win 7 and later its 192.168.137.1)
Your Internet connection is now "Shared" and your USB connection is now "Unidentified network".

Type the following command in Terminal Emulator:

netcfg rndis0 dhcp

The name for usb interface inside Android may vary. It is usually rndis0 or usb0. Type busybox ifconfig to identify the name.

It can happen that automatic dhcp method does not work. In this case we have to do it manually:

Type these following commands in Terminal Emulator:

ifconfig rndis0 192.168.137.2 netmask 255.255.2 route add default gw 192.168.137.1 dev rndis0

If route fails, try:
busybox route add default gw 192.168.137.1 dev

Some applications (download in Google Play, Gmail, Facebook...) don't recognize the internet connection. You can try this way:

Enable temporarily 3G connection on your Android
Type: ifconfig rmnet0 0.0.0.0
The name for 3G interface inside Android may vary: ppp0, rmnet0... (Type busybox ifconfig to identify the name).

This will make applications see your Internet connection via USB as 3G/4G

Well its up to user to know which method suites them best. Hope it helps


What is a goldcard and how does it work? I know how to create a Goldcard, but I'm curious as to what it actually is and how it works. I've done some Googling but can't find any information about the details.

To create a Goldcard one needs the CID, which from what I can gather is an SD identifier for the card. The CID is then reversed and entered into a site which generates a Goldcard image. The image is copied to bytes 0x000 to 0x170 of the device.

Does the CID change when the card is formatted?
If I plug an SD card into my computer, will I get the same CID as when it's in the phone?
Is the Goldcard image a boot sector?
How does it fit in with the FAT32 filesystem on the card?
How is the Goldcard image generated?
Could I generate one myself, or modify an existing image for a different CID?
What does the Goldcard do when the phone boots? Does the phone boot off the card?
How does this bypass the restrictions to allow other firmware to be flashed?

To partially answer my own question, the CID is a unique identifier assigned to the SD card at manufacture time. It is stored in a special register which is accessed using the SEND_CID command. From page 93 of Part 1 Physical Layer Simplified Specification:

The Card IDentification (CID) register is 128 bits wide. It contains the card identification information used during the card identification phase. Every individual Read/Write (RW) card shall have a unique identification number.

The CID therefore does not change when the card is formatted, and will be reported the same regardless of which device the card is plugged into.
The card does have an MBR partition table, and the Goldcard image is inserted into the code area of the MBR (between 0x000 and 0x1b7). There is therefore no direct interaction with the FAT32 filesystem. The first 128 bytes of the image are null however, and so it doesn't seem to actually be executable.


Android Wear on Samsung Galaxy Gear Live I want to get a Samsung Galaxy Gear Live,and want to use it on its own gsm network,is this possible? Also,does this watch support data through  wifi connection?

Gear Live doesn't even have a SIM slot, so how would you expect GSM?

It does have limited WiFi capabilities which are enabled in an earlier update to Android Wear.


What are the security implications of using an app built "for debug"? I've just come upon several .apk files hosted with Github projects which are "compiled for debug" (i.e. having application-debuggable set, which one can e.g. check using aapt dump badging /path/to/apk | grep debuggable. Not being an Android dev, I only have vague ideas what that is for (extended debugging via ADB) – but that's not the question here.

My question is from a pure end-user perspective: What are the (security) implications of installing/using such an app? What are the risks one must be aware of?

Of course I searched the web for hints on this, but again only got vague hints like "thou shalt not", and "for a release this should be switched off" – no reasons, no background. For that one could think "obviously no big deal" – but notes like Do spend some time thinking about the security implications for your users in this context (see this answer at SO) suggest differently.

Can anyone here provide some insights?

There aren't really any innate problems with running a debug app.  If someone grabs your unlocked phone, enables Developer Mode, and starts debugging they might be able to grab sensitive information from the app's memory slightly more easily — but that's not particularly realistic and easily countered with a lock screen.

Debug information will also make it harder to make use of security through obscurity, which we all know is not real security.  This obviously isn't even a factor when it comes to open-source apps, since they can simply inspect the source to find a flaw.

However, the specifics of what code paths you've added for debugging can definitely be security holes.  Maybe for testing and verification purposes, the debug version writes the user's password out to logcat when they sign in, for example.  There is a great deal of PII that could be exposed this way.

For an end user, all that you know is that it's probably more likely for an arbitrary app to leak information if it's a debug version.  Unless you are searching for it yourself, you're not likely to see it.  That's probably enough reason to avoid such apps — doubly so since a developer who doesn't know the difference between Release and Debug versions is probably not protecting your data very competently either.

Dan Hulme also made a good point in chat: A debug version probably won't be properly signed, meaning that it could be "upgraded" from a malicious source.  I would again presume this to be an unlikely occurrence, but it is another point against it.


How can I export Notes created in Outlook to Memo in Samsung Galaxy A3 I'm new to Samsung Galaxy smartphones and just got a Galaxy A3. I already sync Contacts, Calendars and To Do from Outlook to my smartphone using Smart Switch app, however I haven't been able to find a way to export or sync my Outlook Notes to my Samsung Galaxy A3 smartphone.

Any idea how can I do this?

The iPhone and certain models of BlackBerry smartphone can sync directly with Microsoft Outlook using iTunes or BlackBerry Desktop Software, respectively, but Outlook doesn't directly support Android with this option as far as I know.

So this is where third party apps like VCOrginizer comes into play. It allows you to Sync Outlook notes from WiFi. If I were you, I'd certainly check it out.


Apps opening automatically when updated I have a Nexus 5 that I just updated to Android 5.0 Lollipop. Since then, whenever an app is updated from the Play Store, it opens automatically. If 15 apps are updating, all apps will open one by one.

I can't find any setting for this. How can I stop this?

You could disable the automatic updates from the Play Store.

Then you could control which app should be updated, so one at a time would be opened.

I'm pretty sure that is a bug that will be fixed in a near future, but you could turn off that until that fix come.


Can I force a message to be sent as an MMS? Is there a way to force a message to be sent as an MMS?

There are multiple reasons that MMS may be preferred.  SMS and MMS may have different fee structures dependent on plan, carrier, and country.  Additionally, some messaging software may allow for more delivery notification options for MMS than SMS.

As per Broam's suggestion above, I'm posting my comment as an answer. Hopefully some people finds it useful.

If you add a Subject to the message you're making, it gets converted to MMS format. Even if the Subject is empty, at least, that's what I know


Where is the MTP and PTP option in Android 9? Where is the MTP and PTP option in Android 9?

I checked

where is the option to enable MTP?

and it's not there.

I have a Moto G7 Power. I don't know if that makes a difference.

I see there is a command line option How Do I change from PTP to MTP mode? Cannot find options in settings

But i'm looking for the GUI option

I think they moved it from settiings..storage.  as it was there on an old phone.
I tried tapping build number 7 times, I can't see developer options.

an answer from barlop https://stackoverflow.com/questions/16596877/android-studio-doesnt-see-device/18515360#18515360 mentions that it's now in developer options

i can see developer options now, (And FWIW I turned on USB debugging).  but they moved the sectoin to MTP  from the 'input' section of developer options to elsewhere

To find the USB options now, there is a search within developer options, search for USB. Now it comes under "default USB configuration"

and you see USB controlled by, or USB preferences.. And it's there

update 2020
And if PTP is listed but not MTP, then maybe what android may refer to as "File transfer" is the same as MTP. See my comment  PTP but not MTP   , this link https://www.xda-developers.com/install-adb-windows-macos-linux/ says "file transfer (MTP)” mode"   which suggests to me that they may be the same. And BTW to install adb you probably also need the driver from the android sdk as mentioned https://windowsreport.com/windows-unable-install-adb-interface/ so you don't get a yellow exclamation mark for adb under "other devices" in device manager.


'Charge This Phone' vs 'Charge Connected Device' When connecting my phone to my laptop, I have these two options

Charge this phone (Just charge this phone)
Charge connected device (Charge the connected device via USB)

I don't understand the difference between these two options.  However, if I try the second option, it fails with the error

Unable to use USB cable for Charge connected device

To the best of my knowledge, the ports I tried were USB3, so that nixed my guess as to what the problem was.  What is the difference between these two options and if the latter is better, how can I use it?

Charge this phone

It means that your phone will be charged from the laptop battery via USB.

  Charge connected device (Charge the connected device via USB)

It means to charge your laptop via USB from your phone. Most probably, your laptop (like that of many others), cannot be charged via USB, so if you choose that, it is giving an error. But the option still persists simply because your laptop runs on battery. Had you connected your phone to a PC, this option would not have come.


Is it possible to install CyanogenMod for "Samsung GS4" on a "Samsung GS4 Active" device? As I was desperately waiting for the 4.4 update on my Samsung Galaxy S4 Active, I read that Cyanogenmod was available for the Samsung Galaxy S4.

My problem is: Is it possible to install the CyanogenMod ROM for the Samsung Galaxy S4 (GT-I9205) on my Samsung Galaxy S4 Active (GT-I9295)?

NB: The GT-I9295 is more or less the same as the GT-I9205, but has physical buttons. So I assumed that the drivers (and the ROM) could be different, but I'm new to Android ROM hacking.

This is actually an important question, and far better to ask now than try it and be stuck with a blank screen!
Android ROMs are specific to the device. This is why CyanogenMod and others have the specific device model and code name on them.
Even in cases where the deveice looks and feels the same and has the same name e.g. Samsung Galaxy S4:

GT-I9505
GT-I9500

They both run Android 4.4 now, and they look and to all user purposes are the same device. Under the hood there are differences, and no ROM will be compatible between the two.
I had used the Google Edition S4 as my example as ROMS weren't compatible between two devices with EXACTLY the same hardware, but work arounds are being found. The general rule is: If your device isn't specifically listed do not install the ROM!
In your case here I'm sure it will brick the device as there is different hardware (buttons etc), a different model code, and a different partition structure.


How can I determine storage directory from ADB? Is there a way I can use ADB to determine the external storage directory (equivalent of the Android API call Environment.getExternalStorageDirectory())?

adb shell echo $EXTERNAL_STORAGE.  All credit goes to Flow for leading me to experiment and find this.

Naturally you can use cd $EXTERNAL_STORAGE or whatever else you might need during an adb shell session or from a terminal emulator.


Is it possible to disable gmail sync completely, without logging out? Is it possible to completely disable all Gmail synchronization, without actually logging out of the account?

The use case is a phone for a senior who does not read email on the phone.  For senior reasons the phone is set with no passcode to unlock.  As it stands now I've set the sync to the minimum possible (1 day if I recall), but there's still the ability to search for and find private email messages.  There are potential nosy persons with access to the phone.

See also Logout from Gmail account without logging out Google Play Store account and How can I set up my Google account without syncing Gmail?

And as everyone should know: anyone with access to a phone can reset the password on almost any online service account.  A few banks are smarter than that, but not all of them.

Disabling sync and removing email history is possible, but it will not stop others from simply enabling sync.

Option 1.
To disable sync for Gmail, go to settings -> accounts -> Google. And deselect the Gmail sync option.

Now, go to settings -> apps -> Gmail -> storage -> clear data. This way, when you open the Gmail app, it will not show the email history.

Option 2.
disable the Gmail app. Go to Settings -> apps -> Gmail -> disable. This way the Gmail app will simply not show on your home screen, and you will not get any notifications from the app.

But to fully disable sync without anyone having a way to enable it again, is not possible as far as I know.

Email could be access in many ways, like open the chrome browser and going to gmail.com there, it will not even ask for you password because the phone is already logged in.

In short your options are: lock the phone with a simple code that can be used even by seniors, or remove the current account and add a different one, or use the options above, leaving the phone vulnerable.


How do I save/lock specific comment bubbles within a text message thread? Is it possible to make the downloaded SMS application, "Google Messenger" save just part of a thread in a text conversation on my Moto E Android phone?

Example: I'm chatting back and forth with a friend, a long thread, a long conversation.  In one comment bubble, my friend gives me an important address that I want to lock and save, but I want to delete the rest of the thread (all the other bubbles).

I used to be able to do this on an older android phone.  It had a different sms app.  I don't remember what that app was, but I could delete my entire inbox with the exception of specific comments/bubbles on which I had put locks/saves.

My current phone model number is Moto E (2nd Generation) with 4G LTE.

OS is lollipop 5.1 (I think)

I think you've answered your own question in your post when you said that you used to be able to do this, but had a different SMS app.

This function, as far as I know, is app specific. I am able to lock messages using ChompSMS on Android 5.0.

Try different SMS apps and see which is best for your needs.


Does changing a PIN decrypt and encrypt everything again? From this answer and comments on it, a PIN is used to encrypt the phone and it must be used to decrypt it. So what happens when a PIN is changed or even removed?

Does changing the PIN necessarily decrypt the entire phone and encrypt again?
If not, does the phone need to remember every PIN ever used?
If a PIN is removed and the Slide to Unlock security measure is used, does the phone become decrypted? Or does it remain encrypted with the old PIN?

A phone is encrypted with a randomly generated dedicated key, then the key is encrypted with PIN and stored somewhere else.

When you replace the PIN, it's the key that gets decrypted and encrypted again. When you remove the PIN, the key is decrypted.

It's a bad practice to encrypt the device with an easily-changeable PIN because encryption takes time, and comsumes power.


Why are the checkboxes different on different devices? Why is there a difference in the look of the checkboxes between this device and this Samsung device?

Is this affected by the launcher, in which case the reason is clear?

Theming is independent of the launcher, although both may be considered part of the UI; for example, the TouchWiz launcher and theme are elements of Samsung's TouchWiz UI.

My Samsung Vibrant is running a custom ROM called Bionix, and they've re-themed the device so my checkboxes look like this (perhaps the only thing I dislike about the ROM):


Using LineageOS native SSHD over ADB Ive got most of the way to getting native sshd working over usb (mainly for shell and winscp), but very murky and not quite there yet. I want to use the built-in sshd, not download an app for it.

Lineageos has a built-in SSHD and ADB allows forwarding from local host:XXXX to the phone on port 22. I've got a sshd_config file ready (password for now, RSA later), and Terminal + su all working. By trial and error I've found the sshd-start or start-sshd files and I'm probably most of the way there. But its hard to reproduce a trial and error approach and I haven't actually got it there yet.

The furthest I've got is that I can run ssh (client) on the phone and it'll at least try to connect to itself (in another terminal window), but doesn't yet fully reach a shell prompt. It gave errors on /var/run/etc and on missing an 'empty' dir which I manually created and seem to help but I don't really know if that's the right or best way to do it.

Assuming I have a valid config file and a clean install with no changes, what are the basic steps from the start, so.I can enable native sshd, start/stop it manually (not started with system), and access it across adb?

I would like to use /sdcard/sshdata for any keys/config, so they are preserved across installing, and for the moment, password over adb via usb only (not WiFi). I'm happy to mod some sshd-related files in /system and probably need to, but I don't know which I need to change.

What is the simplest recipe to get sshd available so that I can fire it up and connect when needed?

AFAIK with LineageOS 14.1 (I have a rooted FairPhone 2), sshd is enabled by default and ready to use. Its config file is /system/etc/ssh/sshd_config which points to /data/ssh/ for keys storage. I guess you can reconfigure it to use /sdcard/. In theory, /data should be preserved across system updates, though I have not much experience to confirm it. The daemon needs to be started manually (this also generates the server's key pair; note that the start-ssh doesn't launch sshd in the background, hence the &):

$ adb root
phone # /system/bin/start-ssh &

Alternatively, you might want to configure another sshd instance as explained here.

To have sshd start at each boot (I still haven't tried), one option is to use Termux:Boot. Be aware that having a daemon always running might drain your battery!

As for running ADB and SSH, you say

  ADB allows forwarding from local host:XXXX to the phone on port 22

It is my understanding that this is not correct (unless you mean forwarding from a dev machine to another host which the phone is tethered to), as I don't see how adbd can handle encrypted connections. A quick sniff test with ngrep shows that my Wi-Fi connection on port 5555 is clear text.

Otherwise, make sure (I guess you already know it, but repetita iuvant...) that on your phone

Developer options are enabled
Developer options -> Root access is set to "ADB" or "Apps ADB"
Developer options -> ADB over network is enabled

Then, on your computer terminal, the following command should get you on the go:

$ adb connect <your-android-host-name>
$ adb shell

...expect an excruciatingly slow, not encrypted connection :-(


Samsung Note 3 Phone - Clicking camera button fails to take picture Frequently, I see x1.0 in the middle of my camera preview screen, to the left of a small white box.  I'd like to know what exactly that means, but it seems like when it is there, I cannot take a picture.  Absolutely nothing happens when I click the camera button.

I have taken lots of photos with the phone, but sometimes I fall into the above scenario, and it seems like the only thing I can do is to back out and restart the default camera app.

I knew why you have x1.0 appeared on the screen and can't take photo. I had the same problem and found out the answer. If two fingers touch the mon, it will appear x1.0 in order to zoom, and if there is still one finger on the mon and haven't move away, you can't press the camera button until all the fingers have moved away from the mon, the camera button will function again!


Does the play store still show the provider and mobile information, if the google account is removed/changed Basically what I would like to know is will the play store web version still show the provider and mobile information ie [This app is compatible with your PROVIDER_NAME DEVICE_MODEL.] if the device is factory reset/rooted/removed the google account/change google account.

Thanks in advance.

Old devices stay in your list in the Play Store for quite a while after performing any of those actions. I gave one of my old Android phones a factory reset and then gave it to a relative a few months ago, they then registered it on their Play Store account, but it still showed in the list on my account for a few months afterwards (but I couldn't push apps to it from my account any more).

See also this previous question where an old device has been factory reset'd and still appears in the Play Store list: Deleting a device from the Google Play Store?


Samsung Music Player - Multiple Genres I have a library of around 6000 songs. Each one of them is tagged properly, however, there are songs, which have multiple genres and some do have multiple artists.

I tried separating them with delimiter ";" it didn't work, the music player showed the genre in the list as Pop;Rock;Dance instead of showing three different genres.

I also tried other ways of formatting like, "//" or "/" or "\" but none of them worked!

Is there any other way to approach this?

You can have a software name Virtual DJ. It can hep you to change your song Genres and many things which could help you to properly manage the Genre Section in Samsung Music Application


Very light overlay-ish home screen Is there a homescreen that will basically pop up when I hit home, and I can go right back to what I was doing with the return softkey? It can require root, as I have that.

I actually found TaskXP for MultiTasking which someone recommended. It's just what I wanted. It shows my recent apps and any apps that I pin, in an overlay that I can quickly hit back from.


how to get skype to work when the phone sleeps I got a Samsung Galaxy 3 GT-I5800 with Android 2.1. Installed Skype on it, and when connected to wifi it works. When WiFi is not available it switches to G3. While I use the phone, skype works fine. If the phone sleeps/locks, no one can call me from their PC. I think it's because skype disconnects when the phone sleeps and logs-in as soon as I activate the phone touchscreen.

What do I need to do, to get Skype to work and receive calls at all times?

Android shuts of WiFi after a certain time by default, sometimes as little as 15 seconds after the phone is locked.  To change the timeout period, go to:

Settings -> Wireless and network -> Wi-Fi settings

Then press the menu button, choose Advanced, and change the Wi-Fi sleep policy to "Never".


Can I use tasker to override "lock on power button"? I have the app Tasker, I want to know if there is a way I can create a task that changes the state of the lock screen setting "lock screen when power button pressed" from on to off and vice versa?

I'm not sure if the following will be a perfect match for you, but you always can adjust it once you've got the idea. In my example, I will refer to Tasker only: not having worked with the Secure Settings myself, I can only tell things about it from the hear-say and what I've read.

Basic Tasker knowledge assumed:

Conditions:

State → Wifi Connected, parameter: SSID set to your WiFi's SSID
State → Display is off

Task:

Display → Keyguard off1

This is with plain Tasker, and should solve half of your problem: When connected to the specified WiFi, and the Display is turned off, turn off Keyguard. As soon as you turn on the display, the condition is no longer met -- and Keyguard would automatically be activated again. Problem will be: if you do not take any immediate action, that probably locks your screen again (first action of keyguard). To prevent this, you could try adding an exit task:

Exit Task:

Tasker → Wait, parameter is the time interval (start with e.g. 10s)
Display → Keyguard on1

This would cause the Keyguard re-activation to be delayed by the given time interval. I did not try this -- it might very well be that keyguard still would lock the device, even though you already might do something in another app. But you have already noted the "footnote sign", so let's go for that:

1 Instead of handling Keyguard directly, let Secure Settings do that. I know it has the ability to e.g. have Keyguard only come up once (initially) when a condition is met. This would simplify things greatly: the Task then would be Plugin → Secure Settings, and the Secure Settings parameter should be to set Keyguard as described: "only needed once initially, then no more until the condition is no longer met". Also drop the "Display off" condition: when the display is off, you cannot unlock it either (you see where your problem most likely was). So it should work as you have intended -- after the first unlock.

Not exactly what you wanted (one-time unlock is still needed), but almost. The Exit Task would not be required in this case, as Tasker automatically reverts back once the condition is no longer met. Play a little with this, maybe Secure Setting even allows for something better.


How to distinguish is the Google Pixel phone from Verizon? As titled, is there anyway to find out?
I do not see any Verizon app in there, maybe because it has resetted once?

I have been reading online and this is what I have gathered.  You need to check the following using the CID Getter app.

Alternatively it has been mentioned you can also check the OEM Unlocking option here.  If it is grayed out it isn't available for your phone.


Is it possible to use two dictionaries at the same time in swype? I type in two languages regularly - depends on who I communicate with, in perhaps 60:40 or 70:30 ratio. Sometimes I even use words from both languages in the same text. Both languages are supported by Swype. But I can only select one of them at one time, so when I need to type in the other language I have to change the settings, which is quite inconvenient. Can I merge two dictionaries or activate both of them at the same time?

you can long-press on the letter Q to quickly change language on Swype


My computer doesn't recognize my phone, neither on ubuntu nor windows I own an LG-K430T, and I use it to share internet with my Desktop PC through USB tethering. Or I did it for a year straight until today, when my PC isn't recognizing my phone anymore, neither on Windows 7 nor Ubuntu 18.04.2. It doesn't even allow to share files, since there isn't a pop-up(neither in the phone nor the PC), but the phone does charge. I thought it could be my USB cable that worn off, but using this same USB cable with my sister's Huawei, it does allow to share files/internet. Furthermore, I tried with 3 different USB cables and different ports, and my phone still isn't recognized. Then, I tried it on Ubuntu, and to my surprise, it's still not recognized. So, I think it's safe to say the cable isn't the issue, nor the operative system( Also, I restarted both the phone and the PC) Then , In ubuntu, I tried to enable USB debugging followed by lsusb and nothing yet. My phone was last updated in april 2019 and its android version is 6.0, so I don't have a clue about what's causing the issue, although I'd blame the phone..

On windows,I have tried to update drivers of the 'Unknown device' on Device administration, but it says they are already up-to date

EDIT:
Answers to comments: lsusb output:

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 1004:6344 LG Electronics, Inc. G2 Android Phone [tethering mode]
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 04f9:0413 Brother Industries, Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 04f3:0235 Elan Microelectronics Corp.
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

(THE LG PHONE THAT IS TETHERING IS ANOTHER ONE, DIFFERENT FROM THE ONE WITH THE PROBLEM). So, in short, lsusb doesn't recognize it.
The MTP option looks already enabled

Further info

The other day a guy enabled USB debugging on my phone and got his computer to read its files!(He had a version of Windows). When I got home it worked too in my Windows! Then it downloaded some drivers and asked to reboot, which I did. After the reboot, I tried tethering and didn't work(The option to turn on was there, but when turned on, nothing happened). I thought it was because of the USB debugging and disabled developer options completely. Unfortunately, my PC stopped recognizing my phone. I said, "well, at least I can now share files..." but, surprisingly,when I turned USB-debugging back on nothing happened. Now, there is a difference which I observed between his way of activating USB-debug vs my way. It is that in his way the USB-debugging is shown active both on Settings AND in the Notification Panel(in a permanent way, i.e. it doesn't go if I press "clear all" notifications), while when I activate it,no message is shown in the notification Panel. He must have done it differently to give it more priority or something...

This is one of those things that can be tricky to fix I think, because there are multiple points of failure (getting 2 different hardware devices to communicate over USB through 2 further operating system layers). But as AndrewT mentioned, my guess would be the drivers.

If I remember correctly I've had several episodes before of playing musical drivers + USB cables. I'm pretty sure what ended up happening most often was I'd finally get a successful connection upon switching cables (after focusing on reinstalling drivers over & over for a few hours). I also recall one time, the solution was switching from the USB 3.0 port I was using to a 2.0 port which fixed it instantly after hours of madness trying various drivers and cables.

You said you've tried a few of each of those though. One thing to keep in mind is it can be surprising just how picky your phone can be in terms of the cable you use. A couple times I've tried at least 4 or 5 different (microUSB) cables, switching back and forth and alternating with yet another driver install only for it to keep failing. Then when I eventually desperately dug a spare cable out from the couch cushion or something, it suddenly worked like a charm. I confirmed it on those occasions too by going back to each of the previous cables once I was 100% sure everything was indeed working, and sure enough, they all refused to work; only the weird, thin, chinese crap cable from who knows where seemed to do the trick. Android can be extremely picky, that's sort of the gist of what I've seen anyway.

Your "Further Info" makes me believe even more that it's probably your drivers though, if you know for sure that the connection stopped working following a driver update, and knowing that it DID work prior to that. The final thing I can offer is that I've ran a few LG phones over the years too, and I think they're particularly bad with fragmenting the driver situation with their own driver packages & LG-branded "Control Center" or "USB Tool"-type apps. While the android Universal Drivers have generally worked for most of my phones most of the time, I want to say you should try looking for any & all alternative drivers out there, especially if you can find some from LG's site specifically - that might be simply the only thing that will work, while all of the other usual "Universal" android software packages out there won't (for whatever reason).

But yeah... keep experimenting, try as many different connections as you can in The Trifecta (drivers, cables, USB ports), borrow some friends' cables or computers if you have to. I bet a single lucky one of them will suddenly work like nothing was ever wrong, and likely for no reason, as frustrating as it is.


Where can I find documentation for icons used in the notification bar? My WiFi icon on the notification bar is displaying an exclamation point and triangles (up/down arrows?). When I try to use Google to find what they mean, there's no clear place documenting notification icons.

I eventually found the exclamation point - can't connect to Google services - but the triangles just aren't searchable.

Where can I find documentation regarding what those sometimes-cryptic notification icons mean?

You can find a list material icons linked in Android Developers which is as official it can be.

But note that OEMs and carriers are free to add / modify their own icons so it's not possible to have all the icons listed on one site officially.


Difference between formatting & wipe Is there any difference in "wipe" (from the recovery mod) and factory reset from the android OS?

Does factory reset/wipe remove the custom ROM?

I need to know because after doing the "ALL wipe" from ultrajack recovery, I flashed a ROM. But the old boot animation, the system apps all remain!!

How can I fix this? or should I manually remove the system apps by mounting it as Rw. etc etc?

A factory reset won't remove a custom ROM unless the backup image in the custom ROM is for a ROM other than itself.  This would be pretty unlikely.

I think we'd need to know your phone model and the ROM you used to help you figure out why it didn't write over the system apps.  That's definitely not normal.  Normally virtually no trace of the old ROM should be left.


Want to sync data (music) to sdcard on Android 7.0 I'm looking for something that would allow me to keep a folder (music files) in sync between a main folder on a PC and a folder on an external SDcard in a (not rooted) Android 7 phone.  Would prefer wireless, but at this stage would be happy with USB connection as well.

My attempts so far:

Run SSHDroid on android and rsync from PC.

SSHDroid lets me see everything, but any time I try to write to the external SD card, I get permission denied.  I can write to internal memory only.

Run network server from ES Explorer.

Same problem to SSHDroid.  Can't seem to write to the external SD card.

Mount phone on windows via USB and use PC sync tool.

While I can see the folders in Explorer (and can copy files to them), I can't seem to access them from any other windows app.  When I do "Save As..." in an application, I can't see the phone in the list of devices that I can save to.  So I can't seem to point any of the windows sync tools to it.  With Cygwin-based rsync, I don't have a drive letter to access.

MyPhoneExplorer.

This is a client/server app for the PC and the phone.  It's easy to configure access to the SD card and can sync data back and forth.  So this seems perfect, except the file sync portion doesn't like large folders. Small syncs succeed, but when I ask it to sync my music folder (over 15GB and 9000 files), the program crashes while trying to analyze stuff before the transfer starts.

Any other solutions I should be trying (or anything I might be doing wrong with the previous attempts)?

Actual phone is LG K20 V

If you really want to keep the entire directory (and possibly its sub-directories) in sync, so that their content is "mirrored", FolderSync would be a good candidate. It's an app running on your Android device that can communicate with a plethora of protocols:

FolderSync Screenshots (click images for larger variants)

As you can see in the first screenshot, it not only supports many clouds and FTP, but also Samba/CIFS (Windows PC, second from bottom). SSH can be used as well (that's how I use it with my Linux machines). FolderSync also allows you to schedule syncs, even limit that to when you're connected to your home WiFi. The paid version also has tasker support.

I'm not affiliated with the product or company, but I'm using the paid version happily for years on multiple devices :)


How do I copy a link from Google search results to clipboard on Android Chrome? On Chrome for Android, when I do a Google search and some of the results are non-HTML documents, like PDFs. How do I copy a clean URL to the clipboard?

Example search: https://www.google.com/search?q=sodium+polyacrylate+msds

Tapping the result just opens the document for viewing, so there is no address bar to copy the URL from:

Long-press then copy link gets Google's indirect links instead, like:

https://www.google.com/url?sa=t&source=web&rct=j&url=http://www.hmsmedical.com/images/44-oc%2520msds.pdf&ved=0ahUKEwj2msqg3tDOAhXKox4KHdRoAMYQFggeMAA&usg=AFQjCNGEptV-_ZvoTUjoL68GOAAyrYtP0A&sig2=4XRpaDAeBjkQZlxEUXWH9A

Manually deleting all that other stuff then hand decoding the URL parameter is a massive pain on a phone.

How do I just copy the link?

You will need to look for a script or add on that takes care of it.

MakeUseOf has a link for a script to use with desktop firefox and chrome, its possible the script has an Android Chrome variant, or the script is fine for android and that its the engine that you need, to be specific to Android's Chrome browser.

http://www.makeuseof.com/tag/copy-crapfree-urls-googles-search-results/

eg: look for scriptish or greasemonkey on android, also note since the script provided at MakeUseOf is outside the store, you will most likely have to do the manual-add they mention.

Good luck!


How do I uninstall the LINE app (third party app)? At my sister's suggestion, I installed the LINE app in my Galaxy S3. After a while I decided I didn't like it, so I want to uninstall it. Weirdly, when I open Settings > Application manager, there is no option to remove application, only "Uninstall update", which restore an earlier version of the app. The same situation when I open Google Play, the "Uninstall" button only uninstall the updates and restore an earlier version. Same luck with trying an uninstaller . I also read that some application may prevent uninstallation by setting itself as Device Administrator, but I check my Device Administrators and LINE isn't listed.

I only observed this behaviour before for system apps or apps that got installed by my carrier, but LINE certainly isn't such app, I installed it myself. How could they have uninstall restriction, and how can I uninstall it?

Seems like 'Line' has been converted to a system app. You can convert it back to a user app and uninstall it if you have root permissions by using apps like App Uninstaller or System App Remover.

Otherwise you can disable it after uninstalling updates. "Disable" button can be found besides the "Force Stop" button under Settings → Apps → [offending app]

Else restore your phone (preferably from a Nandroid backup if you're rooted with a custom recovery). Even a factory reset might work.


Android viruses are infecting my phone My phone has been infected with viruses for 6months now.

At first it was just a virus in disguise called "settings", but then it spread to my browsers opening many different sites. I had to disable my browsers. And now there are 3 other viruses on my phone. One called "clockwallpaper", second is the "lake worth isd". It creates a fake duplicate of an app that I'm using, and after I closed that duplicated app, the original app starts lagging and then crashes. It also activates the silent mode of my phone. The third one is called "system", which pop-up tons of ads that is really annoying. It also makes an app that I'm using to lag and stop working.

I tried to use Malware Bytes and Bitdefender antivirus softwares. At first it was good and they removed the viruses, and I thought the viruses will be gone permanently. But I was wrong, after an hour or less they get installed again, even I have an internet connection or not.

So I performed a factory reset on my phone to get rid of it.

And they were gone. But then later on they get installed again and my phone was now like before.

Please help me!

Before using any steps backup your personal data
Use a Bloatware free Stock-Rom or Custom rom which has support of your Android Phone. You can find your phone's stock rom on XDA-Developers forum.
Now comes the flashing step.

You can do it in two ways:-

1. Flashing from androd Recovery Mode in TWRP. Requires root
See Here to know how you can do it:-
https://www.google.com/search?q=flashing+roms+with+twrp

2. Flashing rom from PC. This doesn't requires root.
See here to know how to do it:-
https://www.google.com/search?q=how+to+install+custom+rom+on+android+using+pc

These steps will remove the virus apps which were in your root and will give your phone a relief.


Rejoin the groups i had created on a previous Whatsapp account I have recently changed my phone number, and so I had to delete my older account on WhatsApp.
Can I rejoin the groups that I had created before deleting the account? Would they still be in existence?

After some investigation, I found out that the older groups are still in existence and the first person I had added in each of them, when they were created, became the admin of the groups. I had to ask them to add me back to the group.


Root Samsung Galaxy S Duos I have Samsung Galaxy S Duos (GT-S7562) because I want to use ROEHSOFT RAM Expander (SWAP) application to expand my RAM by using SD Card.

Before using this application, I need to be sure if my device support swap or not, and I need to root my phone to check this.

How to root Samsung Galaxy S Duos?

Follow the steps below:
I AM NOT RESPONSIBLE IF YOU DAMAGE YOUR PHONE AND THIS WILL VOID YOUR WARRANTY

This will root your phone and install a custom recovery.

Windows is required

Install the Samsung drivers. (links at bottom of the post)
Download the s7562 Rooting Kit.
Extract The kit, and open Odin.
In Odin click on PDA and choose the Recovery.tar
Now, on your device:
 a. Switch on USB debugging
 b.Put Cwm_SuperSU or Cwm_SuperUser, just choose one, I prefer Cwm_SuperSU
 c.Turn your device off and boot it in download mode ( Hold Vol_Down & Home & Power until you see light coming out from the device, then if you see warning click Vol_Up.
Connect your phone to the windows pc and you should see this in Odin: Com:****
Make sure to Have : Auto Reboot & F. Reset time & Pda Checkedd after you done Step 5 & 6.
Remove the back Cover of your phone ( you must do that )
Now Click on START in odin
You should see a Blue bar in the download mode on your device
Wait till it's finished.
When it finishes. When you see the samsung logo, remove your battery
Remove the Usb cable from your device, and reinsert the battery
Now you changed your Stock Recovery, With CWM_Recovery. Now you want to go to your new recovery, by pressing Vol_Down & Vol_Up & Home & Power release the buttons when you see the samsung logo.

Note : Your touchscreen is disabled here , move with your Vol_Up / Vol_down and choose with Home button and go back with back button.
Optional Make a backup in CWM recovery to external Sd-Card.
now choose Install Zip from sdCard and go to Choose zip from Sdcard Or From internal sd Card ( Depends on where you put your Cwm_SUperuser)
Now go to where you have put your CWM_Superuser / Cwm_SuperSU and click on the home button, and click yes and now wait till it has finished.
Now go back and choose Reboot System now.

Now you should have root:-)

Files:
Samsung kies : http://www.samsung.com/us/kies/
Droidzer Rooting kit : http://d-h.st/BtL

Hope my answer helped.


How to use Tasker and call an activity within an app called WiWo? WiWo is an app for controlling a WiFi socket. Unfortunately it has no Tasker integration or even a widget.

I was therefore wondering whether I could hook into any of the app's activities (image below) in order to toggle the switch for the socket on/off out with the app?

Other ideas/options welcome.

I seem to be a bit late to the party, but here is my implementation for it.

https://youtu.be/lD4yFAB3s40

What it does, is:

Unlocking my phone if it's locked.
Opening the WIWO app.
Manually touching the toggle.
Closing the app.
Setting the display time-out to 15
Wait for 15
Set the display time-out back to 2

And here is the code (excluding the unlock part)

<TaskerData sr="" dvi="1" tv="4.8u1m">
<Task sr="task3">
    <cdate>1452450027774</cdate>
    <edate>1458814566803</edate>
    <id>3</id>
    <nme>Wiwo</nme>
    <pri>100</pri>
    <Kid sr="Kid">
        <launchID>3</launchID>
        <pkg>com.wiwo.for.tasker</pkg>
        <vnme>1.0</vnme>
        <vnum>2</vnum>
    </Kid>
    <Action sr="act0" ve="7">
        20
        <App sr="arg0">
            <appClass>com.orvibo.irhost.LoadActivity</appClass>
            <appPkg>com.orvibo.irhost</appPkg>
            WiWo
        </App>
        <Str sr="arg1" ve="3"/>
        <Int sr="arg2" val="1"/>
        <Int sr="arg3" val="0"/>
    </Action>
    <Action sr="act1" ve="7">
        30
        <Int sr="arg0" val="0"/>
        <Int sr="arg1" val="1"/>
        <Int sr="arg2" val="0"/>
        <Int sr="arg3" val="0"/>
        <Int sr="arg4" val="0"/>
    </Action>
    <Action sr="act2" ve="7">
        123
        <Str sr="arg0" ve="3">input tap 1270 370</Str>
        <Int sr="arg1" val="0"/>
        <Int sr="arg2" val="1"/>
        <Str sr="arg3" ve="3"/>
        <Str sr="arg4" ve="3"/>
        <Str sr="arg5" ve="3"/>
    </Action>
    <Action sr="act3" ve="7">
        25
        <Int sr="arg0" val="0"/>
    </Action>
    <Action sr="act4" ve="7">
        812
        <Int sr="arg0" val="15"/>
        <Int sr="arg1" val="0"/>
        <Int sr="arg2" val="0"/>
    </Action>
    <Action sr="act5" ve="7">
        30
        <Int sr="arg0" val="0"/>
        <Int sr="arg1" val="15"/>
        <Int sr="arg2" val="0"/>
        <Int sr="arg3" val="0"/>
        <Int sr="arg4" val="0"/>
    </Action>
    <Action sr="act6" ve="7">
        812
        <Int sr="arg0" val="0"/>
        <Int sr="arg1" val="2"/>
        <Int sr="arg2" val="0"/>
    </Action>

        <cls>com.orvibo.irhost.LoadActivity</cls>
        <pkg>com.orvibo.irhost</pkg>

</Task>

PLEASE NOTE!: It does require root permissions.


Is there a quick way to go to the top or the bottom of a web page when using the standard internet browser Browsing to a long page in the standard browser on my Galaxy S phone, I just realised how hard it is to go back to the top of the page ( after having scrolled to the end ).

Is there a way ( some gesture or something ) to simulate the 'Home' and 'End' keys one can use when using a PC browser programs ? E.g. to quickly go to the top or the end of the page ?

No, but this can easily be done using gestures in Dolphin Browser HD.


Why does my phone peg the CPU every time I wake it up? This is driving me nuts. I have SeePU installed so that I can see a CPU graph on my Moto Droid. When I unlock the phone after being idle for a while, the CPU is pegged by android.process.acore and the phone is unusable for 15-45 seconds, which is an eternity when you are trying to answer the phone!

Tech details:

Moto Droid
OS 2.2 CyanogenMod v6 (also happens with 2.1 stock)
Launcher: LauncherPro (also happens with DXTop, and ADW Launcher)
No task killer

Apps:
http://www.appbrain.com/user/mark_porter/apps-on-the-phone

UPDATE: I un-installed most of my apps, and I seem to have licked the problem for now. I'm gonna try adding one app back a day until it gets stupid again. If I can find a particular app that causes this problem, I'll post it here

Are you over/underclocking your CPU at all and/or using profiles?

A lot of users will underclock their CPU when the phone is sleeping, which may save battery. However, if you underclock too much (125 MHz), the phone will lag like crazy when it wakes. It is recommended to never underclock further than 250 MHz.

Aside from that, I'm not really sure anything would cause this to happen and would need more information to help you diagnose.


Run downloaded shell command without root? My phone is a Galaxy S3, not rooted.  I have "ES File Explorer" and "Terminal Emulator" installed.

I downloaded an Android build of 'wget', intending to execute it from the Terminal Emulator app.  The file currently exists in
/storage/sdcard0/Download (which is an internal partition, not a physical SD card) as:

-rw-rw-r-- root sdcard_rw 241974 2016-03-11 wget

./wget gives Permission denied.  chmod o+x wget gives "Bad mode"; this is apparently because Android's chmod only accepts octal digits; chmod 665 wget gives "Operation not permitted".  I can copy the file with "cp", so the filesystem is writable.

Other Q&A's here give several possible reasons for chmod failing on Android.  One is SD cards formatted with FAT which do not support permission bits; but as I say this is not actually an SD card. Another is the filesystem being mounted with "noexec".  My Android/Linux knowledge is way too lacking to check such things.

Is Android blocking me from executing wget by design? Is there a way to execute it without rooting my phone?

Yes, this is by design.  You can't execute binaries from the SD card without system or superuser privileges (and remounting it without the noexec option) because otherwise apps could just download and execute malicious code at will.  In older versions of Android the SD card also did not have emulated permissions so chmod would naturally fail.

Some devices/older versions of Android might allow execution from /data/local/tmp/, so you could try putting it there.  Otherwise, you'll probably need root.


Is there an easier way to update Swype? I currently have the Swype beta installed on my EVO - not the pre-installed one that comes with the newer updates, the actual beta from their site. I noticed yesterday that if I launch the Swype Installer it will check for updates to itself, then download and install the new version for me. This is nice, since it is not distributed in the Market.

However, I can't seem to find the same functionality in Swype itself. The Installer doesn't check for updates to the actual keyboard, and it just greets me with the "Congrats! Swype is installed!" screen after launch (even after updating). The only way I can figure out to update Swype at this point is to:

Find out if there's a new version somehow (Google, Swype's website, etc)
Uninstall Swype
Reinstall Swype

Is there an easier way to do this? It seems odd that they have no update feature built in since they deliberately chose to distribute Swype outside of the Market, but if such a feature does exist I have no idea where it is.

The latest version of Swype beta (or at least the version before the most recent version) is a bit more self-sustained.

All I had to do when I updated was to go to the Swype installer app.  It had an update for itself.  After updating, it then presented an option for me to update Swype and stepped me through the process, including disabling, updating, and then re-enabling Swype.

Now the old way of updating Swyped used to be you had to uninstall the current version and it's installer, then re-install the installer, then re-install Swype.  It seems as if they have improved on this former method (that often had me raging because it wouldn't generate the license file correctly).


What's an up-to-date method of getting S-OFF on a HTC One S? All the instructions I can find for getting S-OFF on a HTC One S seem to be out-of-date.

These instructions ask you to download soffbin3.zip but the link takes you to website which thinks it's streaming you a video and the mirror link is dead
Rumrunner is available but soju.exe frezzes on "please wait"
firewater redirects to Sunshine which is a paid service. The Wayback Machine has a copy of the executable but when I copy the executable to my device and run it, it just... deletes itself.

I'm out of ideas. How do I get S-OFF on my HTC One S in this day and age?

(The only reason I want S-OFF is to install HBOOT 2.16.)

I had: hbot 2.15, s-on, twrp 3.x cm12.

I tried:

moonshine = told me to read
rumrunner = told me to stop it on the 1st swig
sunshine = I am a cheapskate, so no
fre-something-can't-remember_with_soff.bin = couldn't get the bin and it needed super-cid and was just a bit too much of "could go wrong"

What worked for me:

Flashed MagioRom_ONE_S_RC6.zip
Flashed the boot.img from that zip
booted the rom and disabled screen lock and fastboot
enabled dev/adb debug
let rumrunner do its work

Could be that rumrunner stalled for you because your phone asked for permission for the adb-connection.
I had to flash the MagioRom because rumrunner seems to prefer a sense rom and cm12 was a bit to far along.


Security risks of "Open Wi-Fi Networks" How paranoid do I need to be about allowing my phone to connect to open/unencrypted WiFi hotspots?

I don't really care if other people see my data (email being received or sent, stock quotes, whatever).  I think all I really care about is whether they see my passwords (Gmail, Facebook, etc).

I understand I probably don't want to initiate a connection to a financial institution, and that I'm potentially subject to man-in-the-middle attacks even if my passwords aren't cleartext.

Please note that I am aware of this question and its answer, and it doesn't really answer my question because it's just about the data:
What Android sync'd data is encrypted?

If this question has already been asked and answered, please point me to it.  I searched with the built-in engine and Google and couldn't find it.

If you use the Android web browser to access any sites that you've logged into and that don't use an SSL encrypted page while you're browsing them, then you should be very paranoid.

Have a read up about the Firesheep add-on to Firefox, it uses the fact that on an open, unencrypted Wifi connection anyone can listen to anyone else who is connected's network traffic. It listens out for cookies that other people's laptops and phones send out while they're browsing, grabs those cookies and lets you use them to log into a vast list of websites as that person. It doesn't need to capture login names or passwords, so it doesn't matter if you're careful about not entering your password into anything over an open connection. All it needs is your cookie and then it can log someone else into your Facebook, or GMail, or Twitter, Amazon (they can even place One-Click orders on your behalf) etc. BoingBoing has slightly more on what this demonstrates about web security.

The scary thing is that Firesheep doesn't do anything magic. It just makes a process that anyone could do (listening to open WiFi traffic, and spotting the interesting bits) and makes it one-click easy.


Can't mount /data, /cache, and /sdcard I have a Xiaomi Redmi 2, (device ID is 2014813) and there is a serious problem going on with it.

This morning I saw a message from the phone, saying that the full encryption was unsuccessful, and all my data is inaccessible now, so I have to do a factory reset. I booted up into recovery, tried to do a factory reset, but it said that it couldn't mount /data, /cache, and even /sdcard.

I tried flashing in fastboot with MiFlash, without any luck, it fails at setting up the partition table. ADB sideload works, but I can't do much with it, because even if I install a ROM with it, I can't boot that ROM up.

I NEVER wanted to do an encryption on this device, I don't know why did it do that.

There are a couple ways to do this:

Using adb

create a folder named external_sd in /sdcard/  with your file manager

Use  this code in commamd prompt (adb) (to make this folder to mount sd card in /sdcard/):

su

    mount -o bind /mnt/emmc /sdcard/external_sd

Alternatively via terminal (need busybox installed and root):

busybox mount --bind /mnt/emmc /mnt/sdcard/external_sd (as su)

Credits

https://forum.xda-developers.com/showthread.php?t=1724278


Android Read recent SMS messages from command line I have recently broken my Android's screen. (Again)

Its a T-Mobile G2

Trying to keep up with my busy technology related life is hard enough without losing my link with everyone.

I have rooted the phone and have the USB Debugging already turned on.

Does anyone know how I would check my recent SMS Messaged from the adb shell so I can keep up with work while i save up to get a new phone or a replacement screen.

Thanks for anyone that has any information regarding this.

EDIT

Response to eldarerathis

C:\android-sdk\platform-tools>adb shell
$ cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
$ sqlite3 mmssms.db
sqlite3 mmssms.db
sqlite3: permission denied
$

cant chmod the file.
do you know actually where it is ?

$ chmod +x sqlite3
chmod +x sqlite3
Bad mode
$

su leaves me with only basic commands

$ su
su
# cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
# sqlite3 mmssms.db
sqlite3 mmssms.db
sqlite3: not found
#

Corrected

sqlite was not installed

C:\android-sdk\platform-tools>adb shell
$ cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
$ sqlite3 mmssms.db
sqlite3 mmssms.db
SQLite version 3.6.22
Enter ".help" for instructions
sqlite>

Also to Access the database I needed to be root.

C:\android-sdk\platform-tools>adb shell
$ su
# cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
# sqlite3 mmssms.db
sqlite3 mmssms.db
SQLite version 3.6.22
Enter ".help" for instructions
sqlite>

Thanks a lot eldarerathis

This Link Helped

This is really ugly, but you can read them from the command line by using sqlite3 to view the database entries. You'll probably need to dig up a binary for this unless you have a custom ROM installed. There are some instructions for installing said binary in this Stack Overflow question, and SuperOneClick comes packaged with it (a copy of the binary itself can be found here).

If you do need to install the binary, use mount (with no parameters) to determine where your /system partition is physically located (mine is /dev/block/mtdblock3, for example). Then follow the instructions in the first link above, and start by remounting it in read/write mode with the command:

mount -o rw,remount /your/system/partition /system

Once you have sqlite3 you'll want to open an adb shell, switch to root with su, and then do the following:

# cd /data/data
cd /data/data
# cd com.android.providers.telephony/databases ***
cd com.android.providers.telephony/databases
# sqlite3 mmssms.db
sqlite3 mmssms.db
SQLite version 3.7.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> SELECT * FROM sms WHERE read=0;

This will pull up all of the rows from the table for all of the unread messages. The columns in the table are defined thusly (so you can trim the SELECT):

CREATE TABLE sms (_id INTEGER PRIMARY KEY,thread_id INTEGER,address TEXT,
  person INTEGER,date INTEGER,protocol INTEGER,read INTEGER DEFAULT 0,
  status INTEGER DEFAULT -1,type INTEGER,reply_path_present INTEGER,
  subject TEXT,body TEXT,service_center TEXT,locked INTEGER DEFAULT 0,
  error_code INTEGER DEFAULT 0,seen INTEGER DEFAULT 0);

***Note for the marked line: this may be slightly different depending on your device and version of Android which is why I have included this cd command separately. I think it used to be com.android.providers/telephony/databases on older devices but I don't quite remember. Use ls to look around for the proper pathing here.

Alternatively, you could try copying the .db file onto your SD card (or pulling it with adb pull) and then reading it on your computer with sqlite.


Tasker programming Help? I am a relatively new tasked user and need a little help. I installed the AutoShortcut plugin to allow Tasker to expand my notifications through the nova shortcut. I would like to have tasker expand the notification bar once on the launch of a certain app, then wait until the app is closed. However, with a simple launch app>expand notifications>stop task, the notification bar will continue to drop down over and over because the app is still open. How can I configure tasker to expans the notifications only ONCE, and then not again until the app has closed?

I would suggest adding an If statement to the task that checks if a variable is set, if it is not, set the variable and execute task, if it is end task.


Android phone not recognized in Ubuntu I have an Android Phone (a Motorola Milestone) and trying to connect it to my Ubuntu Maverick (10.10). The problem is that i can't even charge it using USB, so there's no message on the phone nor on the computer that a device has been connected.

I also have a Laptop running Ubuntu Maverick aswell and there I can access the phone via USB.

I already created the 51-android.rules file with the according settings, but it didn't work. And I guess this rules-file doesnt matter in this case, because my laptop doesn't event have this file.

Other USB devices like external hard drives can be used as usual, the USB cable itself can't be the problem, because I can use it on my laptop and it works.

I really don't know what the problem could be.

It is also not listet in lsusb on my computer.

Did anybody have a similar problem?

Thank you in advance for any help!

I'm guessing the power output from the port is low, although I would think the hard drive wouldn't work either. You could try connecting your phone to a powered USB hub, and connected the hub to the computer.  Or if you have a desktop, it could be a power supply problem, in which case you could try one with a higher wattage.


Not getting Redeem code entering option I am using Samsung j7 and I want to make some purchases but I am unable to find Redeem code entering option there. I have Redeem code for purchase but the option is not there. Previously it was right there but now its gone.

You won't find it there.

Where you will find it by doing this:

Open the play store.
Tap the Hamburger-three lines thing to open the side menu, and tap redeem.
Put in your Redeem Code
Enjoy your new google play credit!


Long screen timeout on lock screen Oreo 8.0.0 After the Oreo 8.0.0 update on MI A1, the screen timeout when the lock screen appears, takes the same value as the sleep timeout.

Usually when there was Nougat, the timeout on lock screen would be very short (5 seconds I guess).

Is this is a bug or intentional feature? Also is it only on Mi A1 or all phones running Oreo 8.0.0?

Though I couldn't find out the reason for long lock screen timeout, I made a quick solution to get it back working as it was earlier.

Here's the solution, implemented as a flow in the Automate for Android app.

Flow URL: Short lock screen timeout[VM]


Recover lost photo from Instagram stories I took a photo to upload Instagram Stories but I have deleted it unintentionally without publishing or saving it when I was editing the photo in Instagram's built-in photo editor.

Is it possible to recover this photo?

I have found the solution. The photos are saved in a folder of cache. If you are root user you can recovere them. There are in the next path: /data/data/com.instagram.android/cache/original_images


Android 2.3.3 Tablet cant find sd external sd card I have a China no name tablet. When first purchased took three pics and everything seemed fine.The problem is I went to use camera later and it requested I insert or mount SD Card. Gallery would say no pictures. Application Manager would not move apps to SD card. I re formatted sd card and everything worked for 10 minutes taking pictures. Gallery would show taken pics. Application manager would move apps to sd card. Then bam, everything back to "Please insert sd card". In Application Manager tapping on an application/Move to SD card would not work. Camera asks for sd card to be inserted, Downloaded apps from Google Play would not install asking for SD card. I emailed problem and Was told by Factory to Format Nand and so I did. Things work for a while then back to same thing,,,please insert sd card.Apps wont download or move. Reformatting Nand erases Gallery and many dowmloaded Apps so I lose all my pictures and programs. Anybody have any Ideas? Thanks in Advance.

Seems that the ext sd card is not mounting after a while, it could be a hardware failure


how to fix error of insufficient space Even though I have tons of memory I can't install apps because it shows insufficient memory in Google play..I tried all things such as uninstalling Google play store and typing *#9900# and clearing the data still it's not helping me...Please do something

I've had this problem a few days ago. All I did was clearing all the data and cache of all Google related apps especially Play Store, Google Play Services, Google Play Framework, and Download manager. Next removing the Google account itself from the phone. Reboot the device and start fresh everything.


How to disable MTP and PTP file sharing via USB on Android 5? For privacy and security reasons I'd like to disable MTP and PTP on my phone. I recently plugged my phone into an inflight entertainment system to charge it, and was surprised to see that the status bar showed that the phone was connected as a camera (via PTP). This could happen with basically any USB hub, and you won't know until you connect to it.

Running Android 5.0.2 on a Samsung Galaxy A3 (SM-A300FU).

I have tried the following:

Enabled USB debugging
Plugged in the USB cable
Rooted my phone (and verified that it's actually rooted)
adb shell su -c 'setprop persist.sys.usb.config adb' (thanks @Firelord)
Verified in Terminal Emulator:

$ su sh -c 'cat /data/property/persist.sys.usb.config'
adb

Unplugged the USB cable
Rebooted
Disabled USB debugging
Plugged in the USB cable

At this point the device is automatically "Connected as a media device", and the setting is back to the default:

$ su sh -c 'cat /data/property/persist.sys.usb.config'
mtp

If I leave the USB debugging enabled the value is mtp,adb after rebooting.

After reporting this as a bug, it turns out it's actually been fixed, and charge-only mode has been reintroduced in Android 6.

This is different from Disabling MTP/PTP/all USB stuff except charging because that question is about CyanogenMod, not stock Android, and the accepted answer is not applicable to Android 5.

Thanks to @Firelord, this is the procedure to follow:

Root your phone
Install Terminal Emulator
In Terminal Emulator, run su sh -c 'echo -n none > /data/property/persist.sys.usb.config'
Restart the phone

Bonus: Now you can get rid of all those horrible vendor apps. Bye Samsung and Three!

Caveat 1: USB debugging no longer works after doing this, regardless of whether you left it enabled while following the instructions or disabled and re-enabled it. All you need to do (I just verified it) is to set the value back to adb to make it work again, but then of course you have the original problem. If there’s a magic string to make USB debugging work and simultaneously disable both MTP and PTP, I don’t know what it is (I tried with none,adb).

Caveat 2: You can’t update Android anymore without completely resetting your device. Not even de-rooting and a factory reset work - bloody Android still says I’ve made an “unauthorized modification.” Let’s recap: “Freedom 0: The freedom to run the program as you wish, for any purpose.” I had to boot into Windows and use Samsung Smart Switch for PC to upgrade.


OTA update vs Image update OTA update is defined as update to system's partition, but I read that OTA update is NOT a mere update from the last version.

So, what does it mean :

Does it contain all files in system.img (and other) partition ?

If so, isn't it quite the same as system.img (image of the system parition) ?

Regards,
Ranchu

Does it contain all files in system.img partition ?..
  [Isn't] it quite the same as system.img (image of the system parition) ?

System.img is a file whose contents are written into the partition named system (/system).
An OTA update is not necessarily restricted to updating a system partition alone. It concerns with anything of the firmware including boot, cache, bootloader, recovery, etc.
Not every time a full blown system.img (DAT file actually) is shipped to the end users just for every OTA update. Depending upon the type of update1, there may be a full image of system partition to be copied or just only the specific files (packed into a single file) that are to be copied. The latter type of update, called the incremental update, is the norm since Android 5.0.

In a nutshell, if you're thinking that every OTA update actually downloads a full system.img or equivalent file and writes it into system partition, then that is simply not the case.

1 An OTA update can just be a mere update (like bug fixes, vulnerability fixes) or altogether a platform upgrade (like from Android Marshmallow to Nougat).


How can I automatically correct tags of music files? I've seen apps like Shazaam and TrackID, which can provide the Artist, Album etc. info, by recording a few seconds of a song from any source.
In my music gallery, there're lots of songs, with incorrect artist, albums or genre names. So is there a way that allows me to automatically correct these info, or at least fill up the missing info?

If you can use the Sony walkman app, that is the best solution for you. See the answer in this question. If that app is not compatible with your device, Album Art Grabber would be a good solution for you.


With Google Now, can I ask for directions to one of my contacts? I understand I can send an SMS or email to a contact, but I can't figure out how to ask for directions to the contact.  Is there a voice command for Google Now that will pull up directions to a contact's address? If so, what happens if the contact has more than one address?

If there isn't a way to do this currently, is there a shortcut to pull up the Contact record, where I can click to the map?

This feature isn't available as of now. But you should frequently check the Google Now app page for such updates. This feature is available on Siri though, but that's probably irrelevant right now. In the meantime, you can still get turn by turn navigation to take you home by saying " directions to home". It'd be a good app feature though.