Saturday, January 31, 2015

wi fi - Is there a way to mount a Windows shared drive so I can access those files on my phone?


I have a shared network drive full of files I want to access from my phone over wifi.


Is there a easy way to mount it on my phone?


I have a rooted Motorola Milestone.



Answer




ASTRO File Manager by Metago available from Google Play Store has an SMB plugin (ASTRO SMB Module) that serves your needs.


Astro File Manager Screen Shoot


Friday, January 30, 2015

security - Does Google Audit all apps that enter the market place?




Possible Duplicate:
Are the apps safe? How can I make my Android more secure?



There are several 'requires root' apps in the market and one of the most famous ones have more than 5 Million downloads as of date. We all know that an app that uses root privileges has the ability to do anything that it wants to. Google Play is supposed to be a trusted source. Does this mean that these Apps are audited before it is put on the Play store ? Or, is it possible that some of these rooted apps does something malicious in the background ? I've never uploaded an app to the play store and hence I do not know the process.




Which .iso to download to install Android on my home PC?


I checked the Android-x86 downloads list. It contains .iso files for Laptops. I want to install Android on home PC.




Thursday, January 29, 2015

2.3 gingerbread - Why can't apps connect to the internet?


Running on both WiFi and mobile connection, the browser can connect to the internet ok but apps can not connect.


What can cause this?


Samsung Galaxy S





cyanogenmod - Battery backup is not good after the CM12 update on Micromax Yureka


After updating to Lollipop CM12, my Yu Yureka is not giving not even 7 hours backup in balance mode. On KitKat CM11, it was giving 1.5 days backup in balance mode.


Is there a way to increase the battery life?




restore - How can I transfer SMS messages from my old iPhone to my new Android phone?


I think my previous SMS are stored somewhere in iTunes, can I get them back and store them in my new Android?





4.1 jelly bean - How to restore/edit build.prop after rebooting (and phone stuck in reboot loop)?


I was trying to setup a custom host name for my device(a rooted xperia z) following this guide but without paying too much attention, especially to the comments.



I'm guessing I had a typo in the edited build.prop file because after I rebooted the phone was stuck in a boot loop: I would see the sony logo but instead of the usual xperia logo and colourful boot animation the phone would restart.


I can turn off the phone and I think I've managed to get it in a different state by pressing the volume up key multiple times after powering up because I could see a blue led always on. Before that in between boots I would see a red led blink twice.


Unfortunately the phone reboots to fast to become visible to adb. What are my options on restoring/editing the build.prop file ? Can I somehow see the phone's filesystem on a computer without booting the phone into android ? Also I don't mind loosing all the data as long as I can use the phone again.


Thanks



Answer



After a lot of reading and trying various things I've managed to get control over my phone again.


This guide sounds good, but it didn't work for me as I've encountered an error because of my specific device. This might work with others though.


What worked was this guide(which has problems rendering images sometimes). I've tried first to unlock the bootloader(BLU button in Flashtool) and used the these instructions to obtain the unlock code based on the IMEI. After that I've downloaded a stock FTF image (from goo.im), placed in the firmware folder of Flashtool. Then I could flash the FTF to the phone. Also, because I was using Windows 8, had to reboot into trouble shoot more to change an option to allow non signed drivers.


Hope this helps others with similar issues.


Wednesday, January 28, 2015

applications - How do one know which folder is created by which Android apps?


From my understanding, a majority of Android apps may have created some folders on either local storage or the SD Card.


So, how do I know which folders belong to which apps? (I know that some apps have settings that show you which folder that they have created but are there any solutions where one can easily find all the folder corresponding to their apps in a list similar like the one shown below?)




====================================
| Apps Name | Folder |
====================================
| ABB | \sdcard\actionbb |
| ZZX | \sdcard\zoneX |
| | \local\zoneXconf |
====================================

This is because, sometimes, when one un-installs an app, the un-installation does not remove these folders.





What percentage of devices have each of the Android versions?


We're starting out with some Android development in our company, and I'm working out which Android versions we should support.


In one of Google's videos from 27th May 2010 (22:34 minutes in) there is a pie chart showing roughly a third of users each for Android 1.5, 1.6 and 2.1.



Does anyone have a more up-to-date source for the percentages of active Android devices with each version of the platform?



Answer



Check out Official Android Developer's Dashboards.


Data as of September, 2017 1



Version Codename Distribution
2.3.3-2.3.7 Gingerbread 0.6%
4.0.3-4.0.4 Ice Cream 0.6%
Sandwich
4.1.x Jelly Bean 2.4%

4.2.x 3.5%
4.3 1.0%
4.4 KitKat 15.1%
5.0 Lollipop 7.1%
5.1 21.7%
6.0 Marshmallow 32.2%
7.0 Nougat 14.2%
7.1 1.6%




1 Data collected during a 7-day period ending on September 11, 2016. Any versions with less than 0.1% distribution are not shown. (Note: Beginning in September 2013, devices running versions older than Android 2.3.3 do not appear in this data because those devices do not support the new Google Play Store app. As of August 2013, devices with versions lower than 2.2 accounted for about 1% of all devices.)


Android version distribution


Tuesday, January 27, 2015

insufficient memory - Effective storage ridiculously small since Marshmallow update


I have been using a 16GB HTC One M8 for the last two years with no major hiccup (although I met the infamous infinitely growing .thumbdata file taking 8GB from my storage just because, fixed with a factory reset then disabling the gallery app, and now seems fixed in Marshmallow since I can't see it anymore), but I'm now facing something way trickier.



My storage is CONSTANTLY low. I use a 32GB SD card where I put most of my stuff (music, pictures, downloads etc), so my internal storage is rather unused - it's only used by the few apps annoying enough to not support SD card (like Whatsapp) and they aren't taking that much space anyway.


I checked numerous ways to analyze my storage:


Android system's storage analyzer says 15.88 GB of my 16GB are being used. Of this, it counts:



  • System: 9.07GB (really? Nine gigs for the system? This seems a lot but oh well)

  • Apps: 4.85GB. This surprised me as I don't have much big apps except one ~400MB game. I checked the app list, checked and cleared the caches for the biggest apps (which weren't much anyway, I only have three apps over 300MB - including data - and their data/cache isn't much), and funnily enough if I add all of the apps' storage usage I get around 2.2GB. Where are the extra 2.65GB from?

  • Images: 244MB - meh, just random downloads etc, won't help

  • Audio/video: 10MB (my audio/video is on the SD card!)

  • Downloads: 151MB

  • Others: 1.49GB, includes my podcast app with the local podcast cache, reader, whatsapp stuff that I empty every once in a while anyway - I don't want to keep deleting the 500MB of whatsapp images/videos I have just because my phone is dumb!


  • Cached Data 69MB


So here I see two problems: Why is it detecting way more apps than I have? As an example, I removed Cytus (1GB app) about two weeks ago to free some space. My phone is already low on memory and I don't know what the hell have I done to get 1GB extra in there... Haven't installed or downloaded anything since then yet this 1GB got magically filled somehow. Also when I click on "Make more space", it tells me that there are only 2.21GB of "Removable apps", which is consistent with what I calculated above - why?


I factory reset it about two months ago to get rid of the thumbdata files, and now I'm back to having no memory available just because. So I went on two different apps to look for answer


Alternative 1: the app 'Drives'


Link for the app here.


When scanning my internal storage, Drives says that my drive space is 10.68GB (which I guess is the accessible storage, rest of it being system?). However, when I check the drive usage, it only gives me a 2.88GB total, split between apps, whatsapp etc.


I checked the files by size and the two biggest files Drives show me are 418MB (a game .obb file) and 159MB (another game .obb file). Won't tell me anything else about the remaining storage!


Alternative 2: the app 'Storage Analyzer'


Link for the app here.



Alright this it where it gets interesting. According to this app my accessible internal storage (/storage/emulated/0) is 10.68GB (consistent with 'Drives'), with 10.39 being used (I'd guess the remaining 5.32GB are system, which sounds way more plausible to me). And according to this app, I have:



  • 2.9 GB "Used by publicly accessible files"

  • 7.49 GB "Used by Android/inaccessible files"!!!


Basically according to this app I only have access to about 2.9GB of data that I can actually read, delete etc. What are these 7.49GB of inaccessible files? I can't see them on any app! I also checked the DCIM folder to see if I had another case of infinite thumbdata file, but couldn't find any.


So here I am struggling to actually use my phone. I have to use Gmail through web since it won't synchronize on low memory, and I can't download a single app. Would anyone have any idea why most of my internal storage is eaten up like that? How am I only allowed to use 18% of my total storage?


If you need any other data please let me know, I'll try emptying stuff to download other apps if needed


NOTE: My device not rooted - could root it if needed but well, I just never did it cause I didn't really need it.


EDIT after suggestion, I tried looking at what DiskUsage says:



I can scan App Storage and storage/emulated/0


/storage/emulated/0


DiskUsage says it is 10934 MB. Includes:



  • 7647MB of "System data" - damn is the HTC software that heavy? My Nexus 9 tablet has around 4 GB for the system. Any cache to clear maybe?

  • About 2 GB of other stuff, which is consistent (whatsapp stuff, applications obb files, podcasts)


Surprised at the big amount of space the system gets - how would 8GB phones ever live then


App storage


DiskUsage says:




  • 4575MB of Data

  • 3813MB of applications (!)


In all the applications, I see a whole lot of system apps that don't take much space but are required and I can't uninstall them. I'd say that's pretty consistent with what the system storage analyzer says: 2.2GB of "extra apps I can't uninstall". I'll assume these apps are system apps (since I see a lot of HTC sense stuff etc).


Which would mean ultimately that the entire system (system files + unremovable apps) takes around 10 GB - this sounds like WAY TOO MUCH for a smartphone. Then my personal storage is basically 2GB of apps and 2GB of data for certain apps - ridiculously small!


Is there any way to see what the system files are composed of? I wonder if there are some stupidly big cache files in there?




applications - How can I run multiple copies of the same app?


On iPhone it's very easy to clone an app (running multiple copies of the app on the same device); e.g.:


http://www.youtube.com/watch?v=H4f_aLSRnQ8


Is it possible to do this on Android?



Answer



On Android, the package name of the app is what identifies it on the phone: that's what gives it its own space to run in, and it has to be unique in running apps. There are two options to get one app running two instances:





  1. If you're on a Jelly Bean tablet, you can do this with multi-user support. Create two user profiles on the tablet, and you can run the app once in each profile. Each user's instance of the app gets its own storage.




  2. If you have access to the source code of the app, you can create a new app by changing its package name. Then install the new app. What you end up with is actually two apps, each with one instance, but since they both have the same code and resources, it has the effect you're looking for.




These are the only two ways. If your device doesn't have multi-user support, and you don't have access to the app's source code (i.e. you're not the app's developer), then you're out of luck.


browser add ons - Firefox version 21 installed easily but greasemonkey won't install - error saying not compatible with ver 21


I can't find anyone with this problem of not being able to install greasemonkey since installing Firefox version 21 on my android. My ultimate goal is to combine my fitness pal logging with weight watchers so that mfp will calculate ww points. It can be done but only through using greasemonkey. Any help is greatly appreciated :)




Answer



The error message in this case is misleading: it's not that Greasemonkey is incompatible with that version number, rather that it's incompatible with Firefox for Android. The extension mechanism in Firefox for Android is somewhat different to Firefox on desktops, so add-ons for desktop Firefox won't work (in general) on Android.


To find out if/when Android support is planned, or to help out, you could start by contacting the gresemonkey-users mailing list.


Monday, January 26, 2015

root access - How to prevent applications from discovering my phone as being Rooted


I have to install an application that has discovered my device to be rooted.


So this is a two part question.




  1. How did it discover in the first place that my phone has been rooted





  2. How to prevent the application from discovering my phone as being rooted





Answer



To detect rooting status of device, an app issues su command. If exit status is 0, it means device is rooted.. otherwise, not.


To prevent this, you can simply Deny the root access using SuperUser's pop-up (Provided its allowed from SuperUser settings, a pop-up appears when an app issues su command). After this, the app will get non-zero exit status & it can't determine rooting status.


Update:
Some apps can use other ways to check root status (like checking the su binary file existence). I'd like to admit that none are perfect methods without false-positive result, but sometimes they are successful with luck.


The best universal method to prevent detection: Restrict the permission of app's daemon. I can't suggest exact permission limitations because I don't know functions of the app. It can mess up with app's functionalities.


In the last, I'd like to say: Technically, there's no way to prevent detection by 100% success rate. In case of permission limitations, the app can still suspect that something is wrong.



malware - "Lucky try" & "Recommended" shortcuts always appear on homescreen, how to remove it?


I am getting shortcuts in my home screen. I try to delete it, but it is appearing once again. Shortcuts names: Lucky try, Recommended.



Screenshot




4.4 kitkat - Securing power off menu options when phone screen is locked or customizing power-off menu options?


I am using Google Nexus 5 with stock 4.4 KitKat.


When the phone is in locked state (locked with a standard PIN code, password or pattern) and we long press power button, we get the power-off menu with options like Power-Off, Flight mode and Sound options (Mute, Vibrate and Sound)



I was wondering that whether we could secure/disable the power-off and flight mode option if the phone is locked state or is there any way to customize these menu options?


I looked in one of such question but didn't get the answer: Disable power-off menu when screen is locked



Answer



Use this app. It does exactly what you want : https://play.google.com/store/apps/details?id=com.nezdroid.lockscreenprotector


Sunday, January 25, 2015

applications - Where can find older versions of Apps?


Is is possible to download older versions of Android applications?



Is there some kind of online archive for all versions of Android apps? Like how you can find older versions of some Windows app.



Answer



The site Freeware Lovers collects freeware Android apps and has old versions for many of the apps they host. (Also for BlackBerry, Symbian, and Palm OS.)


Saturday, January 24, 2015

Add New Ringtones, Notifications and Alarm tones on Nexus One


I have music (MP3 files) on my SD card and am trying to set them as ringtones, notification tones and alarm tones on my Nexus One.


My phone only lets me select the stock ringtones, notifications or alarms. I tried to transfer and copy the music files to the ringtones and notification folder on my phone but it fails every time. I think those folders are write protected or something.


Can anyone help? I have searched at all possible solutions online. Some solutions suggest copying the files using my PC to my phone's ringtones/notification tones folder, but I can't even see these folders on Windows Explorer. It's like they are invisible.


Can anyone help?




Friday, January 23, 2015

2.2 froyo - Sync setup question: will Android, Outlook 2010, Gmail, calendar and contacts sync?


my previous phone was a windows mobile 6.5 from HTC. so I had it linked to my computer (windows 7 x64 pro) and it used windows mobility center to sync with outlook 2010. everything was fine. I also added Gmail by IMAP in outlook.


but now I have this awesome brand new HTC Desire with Android 2.2 (Froyo) so it asked for my Google account. Now I ended up with contacts in outlook, phone and Gmail. calendar in outlook and Google Calendar and I have HTC sync and Google Cal sync and I don't know what the best setup is. anybody an idea?


I'd like to have the same in my outlook contacts as in my Gmail, Google Cal, phone etc. so I'd like to sync everything with everything and could use some help. because I have contacts in outlook that are not in Gmail and people on my phone which are not in Gmail etc. and since I am an android n00b it's kinda hard to get myself an ultimate sync setup with outlook 2010 and my phone and Gmail stuff



Edit: as pointed out in the answers, I should NOT sync my phone with outlook, but should sync outlook to Gmail. Google has a calendar sync tool, which is great, but does not sync the contacts. No I've found KiGoo but I don't trust them yet. Does anybody recommend a good preferably free and/or open source application for syncing outlook 2010 with Gmail?



Answer



Android syncs to Gmail, Contacts, and Calendar nearly effortlessly. It seems like in your case it's Outlook that is the problem child. Do you need to sync contacts with Outlook too? If not, a one-time export/import from Outlook to Gmail should meet your needs.


I would say have Outlook sync with Google and have the phone sync with Google. Syncing the phone to Outlook too will probably duplicate data and/or leave gaps in your data.


How do Gmail (desktop) and Talk (Android) chats interact?


The interaction between Google Talk via Gmail and Google Talk via the Android client seems confusing. Here's my understanding of how things work:




  • If a chat is started in Gmail, it will sync in (near) real-time to Talk.

  • If a chat is started in Talk, it will show up in the chat history in Gmail, but will not spawn a new chat in Gmail (so the chat is confined to Talk).

  • If a chat is started in Gmail, and continued in Talk, messages will stop being sent to the chat in Gmail, and new messages will be sent to Talk (as well as the chat history in Gmail). In my (short) experience, this transition can be a bit flaky.


Is this basically how it works? What I'd love to see is a perfect 1:1 sync between Gmail and Talk. That is, if I start a chat in Talk, it will create a new chat tab in Gmail, and everything will get pushed to both, and vice-versa.


Anyone know if that's in the pipeline, or even possible now? How does everyone else handle moving as seamlessly as possible between Gmail and Talk?


Thanks!



Answer



To provide some background on this question, google talk uses xmpp (aka Jabber) which is an open Instant Messaging standard. As a part of this standard, every instant messaging client (chat in gmail and the android talk app) is assigned a Resource. The server then uses the resource to know which client is communicating.


This is how the interaction works: Say your gmail account is bob@gmail.com. Then gmail chat might be bob@gmail.com/gchat and the talk app bob@gmail.com/talk



When your friend Sue (sue@gmail.com) wants to send you a message, she simply sends it to bob@gmail.com. At this point, the server either sends the message to whichever client you used last, or sends the message to all currently connected clients (google does the latter).


When you reply to Sue using the talk app, she receives the message from bob@gmail.com/talk. Now, instead of sending further messages to bob@gmail.com, Sue's client now sends messages directly to bob@gmail.com/talk and will continue doing so until a message is received from some other client.


This means that what Saiboogu said should work. That is, to switch between clients, send a message to the person you are chatting with from the desired client.




tl;dr: This happens by design, Saiboogu's workaround works.


Why is my device not utilizing all of its available RAM?



I have a Nook Color with Cyanogenmod 7.2 (on mSD), and Nook Color is supposed to be 512MB of RAM (says so on product's page).


When I open Menu (on bottom bar, while on desktop) > Manage Applications > Running, it says on the bottom left 95MB used, and on the bottom right it says 174MB free. These are about 270MB, does that mean my RAM is corrupted? Why is it not utilizing all 512MB of RAM?




Thursday, January 22, 2015

Pre-caching limitations and reliability in Google Maps


The latest version of the Google Maps application bundled with Android allows me to pre-cache map areas. Each time a pre-cache a point it saves the map in a 10 km hamming radius of that point.


I'm about to take a long vacation in various destination. Can I pre-cache those destinations and reliably use Google Maps there without data connection? Is there a limit to how many areas I can pre-cache (aside from the obvious memory required)? Is the map data guarantee to remain after a few weeks or months, or does it expire after some time?



Answer




The number of areas you can pre-cache is limited by the amount of system storage you have available. It is important to note that the cache is stored in system storage, not the SD card. Also, the stored data is the base map tiles and landmarks. You will not be able to get directions based on this downloaded data, but you can browse it offline and track your current location.


The cached data expires and is deleted automatically after 30 days. If you are not able to refresh your offline data in that time, you may be in trouble.


More data on the feature is available on the Official Google Blog post.


samsung galaxy nexus - Why is the HDR button missing?


This article mentions a new HDR camera mode that's available in Android 4.2:


Camera setting wheel in Android 4.2


but my Galaxy Nexus doesn't show that option:


Camera setting wheel missing HDR button


Why not?




applications - All apps moved onto the SD card have disappeared


On My phone LG E460, all the applications moved on SD card, have disappeared.


On play.google.com (and play store) these applications are marked as installed. I don't know how to reactive these applications.


The app advanced SD card doesn't see them.





Sync Multiple Devices Simultaneously With One Account


I've got a question regarding maintenance/management with multiple android devices on a single account. For example:




  • A school has 30 android tablets.

  • Teachers need all 30 devices updated

  • The school has 1 account for all 30 devices


Is there a way to sync all of these simultaneously to the same account? iTunes U offers this functionality for iOS devices, but wanted to know if there are any similar services for android devices. Thanks for your help!



Answer



That very much depends on how you understand the issue -- and what is intended. In this case, using a single account for all devices definitly has one big advantage: Managing its apps (installs/uninstalls).


If the devices are defined as "school use only" or even for a single class, same applies to the calendar: all class specific events can be defined here (in the accounts main calendar), so noone can say he forgot to write it down. For personal events, each user can add his/her own calendar easily -- so no problem with this either.


The contacts/address book can be seen the same way: it could hold the classes contacts, plus the teachers (as far as needed/wanted) -- which would make it easier to organize team work. As with calendars, it should be possible for each user to access her/his personal address book additionally (I never tried this, so I cannot tell for sure).


So to summarize: If I didn't mis-interprete your question, the answer should be a clear "Yes". I use multiple Android devices with the same Google account myself, and never had any problems with that.



Tuesday, January 20, 2015

samsung - Access to Find My Phone locked in initial popup


I am transitioning from iPhone to Samsung. I mean to setup Find My Mobile in two phones, say, P1 and P2. What I did:



  1. I Added the account in P1.

  2. I entered findmymobile.samsung.com, and before accessing my account it provides a popup with 3 "I agree to the terms and conditions" checkboxes, including accessing my screen unlock code (In iOS this was not needed, AFAIK). I have no problem in doing that for P2, but not for P1.

  3. I mean to not proceed, for the time being, on P1, and go ahead with P2. But access to findmymobile.samsung.com is now locked in that popup, so I cannot proceed with adding/managing P2.



How can I recover the initial findmymobile.samsung.com screen?


I suspected that removing my Samsung account from P1 would freed internet access to findmymobile.samsung.com. But doing that gives a warning (in Spanish, so I am not certain that the message in English is exactly this) that "Removing the account will delete all messages, contacts and other data from the device ¿Ok to continue?".
Will I lose all that data from my phone?
That is certainly not what I want from disconnecting the phone from my Samsung account.



Answer



The way I solved this is by confirming all 3 checkboxes for P1, thus being able to move on to my Samsung account. I could link P2 as well.


Then I removed the Samsung account from P1, and I did not lose my contacts (perhaps since I did not set it up for syncing contacts).


How to transfer video from a smartphone (with microUSB port) to an external portable mini-DISPLAY (AV, HDMI, VGA inputs)?



I'm looking for the best way to transfer the video from a smartphone to an external monitor (used in cars, garages) to get a bigger picture.



  1. I find this useful for dash cameras, and for entertainment with bigger display.


May I accomplish this with a OTG cable?


Your help is welcome.




Monday, January 19, 2015

installation - Can not install apks from File Manager or browser?


In the answer to this question I specifically discovered that I could not install the VLC nightlies. It had nothing to do with that answer, which was on a question about which version of VLC was right for that device. But that question was in fact inspired by this problem: I never previously had an APK I couldn't install by merely downloading, when I am in the Android Web Browser, and it downloads the APK, I can click on it in the notification applet at the top. When I do, it says




Can not open file



When I open that file up with the LineageOS Files Manager, com.android.documentsui I get the same error. Now, I'm wanting to know what specifically is borked about just the VLC packages? Does anyone else get this problem? Why is that pm install ./appname.apk in the shell works, but the GUI doesn't?


I'm using LineageOS 14.1-20180616, based on Android 7.1.2.



Answer




With the LineageOS File Manager


It seems that inside the File Manager, there are two discrete things Download a directory, and Downloads some broken nonsense shortcut link:





  • Does not work: On the left nav, you'll see Images Videos Audio Recent, and then Downloads Documents, and SM-P600. Installing from the Downloads on the right bar, gives this error.




  • Works: Going into the device at the bottom of the left nav (which is actually just a link to /data/media/0 and then clicking on Download will take you Download which is actually different from Downloads (plural and on the Left Nav). From this you can install the APK.




With the CLI



  • Enable ADB in the Settings

  • Run adb shell on the host



  • Browse to /sdcard/Downloads or /data/media/0/Download with cd. If you're unsure where the apk is located try running


    find / -name 'VLC*-ARMv7.apk


  • Locate the apk and install with pm


    pm install ./VLC*-ARMv7.apk




The problem seems to be that VLC web server answers the request with a response that has content-type: application/octet-stream like this,


$ curl -s -I "https://nightlies.videolan.org/build/android-armv7/VLC-Android-3.0.11-20180618-0249-ARMv7.apk" 
HTTP/2 200
server: nginx/1.15.0
date: Tue, 19 Jun 2018 03:16:06 GMT
content-type: application/octet-stream
content-length: 25048251
last-modified: Mon, 18 Jun 2018 06:05:02 GMT
etag: "5b274b8e-17e34bb"
accept-ranges: bytes

x-clacks-overhead: GNU Terry Pratchett
strict-transport-security: max-age=31536000

Rather than application/vnd.android.package-archive. This means that you can't install through the browser, or the Downloads shortcut. This is because APK files are just zip files:


$ file VLC-Android-3.0.11-20180618-0249-ARMv7.apk 
VLC-Android-3.0.11-20180618-0249-ARMv7.apk: Zip archive data, at least v2.0 to extract

So what the File Manager and browser are trying to do is open them as such -- and you don't have something that hands Zip archive data 2.0+


Nexus One's 3.5mm headphone jack accepts standard 3.5mm plug?


As you know, the Nexus One comes with a 4-segment 3.5mm headphone jack, whereas the standard 3.5mm plug has 3 segments.


I visually compared a standard 3-segment 3.5mm plug with the 4-segment 3.5mm plug that comes with the original Nexus One headset and they seem identical in length.



My only concern is that plugging in a standard 3-segment into this 4-segment jack will damage the Nexus One.


Better safe than sorry... so instead of empirically plugging in the standard 3-segment plug in the the N1 just to see whether it causes a fatal short or not, I prefer to ask those who are already knowledgeable with this: Is it safe to use a standard 3-segment with the N1 headphone jack?



Answer



Your phone should be fine.


Android won't route phone calls through headphones though, iPhone can be set to do so and uses the phone's microphone.


An option I use to attach standard headphone to my Galaxy S is a simple Bluetooth headphone adapter (£10 from Amazon), that way I get to use MY headphones and make calls via them, plus you can keep your phone in your pocket when skating into town!


Sunday, January 18, 2015

rooting - How can I make a symlink (or equivalent) inside /storage/emulated/0?


So, I have rooted my phone (GT-i9505 with android 5.0.1) and I would like to move my WhatsApp folder to my external SD card to save 3GB on internal storage. This is what I tried so far.


EDIT: solution found


So, after all the option #2 seemed to be the right one, but it needed some tweaks to make it work. As suggested by Irfan Latif , the problem was that the mount point has to be created in a global mount namespace, otherwise other apps will not see it, so the commands to use are:


su -mm
mount -o bind /data/sdext2/AppData/WhatsAppMedia /sdcard/WhatsApp/Media

But that may not be enough! It still didn't work until I made sure that the namespace of root was global. To do that I don't know any universal way, but what worked for me was going in the SuperSU app settings and uncheck the option mount namespace separation.



That really depends on the SU app that you have installed.


Option 1: symlink


The first thing that I thought was to make a symlink, so that was the command that I used:


ln -s "/data/sdext2/AppData/WhatsAppMedia" "/sdcard/WhatsApp/Media"

I had already created a second partition on my external SD card (ext4) that is mounted in /data/sdext2


However that returns operation not permitted when using the terminal emulator (yes I did su) and an error with any root file manager app that I tried.


After some research I figured out that for some reason, although /storage/emulator/0 is in an ext partition, it is treated in a differente way so that it doesn't support symlink inside (correct me if I'm wrong).


So, onto the next thing


Option 2: mount



According to this question, the following command should mount the folder on external SD card in another folder in the internal SD card, without the need for a symlink


mount -o bind "/data/sdext2/AppData/WhatsAppMedia" "/sdcard/WhatsApp/Media"

However, while running the command doesn't return any error the folder in /sdcard/WhatsApp/Media is still empty, so I don't really know how to handle this.


Option 3: symlink in /data/media/


I followed the instructions on this post and made the symlink in /data/media/0 instead of storage, so using this command:


ln -s "/data/sdext2/AppData/WhatsAppMedia" "/data/media/0/WhatsApp/Media"

This time the link is created! However ...


Although an ls in /data/media/0/WhatsApp/Media revealed that the link was successful, cd /sdcard/WhatsApp/Media returns a very irritating no such file or directory and that is confirmed by the file explorer that shows an empty folder with a blank file icon.



My thoughts


First of all, I now discovered that I really hate android. Now, stated this, here's what I think might help doing:



  • moving my sdcard files somewhere else: if the rest of the root filesystem supports symlink (which it seems like it does), I might even move the folder /storage/emulated/0 somewhere else and make a new link to it, but I don't know if that would solve the problem


That's it for now, I will update with more options when I think about them...



Answer



ANDROID STORAGE:


On Android 5:


/sdcard >S> /storage/emulated/legacy >S> /mnt/shell/emulated/0

/mnt/shell/emulated >E> /data/media

On Android 6+:


# USER-ID of current user in case of multiple users, normally "0"

# for apps
# VIEW is one of "read" or "write" and /storage to VIEW bind mount is inside a separate mount namespace for every app
/sdcard >S> /storage/self/primary
/storage/self >B> /mnt/user/USER-ID
/mnt/user/USER-ID/primary >S> /storage/emulated/USER-ID

/storage/emulated >B> /mnt/runtime/VIEW/emulated
/mnt/runtime/VIEW/emulated >E> /data/media

# for services/daemons/processes in root namespace
/sdcard >S> /storage/self/primary
/storage >B> /mnt/runtime/default
/mnt/runtime/default/self/primary >S> mnt/user/0/primary
/mnt/user/0/primary >S> /storage/emulated/0
/storage/emulated >B> /mnt/runtime/default/emulated
/mnt/runtime/default/emulated >E> /data/media


>S> for symlink, >E> for emulated and >B> for bind mount


In short, /sdcard points to /data/media/0 through FUSE or sdcardfs emulation. This is to restrict unauthorized access of apps/processes to private media on SD card. Read Android's Storage Journey.


SYMLINKS:


Now /sdcard is not a real but emulated storage which represents a FAT/vFAT/FAT32 filesystem (for backward compatibility and permission management) which doesn't support symlinks (and other things including *NIX permissions and ioctls like FS_IOC_FIEMAP). So the Option 1 and 3 of yours won't work whether you create symlink directly on emulated storage or try to emulate the symlink already created on ext4.


BIND MOUNT:


This is the commonly used alternate of symlink for FAT family of filesystems. What you have tried in Option 2 should work. This is what apps like Apps2SD do. But there is again a constraint: mount namespace. You need to bind mount in global/root mount namespace so that the mount is visible to all apps:


su -mm -c 'mount -o bind "/data/sdext2/AppData/WhatsApp Media" "/sdcard/WhatsApp/Media"'

On Android 6+ this needs to be bind mounted on each VIEW (default, read, write) separately for all apps to work.



You can make it permanent by setting Mount Namespace Mode to Global in Magisk or by disabling Mount Namespace Separation in SuperSU. For details see this answer.




RELATED:



Dialer & Contacts app display duplicate (WhatsApp)


Issue: When searching in dialer or contacts apps (From Google Play store, latest version) many contacts show up twice. Only contacts with WhatsApp (or more times if more phone numbers stored under the contact have WhatsApp enable)



https://contacts.google.com online show only one Contact. So no "real" duplicates.


Manual Fix, (one by one): When I edit & save the contact the contacts are now "merged" like it used to be.


This is a new phone and WhatsApp data was restored from Cloud backup.


Same issue:



Attempts to fix



  • Customize the view in contacts app is not a solutions.

  • Cleared the Contacts Storage data



Any suggestion how to fix it without manual touching all contacts?




security - Can Android phones be set to automatically wipe all data after a certain amount of failed logins without an app?


A new policy at my work is being drafted regarding email access on phones. A requirement will be that the phone must automatically have all data erased after a certain amount of failed login attempts. Let's ignore the fact that it's pretty silly to a.) be allowing work email access on personal phones when such stringent expectations are in place, and b.) expect to be able to enforce something like this across a variety of phone platforms. Is it possible to set this up in vanilla Android without any apps?



Answer



Apparently, this might not be a built-in security option in the OS itself, but Exchange ActiveSync can enforce this requirement.


Saturday, January 17, 2015

How can I use shell commands and interact with the Linux system underneath?


Android is based on Linux and has a Linux kernel underneath. Is there any way I can use shell commands and interact directly with the Linux system? E.g. A shell app that has access to the Linux system?



Answer



Yes there is,



Check out the application Better Terminal or Android Terminal Emulator both are support from 1.5


Friday, January 16, 2015

reboot - Cannot boot Android-x86 on PC - Emergency remount


I have a 10.1 inch notebook with Linux, but would like to dualboot with Android x86. The ISO file works perfectly in VirtualBox, VMware, and on Live USB. I have tried both install from the Install program and copying the .img files onto a partition, then adding the boot entry to /etc/grub.d/40_custom. I get the following displayed on my screen when I select the boot entry.


Detecting Android-x86... found at /dev/sda2
[ 3.697517] sysrq: SysRq: Emergency remount R/0

Then it reboots to the GRUB menu.


How do I fix this, and boot Android-x86?


I have an HP-e010nr with an AMD A4 dual core@1.0Ghz, 2GB ram, and I am trying to start Android-x86_64 7.1 on a 32GB partition (no fake sdcard).


I have stored everything in the parition in an "Android" directory.


My boot code is:



set root = (hd0,2) #/dev/sda2 in the partition where Android-x86 is located
kernel /Android/kernel quiet root=/dev/ram0 androidboot.selinux=permissive buildvariant=userdebug SRC=/Android/
initrd /Android/initrd.img

Answer



(I ended up installing LineageOS x86 14.1 instead of Android x86, however, these instructions should still work for Android x86)


After trying to find my answer, I ended up removing my partition for Android-x86 and installing the LineageOS 14.1 .rpm. On Debian Linux (or Debian-based, like Ubuntu) install it with:


sudo alien -ci cm-x86_14.1.rpm

where cm-x86_14.1.rpm is your Android x86 package. If you are told alien is not installed, type sudo apt install alien before repeating.


After a while, it will convert into a .deb and then install. However, you will get the following messages:



/boot/grub/custom.cfg: No such file or directory
/boot/grub/custom.cfg: No such file or directory

In order to add the boot code that failed to be added, put the following in /etc/grub.d/40_custom:


menuentry "Android-x86 14.1-r2" {
search --set=root --file /cm-x86-14.1-r2/kernel
linux /cm-x86-14.1-r2/kernel quiet root=/dev/ram0 androidboot.selinux=permissive buildvariant=userdebug
initrd /cm-x86-14.1-r2/initrd.img
}
menuentry "Android-x86 14.1-r2 (DEBUG mode)" {

search --set=root --file /cm-x86-14.1-r2/kernel
linux /cm-x86-14.1-r2/kernel root=/dev/ram0 androidboot.selinux=permissive buildvariant=userdebug DEBUG=2
initrd /cm-x86-14.1-r2/initrd.img
}

(I got the boot code from the cm-x86 postinit script)


Replace cm-x86-14.1-r2 with the location of Android-x86 (for example: android-x86-7.1-r1), and replace the 14.1 in Android-x86 14.1-r2 with your Android version number (like 7.1 or 8.1).


Then, reboot and select Android-x86 14.1-r2 to boot Android.


unrooting - How easy is it to return to stock after rooting with Unrevoked?


I have found the following link for rooting several Android devices:


link text


It seems quite easy to root, but how difficult is it to go back to unrooted once you've rooted?




Thursday, January 15, 2015

power on - Switch on Motorola Moto G



I have a motorola moto g, which power button has stopped working. My phone switched off, and now I'm not able to switch it on. I tried entering recovery mode but power button is needed, so it does nothing.


Also, when i connect the charger the screen switches on, and the percentage of the battery appears, also when connecting to PC.


Do any of you know any way to switch it on ?


Thanks in advance



Answer



Yes, but it does require a computer with the proper drivers loaded (if using Windows, Linux/Mac do not require special drivers) and fastboot installed (part of ADB package or mini-ADB & Fastboot)



  1. Disconnect USB cable

  2. Press and hold VOL DOWN and connect USB cable from computer

  3. Continue holding VOL DOWN until the bootloader screen shows up then release button


  4. On computer, use the command fastboot continue to boot the device


The device should go through it's normal start-up sequence now.


Why WhatsApp is suddenly unable to open any APK shared by users?


As of 13-11-18, I was sharing APK files on WhatsApp, for testing apps within a circle of people, with no problem whatsoever. But as of today, if I try to open an apk, I get an error toast saying:



You may not have the proper app to view this content.



Did they change their policies and decided not to let people share APK files on their platform?


I don't use third party websites for sharing APKs, where mostly Chrome spooks most people saying that "This type of file may harm your device".





Wednesday, January 14, 2015

samsung galaxy s7 - How do I verify my firmware is legitimate?



I just bought a "new" Galaxy S7, but the box was already open when it arrived.


Condition of the phone was perfect, so I don't mind if it's used/refurbished. What I worry about is whether the device has a keylogger installed or some other malware.


It successfully accepted an over-the-air update. This gives it some credibility (I don't know how indicative this is, but I believe OTA updates are only offered to stock firmware).


Samsung KNOX is enabled, and hasn't complained yet.


I've rebooted into recovery, and see the following text:


Android Recovery
MMB29K.G930FXXU1BPHJ
samsung/heroltexx/herolte
6.0.1/MMB29K/G930FXXU1BPHJ
user/release-keys


Those are real build numbers for stock firmware I have been able to find online.


I've rebooted into ODIN mode, and see the following text:


ODIN MODE
Download speed: fast
Product name: SM-G930F
Current binary: Samsung official
System status: official
FAP lock: ON
Secure download: enabled

Warranty void: 0 (0x0000)
RP SWREV: B:1 K:0 S:0

The KNOX counter (warranty void) is still set to 0. This suggests further that it has not been tampered with.


Are the checks that I have performed already sufficient? There are some further checks I would like to know how to do:


I expect anybody can just type a build number in. I would like to compare the checksum of the firmware with the real build. I also would like to check if it has been signed with a Samsung certificate.


There are no custom User certificates in its security section. But I would appreciate some way to compare my System certificates to confirm they are genuine.



Answer



IMO, your firmware is original, because it





  • Received OTA - most clinching reason ( see edit for details)




  • Knox isn't tripped




  • Firmware number matches





For Samsung phones, there is a handy app that provides a lot of information about the phone, including Refurbishment Check. It also shows if the device is original. It is Phone INFO Samsung. App developer thread on XDA here


This question shows you to verify the checksum of OS. You could try that with the checksum available on OEM site or SamMobile Is there a way to verify stock ROMs?


Edit


Starting from Android 5.0 Block based OTA, in which the device can get an OTA when the entire /system partition matches with that does on their servers. Concerns of OP in comments are addressed here- if the system is modified OTA would fail



....File OTA tolerates some changes to the partition, such as the addition of files that are not part of the source or target build. However, block OTA does not tolerate additions to the partition, so users will need to install a full OTA overwriting any system partition modifications) or flash a new system image to enable future OTAs



(Emphasis supplied)


settings - How do I change the name of my Android device?


My Android device is the Nexus One. But this should apply to all current Android devices.


How do I change the name of my Android device?


When I connect to my wireless router's client tables, my android devices is listed for example as: android_1234567890abedfc. I'd like to give it a more readable name.





settings - How to setup K9 Mail properly for free email services offering multiple aliases for same email box?


Tried Googling for a lot of results but did not find any that can show how to setup email accounts that offer using multiple email aliases to users on same email. I am talking mainly about Outlook.com and ability to send from my email account there using different aliases like joedoe@outlook.com or superjoe@outlook.com while all arriving email will arrive to main email box. I also wonder if certain filters can be set up that would establish folders for respective email aliases to keep myself organized)


I tried playing with settings, different combinations but nothing worked and brought me errors.




  • I tried settings like using @outlook.com instead of @hotmail.com or my email address but without @outlook.com or @hotmail.com for my username.




  • Tried m.outlook.com and snt-m.outlook.com and same with hotmail.com





  • Tried enabling SSL/TLS security with default port 443 and no security




Can anyone suggest me appropriate course of action to setup K9 Mail at least for Outlook.com to be able to use email alias I have there? I think it involves setting up exchange type of account.


Thanks.


Android 4.3


K9 Mail latest version




insufficient memory - Why does my phone keep telling me it has low storage?


My LG Android phone keeps telling me that it has low storage available. I have looked through the apps and have 5 text msgs on the phone.


It seems like I keep deleting and deleting and it keeps coming back!


Why do my actions not work and what can I do?




twrp - Can we backup the stock recovery.img in any way?



Suppose I plan to flash my recovery with TWRP/CWM, but then later suppose I would like to move back to the stock recovery. Is it possible to take a backup of stock recovery just like we can take a backup of our ROM?




google play store - How can I modify the phone model in build.prop to get unsupported apps?


I currently have a rooted HTC Legend. In light of the current Android Market sales, I would love to be able to purchase some of the apps on sale without a compatible handset, since I plan to get a GNex in the next few weeks.


I've read that it may be possible to modify my build.prop file to a more modern handset, however beyond this suggestion, I can't find any more specific details, nor which phone model would be ideal for this. How can I do this?


I note that a number of people complain they've bricked after messing with build.prop. Is this a real danger or would it just require fixing the build.prop from adb, or reflashing the ROM?




terminal - cannot mount sdext for link2sd?


I have a huawei u8160 running Cyanogenmod 7.2.


when I restart my phone I have to remount the sdext myself using terminal emulator.


su
mount -t ext2 /dev/block/mmcblk0p2 /data/sdext2

but now it returns :


mount : mounting /dev/block/mmcblk0p2 on /data/sdext2 failed : invalid argument


so I want to know how can I mount it again?



Answer



I've found it out,


the ext2 partition magically turned into ext3 without formatting I don't know how but it happened,


Formatted my ext3 partition into ext2 again and it worked,I couldn't find anyway to bring lost data back.


Tuesday, January 13, 2015

applications - How to launch an app immediately after another app is closed using Tasker


I need help creating a Tasker profile that will open Aldiko Sync ONLY after I have ended the main Aldiko Premium app.


So with this profile, Aldiko Sync automatically launches and does its thing immediately after I close Aldiko Premium reader.



Answer



You can setup an exit task. An exit task is assigned from the Profiles tab. Expand the entry of your profile, long-press the assigned task there and choose Add Exit Task.



(Click image to enlarge)


IMG:


Instructions:



  • Profile: Application → your app (Aldiko Premium in this case)

  • Task: (Actions): do anything you want

  • Exit task: (Actions): App → your another app (Aldiko Sync in this case)


Note: It is not mandatory to have an enter task in order to assign an exit task to a profile.


If you don't want an enter task i.e. don't want a task to be run when the profile is triggered, you can choose to create a task (supposed to be used as an exit task) under Tasks tab, assign it as an enter task to a profile and make it an exit task using Move to Exit (see screenshot).



applications - System App Permissions


I have an application that needs root permissions to run. No biggie, all of my personal devices are rooted, so I am very comfortable with the process. The problem is that this application is to be used on company owned devices issued to certain employees and I don't want them to be able to uninstall the application nor do I want them having root access to the device.


I was thinking that the following process would accomplish my goals:



  1. Root the device

  2. Install my app as a system app

  3. Launch the application and grant su rights to it

  4. Unroot the device



Since it would be a system app, and the device wouldn't be rooted, users would be prevented from removing the app. What I am unsure of is whether or not that application would retain its root privileges once the device is unrooted?


Any feedback or insight would be greatly appreciated!




widgets - How can I make a shortcut to the "Recent Apps" dialog?



Do you know if there is any way to create a shortcut or widget on the homescreen to access to the "Recent Apps" list? Basically, is there any way to access to this list without having to hold the Home button?



Answer



Here you go. Just move the icon to your homepage as a shortcut and you're good to go :)


MoreRecent


enter image description here


via droidforums.net


malware - How do I tell if my phone has Carrier IQ Software on it?


What is known about the Carrier IQ Software and Android handsets? I see a similar icon as shown on the Carrier IQ app next to an app called "Contact Data" and another called "Contact Sync". Does my phone come with Carrier IQ?



Answer




On your phone's home launcher, go to menu --> settings --> applications and look for anything that contains "Carrier IQ", "IQ", or possibly "com.carrieriq.iqagent"


If you are rooted, it appears that this app will check and see if it exists on your phone. The paid license key will also let you remove it from your phone. This app was made by Trevor Eckhart, the person who discovered this "vulnerability."


If you are not rooted, this app will attempt to detect Carrier IQ on your phone. And here is another app, by Lookout, that will detect for Carrier IQ on your phone.


Also: if you are rooted and running a custom OS, such as CyanogenMod, you should have no worries about Carrier IQ. Carrier IQ is bundled by the manufacturer/carrier and shouldn't be included in a ROM such as CyanogenMod as long as it is built from the AOSP and is not a derivation of a manufactuer's ROM.


2.3 gingerbread - Where are the links of the saved pages of Opera Mini are stored in Android?


I have an Android 2.3 Gingerbread and have installed Opera Mini. I used it to save many useful pages for offline viewing and I want to save the links of the pages in a text file. So I need to find the place where the links of the saved pages are stored.




Monday, January 12, 2015

notifications - Built-in alarm, calendar suddenly talking to me. How can I shut them up?


I use the native Clock app, and my alarm used to just have a normal ringtone. I assume there was some automatic update recently because this morning, in addition to the normal ringtone, there was a robotic voice saying "It is 7:25 AM." Then later I got a notification from the native Calendar app, and in addition to my normal ringtone, the robotic voice announced the text of the notification.



How do I shut this off? It's really annoying and I don't see an option in Settings.




6.0 marshmallow - "Check Your Connection And Try Again" repeated prompts


For about a month and a half my Nexus 6P (running Android Marshmallow 6.0.1) has at random times shown a notification of Check your connection and try again. This notification pops up no matter what app I am in, maybe two or three times a day, usually; so far today, however, my phone has given me the prompt maybe 15 times. When it pops up, I am usually actually connected to WiFi or Cellular (the issue has occurred on multiple wifi networks and multiple carriers), and loading a webpage immediately before/after it pops up invariably works. Here's what the notification looks like:


Check Your Connection And Try Again prompt 1 Check Your Connection And Try Again prompt 2


When it happens more The issue occurs more frequently (but not at all exclusively) when:



  • I'm downloading/updating an app from the Play Store

  • Uploading a photo from my device to Google Photos


  • I've just restarted my phone

  • I've just awakened my phone from sleep

  • My phone turns on after having been turned off with the Google App in the foreground (i.e. when the Google App is on the screen when the phone turns on)


Not actually a duplicate This question may appear to have been asked before, but those questions are about when the message pops up in the Play Store app; I have nonetheless followed answers' instructions from those questions (instructions like clearing Play Store cache), but to no avail.


These prompts are annoying and I'd like to determine the source. Could it be an app? The Play Store? Google Photos? Or a system prompt?


What I've tried so far



  • Restarting phone

  • Switching WiFi networks, switching to Cellular


  • Clearing Play Store cache

  • Toggling Hotspot/Tethering on/off

  • Toggling Airplane Mode on/off


Phone Specs Nexus 6P, Android 6.0.1, not rooted, has Project Fi as carrier (used to be on AT&T, issue occurred then too)


Thank you in advance.


Edit: One other solution to a similar question mentions the Freedom app, but I don't have that installed.



Answer



Based on your assertion that your issue is not Play Store-related, I believe it is a malfunctioning app.


The Toaster app will help you track down the source of these "toast " notifications.



The app description reads:



Records every toast message including the sender package. May be helpful if you get messages and don't know which app sends it.



Update: As confirmed by OP, the Toaster app worked and the app responsible for the repeated notifications (as determined by Toaster) is NYTVR, the VR app of New York Times. Interestingly, there is one user review there which complains of the same problem faced by you!


Update 2: I tried downloading the NYTVR app to see if the same problem would arise (I am also on same OS, though I have a Moto X Play); however, I did not encounter any such notifications, which makes me think that this may not be purely OS-related, but rather a general bug in the NYTVR app that only occurs on certain devices.




If Toaster indicates that a certain app is sending the notification, make sure that app is updated and has settings set in a standard way. If you can't stop the notifications, contact the developer of the app or uninstall it.


Hope this helps!


Sunday, January 11, 2015

bootloader - Debugging bootloop: Get an information log without ADB? Can an emulator help?




Possible Duplicate:
Android boot-up messages for debugging?



Related to this post I created: Does the Android emulator generate some sort of log file I can access if it crashes?


I have been searching and trying to figure out if there is any way at all to get some kind of debugging information or any kind of kernel messages from an Android phone if it gets stuck at a bootloop state? That means the phone gets stuck at the "Google" splash-screen, then crashes, then goes to that, then crashes.


I know the phone has several stages of bootloading, but for me to even figure out why my system image/modified kernel is making the phone crash, I need to at least know where the phone is crashing?


Is there any kind of log the Android emulator maybe spits out that shows it going through the stages of booting: i.e. stage 1 bootloader, main stage bootloader, kernel being loaded, initialization process, Zygote, Zygote initializing Dalvik VM, execution of system server, then boot completed (when the ACTION_BOOT_COMPLETE flag/event is raised).


I've tried modifying init.rc to echo commands to a boot log (but it didn't work, though I don't know if the phone makes it to that stage, all I have is a useless splash screen), I've tried any of the ADB stuff but of course ADB doesn't work if the phone doesn't reach a stable state, the Linux dmesg command only works to show that the phone plugged in via USB, and the Android developers have chosen not to at least explain to me that only they hold those kinds of developer tools. Can anyone give me some guidance of what I can do to debug the boot process? There has to be some kind of log you can access with the emulator at least.



In other words, how does anyone get any kind of log from their phone/emulator if gets stuck in a bootloop?


Further information, my kernel version I believe I have downloaded for my phone build is Linux kernel release 3.x (stock kernel pulled from the tuna folder and using the "omap" project), for Android Galaxy Nexus (maguro), with the platform being Android 4.0.3 ICS.




Saturday, January 10, 2015

htc droid incredible - /data/data nightmare: FC's because of 100% Utilisation


I feel like I need to clear things from /data/data every 2 to 3 days to prevent cascading FCs when it becomes 100% full. Is there any possible way to move any of that data to the SD card (and still have it be accessible from my apps), or to increase the maximum size of the folder? I am rooted and running cyanogenmod 7.1 on my HTC Incredible. Thank you all so much for your assistance.



Answer



Have you tried moving your Apps to the SD Card? Go to Menu -> Settings -> Applications -> Manage applications -> Downloaded tab then tap on any 3rd-party app and then tap on the Move to SD card button (if available.) This should move most of the app to the card, thus freeing up space on the /data/ partition. Not all apps support this method, but do try it on the largest space hogs like Flash Player and Adobe Air, for example.


Unfortunately moving Apps to SD Card this way doesn't touch the apps' cache or Dalvik cache. To move those you'd need the old-school "apps2sd" hack. The basic idea is to re-partition your SD Card and create a 2nd partition with Ext2/3/4 format. The contents of /data/ folders are moved to the SD Card's Ext partition and the phone's internal memory is therefore freed up. Then a script is added to Android which mounts this partition at boot time and links /data/app, /data/app-private, /data/data, and /data/dalvik-cache folders to their corresponding locations on the SD Card's Ext partition.


There are some apps on the Market that automate this (except re-partitioning the card, which you'll need to do manually.) Try Link2sd or Simple2ext for example. Of course make sure you have a nandroid backup of your phone before trying anything.


There are obvious pros and cons to this method. The pros are the ability to greatly extend the phone's storage for apps, while keeping the internal memory relatively free. The cons are inability to cleanly un-mount and remove the SD Card (since the apps are mounted on the 2nd partition that the OS isn't aware of,) and possible slow-downs in launching apps depending on the speed of the card. There SD Card will also be subjected to more wear and tear, since it will be used by the system for reading/writing more than usual.


applications - Discrepancy between sizes of apps listed in Play Store vs. actual installed app size


The Play Store lists the size of all apps available in their store. When a user downloads and installs apps, the actual sizes reported by Android are often larger than the sizes listed by the Play Store.


Of importance, this discrepancy occurs before applications are even run for the first time.



What is the reason for the discrepancy?




Widget to show calendar events and TODO items merged in a single agenda?


The Calendar application works with Google Calendar and its agenda style is really useful. Nevertheless, for some reason, it does not work with Google Tasks, so I use GTasks that works with the Google Tasks. I use both of them really intensively, but none of them can show both calendar events and todo items. Sometimes it's very inconvenient because I have to switch between widgets and merge the overall timeline in my mind.



So is there any widget to show calendar events and TODO items at once? Agenda style would be a real plus.


Thanks in advance.



Answer



You might want to take a look at Pure Calendar Widget. Will cost you about two bucks, but does exactly what you request:



Widget for Agenda / Tasks / TODO (agenda style)



  • Synced with Google calendars

  • Show calendars from Google, TouchDown & Moto/LG Exchange

  • Show tasks from Astrid, Tasks (Team), MyPhoneExplorer, Ultimate To-Do List, TaskSync, CalenGoo, DGT Gtd, gTasks, Got To Do, Task Organizer, Due Today, TouchDown, Pocket Informant




Pure Calendar Widget Agenda Widget for Android
Pure Calendar Widget / Agenda Widget for Android (source: Google Play; click image for larger variant)


An alternative could be Agenda Widget for Android (second screenshot above), which has a free trial variant (which I linked) and comes close to what the previously mentioned does.


As I don't use any of those, I cannot tell you which might fit you best -- but at least with the free variant, you might want to give it a try :)


Friday, January 9, 2015

usb host mode - Using an OTG cable while charging



Most Android devices have a single port for both connecting to the computer (USB) and charging. I have to use this OTG small cable to transfer data, but also to use a real keyboard. However, when I connect the keyboard, I cannot recharge my device while I work. Since they both use the same port, is there a way to split an OTG cable to introduce power on it, but keep the existing port so I can connect a keyboard ?



Answer



Yes, it is possible, at least technically. What you need is a cable called a OTG host cable with power, which is a double-female cable with a male micro, a female micro (which only has the power and ground connected, no data), and a female A, like this one.


Additionally, you also need software support. I know an appropriate kernel patch is available for CM10 on the Nexus 7 (here), but I don't know about any other devices.


Thursday, January 8, 2015

file transfer - How do I stop a download?


I accidentally clicked on a download link and started a download. Once the download started, I didn't know how to cancel it. Later, it occurred to me that I could have ended the connection.


Either way, how do you stop a download once started?


I have a HTC Wildfire S, a v2.3.5 Android if that matters.




fastboot - flashing twrp on lg g4 no error, but no twrp


I'm trying to flash twrp to my lg g4. I've reached the part where I run



fastboot flash recovery twrp.img

And everything seems to work fine, but when I try to enter recovery mode, I get the default lg recovery (restore factory mode options) and not twrp.
Here's what it prints out when I run the flash command:


target reported max download size of 536870912 bytes
sending 'recovery' (32060 KB)...
OKAY [ 0.827s]
writing 'recovery'...
OKAY [ 0.341s]
finished. total time: 1.168s


What am I doing wrong?
I tried doing it from a different computer and tried flashing older version of twrp.



Answer



I solved the issue..
Apparently, when you enter recovery mode, the phone asks you whether you'd like to do a factory reset, and you choose yes it boots into TWRP :)
Hope it helps someone.


networking - Captive Portal parameters


There are several captive portal parameters one could apply to an Android device via settings put global – the most famous probably being


settings put global captive_portal_detection_enabled 0

to completely turn off captive portal check (for Android < 8). Can someone explain how to use the others – e.g. to define a "custom captive portal server for tin-foils"? For example, one cannot simply do a


settings put global captive_portal_server example.com

as that would, in most cases, cause captive portal check to permanently fail (background: doing so, portal check would construct an URL http://example.com/generate_204 and check against that, expecting a specific response).


So apart from simply deactivating captive portal check altogether (which might, as I've read, lead to other issues like not being redirected to the correct portal in some cases), what else can one do to enhance privacy in this context?



Examples (if I got them right):



  • captive_portal_mode (Android 8+?):

    • 0: Don't attempt to detect captive portals

    • 1: Prompt the user to sign in

    • 2: Immediately disconnect from the network and do not reconnect to that network in the future



  • captive_portal_detection_enabled (Android <8?):


    • 0: Completely disable captive portal checks

    • 1: Enable it (default)




While these examples are pretty much straight-forward: How to use the other parameters?



Answer



Configuring captive portal behaviour




  • captive_portal_detection_enabled (<= Android 7.1.1)

    • works as described in question body



  • captive_portal_mode (>= Android 7.1.2)

    • works as described in question body





Setting captive portal URL(s)



  • captive_portal_server (<= Android 6.0.1)

    • The server that holds a generate_204 page, used to internally craft a URL for captive portal detection (new URL("http", mServer, "/generate_204"); – obsolete as of Android 7.0, see below)



  • captive_portal_use_https (>= Android 7.0)


    • 0: Don't use HTTPS for network validation

    • 1: Use HTTPS (default)



  • captive_portal_http_url (>= Android 7.0)

    • The URL used for HTTP captive portal detection - use in pair with captive_portal_use_https (set to 0)

    • >= Android 7.1.1: OS no longer appends generate_204 to URL automatically, giving input URL some flexibility




  • captive_portal_https_url (>= Android 7.0)

    • The URL used for HTTPS captive portal detection - use in pair with captive_portal_use_https (set to 1)

    • >= Android 7.1.1: OS no longer appends generate_204 to URL automatically




Requirement for the URL to be used


A HTTP 204 response code ("no content") from the server is used for validation, no extra content needed: take the default detection URL for example, curl clients3.google.com/generate_204 returns empty, and inspecting HTTP response by adding --write-out %{http_code} returns 204.'


A small list of usable captive portal server URLs in mainland China (personally tested)




https://captive.v2ex.co/generate_204 (hosted by v2ex.com)


https://connect.rom.miui.com/generate_204 (hosted by Xiaomi, used by default on MIUI)


https://noisyfox.cn/generate_204 (hosted by noisyfox.cn)


https://www.google.cn/generate_204 & https://developers.google.cn/generate_204 (hosted by Google)


https://www.qualcomm.cn/generate_204 (hosted by Qualcomm)



Further notes


The source also mentions parameters captive_portal_user_agent, captive_portal_fallback_url and captive_portal_other_fallback_urls:




  • captive_portal_fallback_url (>= Android 7.1.1) obviously is supposed to hold a single URL, while

  • captive_portal_other_fallback_urls holds multiple further URLs (comma separated list, so the URLs might not contain any comma).


But I personally conducted tests on Android 8.0.0, and both fallback parameters don't work. Assuming they're declarations without an implementation for now.


Some examples of captive portal settings of Android in China show the use of some of the above settings:



adb shell settings put global captive_portal_http_url http://www.google.cn/generate_204
adb shell settings put global captive_portal_https_url https://www.google.cn/generate_204
adb shell settings put global captive_portal_fallback_url http://www.google.cn/generate_204
adb shell settings put global captive_portal_other_fallback_urls http://www.qualcomm.cn/generate_204


Knowing that, "tin foils" even could set up their own verification service. With Apache:



RewriteEngine On
RewriteCond %{REQUEST_URI} /generate_204$
RewriteRule $ / [R=204,L]

or with Nginx:


location / generate_204 { return 204 ; }

References



1, 2 (Chinese), 3 (Chinese)


How to enter in TWRP/recover on Huawei P9 lite with keys?


I have a p9 lite Huawei. I can boot into twrp with this command


adb reboot recovery

But without adb, I cannot enter in recovery mode. If I push Volume Down+Power, it goes into bootloader (I can see a green droid logo). If I push Volume Up+Power, it opens the EMUI recovery. How to get recovery mode with twrp?Is possible with fastboot? I have installed the twrp with


fastboot flash recovery twrp.img

Answer




I have found a workaround to enter in recovery.


a)Turn off device
b)Push power+VolumeDown
c)We enter in bootloader mode, with volumeup key we select the "recovery" and press power
d)Device reboot to twrp

Wednesday, January 7, 2015

touchscreen - Weird dot on screen that captures all input


Forgive me for the unclear title. Some time ago, my HTC M8, which is rooted and runs on a Venom ROM showed something weird. Firstly, in the Google Maps App a mysterious blue dot appeared, that captures the screen completely and makes it impossible to quit or use the application. It looks like this (I could make a screenshot)


enter image description here enter image description here



When this happens in Maps, the only thing I can do is a hard restart with Power+Volume Up.


Since I have seen this occasionally in the camera app as well, I suspect it is not a bug of Maps itself. I know that the Venom ROM is not standard but maybe this is connected to some setting and anyone has seen this. Btw, the Venom ran smoothly for almost 3 years now.


Question: Has someone a clue what this could be and how I can get rid of it?



Answer



I found the answer to my question in this xda thread. What I experience is the white dot that can be switched on in the developer options, although there, I have never turned it on.


I guess my only solution is to either install a new ROM or return to stock :(


samsung galaxy s 2 - Out of memory errors on S2. Safe to delete all dumpstate files?


My Android S2 is out of memory and unable to update apps. Specifically it is currently using nearly all of the paltry 2gb partitioned for apps.


I'm reading that you can issue *#9900# in the dialer, and select menu 2, that this will clean the dumpstate files. I get Unable to process request.


My phone is rooted so when I go to terminal and ls -l on /data/log, I'm showing no .log files but several dumpstate.tar.gz files. Is it safe to nuke these tar.gz files?




Answer



Data in "log directories" should generally be safe to delete, as they are mainly intended for debugging purposes. The files having an .tar.gz extension simply means they are archived (see: tar (computing) at Wikipedia); if you copy them to your computer for investigation (e.g. using Winzip on a Windows machine, or the command-line tar xzf ) will probably show those files contain *.log files.


If you want to be on the safe side, make a backup first. But I very much doubt you'll ever need those files again.


Tuesday, January 6, 2015

bluetooth - Is there an app that will vocalize (text to speech) a message (SMS)?



When I'm driving with a headset active (Bluetooth or wired), I want my Android to read me any incoming text messages.


Any references?





How to fix USB Mass Storage not recognized by PC?


I have tried many things but can't make my Samsung Galaxy mini 2 S6500 USB Mass Storage to be simply recognized by my PC. Why is such a simple thing so hard?
Does anyone know the solution to this problem?


Thank you.




Can I use an Android OS card on the new Nook Tablet?


I am debating between purchasing the Kindle Fire or the Nook Tablet for my son. My main concern with the Kindle is the limited memory. I love the fact that the Nook has the slot for an SD card. However, I've noticed that the prices on many of the games and such on the B&N Nook store are much more than those on Kindle. I read somewhere that there is an Android OS card that can go into the Nook MicroSD slot to make it a full Android tablet. Is this true? Where would I get this card and how much is it? (I'm really totally new to this... sorry). Would this mean that I would be able to go to any Android App store and download games and such from there? Any help with this would be greatly appreciated!




command line - Allow "unknown sources" from Terminal without going to Settings App?


I have a corrupted Settings app in CyanogenMod and have a possible idea to restore a backup of it (App and Data) in Titanium Backup. But it's currently set to not allow "unknown sources" so Titanium cannot actually restore the old Settings over the current (corrupted) one.


I have a Terminal app installed on the phone. Is there a command in Terminal to essentially 'tick' that "unknown sources" setting, since I can't open the Settings app itself? (It gives this.)




shell - Create symlink/mount/bind in root



I want to compile (through make) on my Android phone. I have root access.


I have almost all the things set up. But there's this hitch. All the configure files have a shebang of #!/bin/sh. I can execute them by $SHELL configure I've also set $CONFIG_SHELL But some configure files execute other shell scripts and they give the /bin/sh: no such file or directory.


I'm thinking about creating a symlink /bin/sh -> /system/bin/sh I've read somewhere that the root file system is the ramdisk and any changes to it will require to be done in the init.rc file. So, if I want to accomplish this I'd need to first create a directory 'bin' then make a symlink 'sh' in it. I doubt that ln will work in init.rc.


I have this another idea. Make a directory 'bin' somewhere preferably in Terminal IDE's (I'm using that) data directory. Then create a symlink in there sh -> /system/bin/sh. Then create 'bin' in / through and use mount the first bin to /bin through init.rc


Thirdly, I can just mkdir bin and cp /system/bin/sh /bin/sh


Also, all of these methods will fail and result in boot failure if any of the source directories cannot be found.



I want to know which method will be more safe and if there exists a safer alternative?



Answer



@vishalbiswas For that to work you may also need to export PATH and LD_LIBRARY_PATH


you can actually script out your required set up and push that script to xbin so it be run as executable. so you would be looking at something like this for setup name the script to what works for you


#!/system/bin/sh
mount -o rw,remount /
mkdir /bin && mkdir /lib
chmod 755 /bin /lib
mount -o bind /system/bin /bin
mount -o bind /system/lib /lib

export PATH=/bin && export LD_LIBRARY_PATH=/lib

the above is loose, tinker with it a little, now to close it out mostly reverse order


#!/system/bin/sh
umount /bin && umount /lib
mount -o ro,remount /

the directories /bin and /lib should vanish on reboot since they are living in ram and you shouldn't need to unset PATH and LD_LIBRARY_PATH as when you close your terminal instance those variables should die with it.


The other approach is to set up a no-frills chrooted arm linux in your external sd card's second partition. I use debian and customed my init.environ.rc as follows


# set up the global environment

on init
export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/gcc/bin:/system/xbin:/bin:/usr/bin:/usr/sbin
export LD_LIBRARY_PATH /system/lib:/system/gcc/lib:/system/vendor/lib
export ANDROID_BOOTLOGO 1
export ANDROID_ROOT /system
export ANDROID_ASSETS /system/app
export ANDROID_DATA /data
export ANDROID_STORAGE /storage
export ASEC_MOUNTPOINT /mnt/asec
export LOOP_MOUNTPOINT /mnt/obb

export BOOTCLASSPATH [blah blah jars blah xD ]

# Debian CHROOT
export DEBIAN_ROOT /debian
export TMPDIR /tmp
mount -t proc none /debian/proc
mount -t sysfs none /debian/sys
mount -o bind /dev /debian/dev
mount -o bind /proc/net /debian/proc/net
mount -t devpts none /debian/dev/pts


in this approach your file manager should read your chroot partition files directories and all without issue. i use total commander.


EDIT- i forgot the necessary entry in fstab it goes as follows, again adjust to your device's scheme


/dev/block/platform/msm_sdcc.2/by-num/p2              /debian      ext4    rw,errors=panic                               wait

Here is the tutorial i learned to do the above from http://whiteboard.ping.se/Android/Debian


Do look for a fairly current distro image though. As long as you don't try to delete a bind mounted directory without first UNMOUNTING IT [ i have never ever ever done that btw] you won't accidentally delete your system.


samsung galaxy s 2 - Cannot restore Kies backup after firmware upgrade

I backed up my Samsung Galaxy S2 on Kies before updating to Ice Cream Sandwich. After the upgrade I tried to restore, but the restore fails ...