I think I can say ... everyone here knows the native google services app, right? Well, this app performs structural operations on the system, plus functionalities. All this, however, in the background, and sometimes (with or without mobile data). In fact, every operation of this app is performed without such data, but, on the other hand, with the data attached, then [it] may come to consume. Several brands from manufacturers such as Samsung, LG, Sony etc ... allow the user to restrict the use of mobile data in the background of some apps (natives or not, which consume a lot of franchise or not). And these manufacturers allow two types of restrictions in the background. A: general, aiming not to exceed the limit of data used of the franchise, two: specific, whereby the user manually restricts or de-restricts the apps that are or are not consuming data (internet). Now, one thing needs to be said, depending on the version of android, of course, the place where the user can restrict apps from consuming rem background may be different. So to use a standard reference - in my understanding - I will use Samsung as a manufacturer reference, and the Android versions between 4.1 and below 5.0, aiming as I said, on average. It should be noted that in every app (native) can be made such a restriction. Of some native apps (not counting offlines, for entertainment), they depend on all the stability of the operating system, and not only, but they do not use any mobile data, even when connected. Returning to stick with google services, you need to expose two of your own characteristics. [It] does not use any data in the foreground (since it can not be accessed internally, since it has no icon in the application grid), and the second is that [it] uses data in the background (regardless if you are inside the play store "downloading something" and, or if automatic notification update synchronization is disabled).*The problem is that if the user restricts the background data consumption (specific form) of the play store app, for example, if he [user] decides to re-enable such consumption of the app referred to, it will do so without any problems. It is only the user (after accessing it internally, and spending a few kb / s of data browsing "in the store") to go to the mobile data consumption meter on your device and the list with the most consumed internet apps, click on top of the app you want the restriction (in this case, the play store) and choose this option. However, if the same restriction for the google services app happens the opposite. The primary constraint becomes irreversible! At least, that's what I said, I'm not in this forum, maybe someone points out an effective deal. Anyway, let's see why this [reported] is given. Remember the explanation, where he said: just spend a few kb / s, for this consumption to appear in the meter of consumption, and be clicking on top of such app? I was referring to the play store, I made it clear ... or not? Well, since google services does not use anything in the foreground, it will be impossible to make [such an app] appear on the referenced meter. This implies the possibility of reactivating consumption in the background (if restricted), not only referring to google services, but all apps that do not consume anything in the foreground.
duplicate thread
original here https://forum.xda-developers.com/android/general/consumption-internet-background-natives-t3759116
thread closed
Related
Apps starting on their own. Anyone have these issues? All the att stuff is gone but the video and music player are open randomly as well as quik office. I can see gmail opening and others tho check for updates
Sent from my SAMSUNG-SGH-I897 using XDA App
Yes, this annoys the hell out of me. I wish I knew what to do to stop it. I've even downloaded an app that's supposed to stop things from auto-starting, and it doesn't even work.
Search for StartUp Auditor on the market, it may work for you.
Android Market description
Startup Auditor is one of the original task killer & task manager apps. It is a boot monitor and startup monitor tool which displays a list of applications you may disable.
Terminate processes automatically.
Enable/Disable apps& keep disabled. No root.
Full version eliminates ads and can disable unlimited!
Package: com.vesperaNovus.app.StartupAuditorFree
Click to expand...
Click to collapse
On the advice of this forum I uninstalled my app killer. From time to time I use Android System to see what's running and I notice a number of apps that start themselves. These include the stock music and video players along with Slacker Radio, AT$T Maps, eBay, GPS Status and a dozen others at various times. I don't mean they remain running after exiting, I mean they start without my having used them. What could be causing these apps to start when not called upon? The ones that use GPS put a significant drain on the battery without me knowing it. Any ideas what triggers these apps? I think I'm going back to using an app killer.
Miami_Son said:
On the advice of this forum I uninstalled my app killer. From time to time I use Android System to see what's running and I notice a number of apps that start themselves. These include the stock music and video players along with Slacker Radio, AT$T Maps, eBay, GPS Status and a dozen others at various times. I don't mean they remain running after exiting, I mean they start without my having used them. What could be causing these apps to start when not called upon? The ones that use GPS put a significant drain on the battery without me knowing it. Any ideas what triggers these apps? I think I'm going back to using an app killer.
Click to expand...
Click to collapse
Mine does the same thing. I have Advanced task killer on mine. I dont use it to kill apps, just to look and see how much ram is free and whats running. But all kinds of junk opens by itself.
so does anyone have a fix for this?
derek4484 said:
Mine does the same thing. I have Advanced task killer on mine. I dont use it to kill apps, just to look and see how much ram is free and whats running. But all kinds of junk opens by itself.
Click to expand...
Click to collapse
What use is free RAM when it is kept free all the time?
AJerman said:
Yes, this annoys the hell out of me. I wish I knew what to do to stop it. I've even downloaded an app that's supposed to stop things from auto-starting, and it doesn't even work.
Click to expand...
Click to collapse
Use "start up auditor". With personal experience, this only slowed down my system.
dieselstation said:
so does anyone have a fix for this?
Click to expand...
Click to collapse
This is now android works. The way I see this, this is very much similar to "pre-fetch" concept in windows 7.
I have a 6 GB RAM laptop. Base OS uses less than 1.5 GB of RAM. But like an hour or so when I see my RAM usage, its to the tune of 3-4 GB. What I have noticed is that my most frequently/recently used apps are loaded to RAM and kept there idle. Some amount of RAM is always kept free instead of using up all RAM. This way apps start faster. When I load a different memory heavy program, it pushes the existing one out and loads this.
More or less the same in android too. When u go to any task manager app n see the running apps, u'll notice that many of the apps loaded are the ones u use frequently.
These apps do NOT use any CPU. They are just loaded to memory and kept there for quick access.
When I boot up my phone I have like 190+ MB free RAM. Though left in standy mode, within an hour, I see my free RAM fall to 80-120 MB range. I never saw it go less than 80 MB. And the apps in memory are the ones I used the last time, and the ones I use all the time.
Even if u use a task killer to kill these "inactive" apps at intervals, they would be loaded again sooner or later. That's the principle of android. So by using task killers, though u feel u r freeing up memory, in fact, u r only draining ur battery. What's the use of memory if u r not using it effectively.
Don't worry abt free RAM amount. Let android manage it. Systems are intelligent enough these days.
Hope this helps.
All well and good, but when I look at what apps are using the most resources, the GPS-enabled apps are almost always near the top of the list even when I haven't been doing anything with them. That tells me that they are stealing processor time even when not being used and that can't be good for battery usage.
Miami_Son said:
All well and good, but when I look at what apps are using the most resources, the GPS-enabled apps are almost always near the top of the list even when I haven't been doing anything with them. That tells me that they are stealing processor time even when not being used and that can't be good for battery usage.
Click to expand...
Click to collapse
Install Spare Parts and see battery usage. Do u see any GPS time under CPU usage. Though my system has all these apps loaded up, they don't show up as using CPU time or any sensors unless I use the app.
Android Memory Management
Android Memory Management
Android is a Linux based OS with 2.6.x kernel, stripped down to handle most tasks pretty well. It uses native open source C libraries that have powered Linux machines for years. All the basic OS operations like I/O, memory management, and so on, are handled by the native stripped-down Linux kernel.
How to use memory for each application
Android’s process and memory management is a little unusual. Like Java and .NET, Android uses its own run time and virtual machine to manage application memory. Unlike either of these frameworks, the Android run time also manages the process lifetimes. Android ensures application responsiveness by stopping and killing processes as necessary to free resources for higher-priority applications.
Each Android application runs in a separate process within its own Dalvik instance, relinquishing all responsibility for memory and process management to the Android run time, which stops and kills processes as necessary to manage resources.
Dalvik and the Android run time sit on top of a Linux kernel that handles low-level hardware interaction including drivers and memory management, while a set of APIs provides access to all of the under- lying services, features, and hardware.
Dalvik Virtual Machine Dalvik is a register-based virtual machine that’s been optimized to ensure that a device can run multiple instances efficiently. It relies on the Linux kernel for threading and low-level memory management.
The Dalvik Virtual Machine
One of the key elements of Android is the Dalvik virtual machine. Rather than use a traditional Java virtual machine (VM) such as Java ME (Java Mobile Edition), Android uses its own custom VM designed to ensure that multiple instances run efficiently on a single device.
The Dalvik VM uses the device’s underlying Linux kernel to handle low-level functionality including security, threading, and process and memory management.
All Android hardware and system service access is managed using Dalvik as a middle tier. By using a VM to host application execution, developers have an abstraction layer that ensures they never have to worry about a particular hardware implementation.
The Dalvik VM executes Dalvik executable files, a format optimized to ensure minimal memory foot- print. The .dex executables are created by transforming Java language compiled classes using the tools supplied within the SDK.
Understanding Application Priority and Process States
The order in which processes are killed to reclaim resources is determined by the priority of the hosted applications. An application’s priority is equal to its highest-priority component.
Where two applications have the same priority, the process that has been at a lower priority longest will be killed first. Process priority is also affected by interprocess dependencies; if an application has a dependency on a Service or Content Provider supplied by a second application, the secondary application will have at least as high a priority as the application it supports.
All Android applications will remain running and in memory until the system needs its resources for other applications.
It’s important to structure your application correctly to ensure that its priority is appropriate for the work it’s doing. If you don’t, your application could be killed while it’s in the middle of something important.
The following list details each of the application states shown in Figure (see the attached image) explaining how the state is determined by the application components comprising it:
Active Processes Active (foreground) processes are those hosting applications with components currently interacting with the user. These are the processes Android is trying to keep responsive by reclaiming resources. There are generally very few of these processes, and they will be killed only as a last resort.
Active processes include:
* Activities in an “active” state; that is, they are in the foreground and responding to user events. You will explore Activity states in greater detail later in this chapter.
* Activities, Services, or Broadcast Receivers that are currently executing an onReceive event handler.
* Services that are executing an onStart, onCreate, or onDestroy event handler.
Visible Processes Visible, but inactive processes are those hosting “visible” Activities. As the name suggests, visible Activities are visible, but they aren’t in the foreground or responding to user events. This happens when an Activity is only partially obscured (by a non-full-screen or transparent Activity). There are generally very few visible processes, and they’ll only be killed in extreme circumstances to allow active processes to continue.
Started Service Processes Processes hosting Services that have been started. Services support ongoing processing that should continue without a visible interface. Because Services don’t interact directly with the user, they receive a slightly lower priority than visible Activities. They are still considered to be foreground processes and won’t be killed unless resources are needed for active or visible processes.
Background Processes Processes hosting Activities that aren’t visible and that don’t have any Services that have been started are considered background processes. There will generally be a large number of background processes that Android will kill using a last-seen-first-killed pat- tern to obtain resources for foreground processes.
Empty Processes To improve overall system performance, Android often retains applications in memory after they have reached the end of their lifetimes. Android maintains this cache to improve the start-up time of applications when they’re re-launched. These processes are rou- tinely killed as required.
How to use memory efficiently
Android manages opened applications which are running in the background, so officially you shouldn’t care about that. This means that it closes the applications when the system needs more memory. However, most android users are not very satisfied with how it does its things because sometimes it leaves too many processes running which causes sluggishness’ in everyday performance. We can use advanced task killer/task manager and it does its job very well.
Source:
Code:
http://mobworld.wordpress.com/2010/07/05/memory-management-in-android/
Still doesn't answer the question of why the OS is starting apps randomly and without need. For instance, I have Titanium Backup and SGS Tools installed, but can't use them because I am not yet rooted. So why do I keep finding both programs started in the process list? Is the app making the call to start? If so, what can I change to stop it? Whatever Android does to manage memory, it just seems stupid for it to load programs that are hardly used without my asking it to.
Miami_Son said:
Still doesn't answer the question of why the OS is starting apps randomly and without need. For instance, I have Titanium Backup and SGS Tools installed, but can't use them because I am not yet rooted. So why do I keep finding both programs started in the process list? Is the app making the call to start? If so, what can I change to stop it? Whatever Android does to manage memory, it just seems stupid for it to load programs that are hardly used without my asking it to.
Click to expand...
Click to collapse
This is how the systems work in most systems, not just in android.
Take the new cars for instance. Power is generally sent to brakes when in low gears, though u r not actively engaging them. Why? Since u r at low speeds, higher probability of applying brakes. And when u do apply, since there is already some power already being sent, its faster to brake.
On similar lines is this principle of loading apps into memory in android too. It won't load apps to fill up ur memory. Plus the apps loaded into memory in this way don't use any CPU time (this means no battery usage). This speeds up system.
On a side note, if u feel u really do not need an app, and dont' want android loading that app, get "startup auditor" from market. Select the apps u don't want to persist in memory and don't want to auto start. Beware of one thing here: if u make an app as 'do not persist' in memory, and that app is started manually or by any other app, it would be killed giving FC in the app that's using it.
Note: I coined the term 'do not persist'. I do not have the app anymore to check for the exact term.
Edit: In windows, this pre-fetching is done through a service. And one can disable that service, though not recommended. I am not sure if this is done through a service that is "stoppable" in android.
I used Graphite Software's Secure Spaces on a Blackphone 2, and I really liked the way it allowed me to keep work and personal data separate. Visiting their website, I see that support is unfortunately limited to a small group of phones, and includes the installation of a customized ROM. In the xdaforums Nexus 5 and Nexus 5X Development forums, there are Secure Space ROM threads, but I'm just curious if anyone knows if there will be future support with Secure Spaces for the Pixel, or if there is another solution that provides a similar separation capability, for the Pixel. (Unfortunately my employer does not allow rooted phones).
Just received notification from Graphite that support for the Pixel is planned. If anyone knows of any similar "separation" technology that's available please feel free to post to the thread.
Not being familiar with Secure Spaces, and having only briefly scanned what it does, could you not do the same thing on the Pixel by setting up an additional user for the phone? When you set up a new user it's like a whole separate phone for that user, including passphrase, apps, storage, email, settings, everything.
Maybe it's an ignorant suggestion, but it looks like that's what Secure Spaces does.
I think that Secure Spaces offers more separation than what you're describing, (although I admit I've never tried setting up two user accounts on my phone to see what separation is provided). My current and former employer require that any devices that access the corporate network, (in order to get email, calendar schedule, etc.), be installed with MDM, (mobile device management), software that allows the IT department to have complete control over the entire phone's configuration, (most obvious if you try to change the security options), and management. Secure Spaces allows me to have separate workspaces, one that corporate IT can own, and another that can be configured and managed as I want. It also keeps data separate between the workspaces.
jasnn said:
I think that Secure Spaces offers more separation than what you're describing, (although I admit I've never tried setting up two user accounts on my phone to see what separation is provided). My current and former employer require that any devices that access the corporate network, (in order to get email, calendar schedule, etc.), be installed with MDM, (mobile device management), software that allows the IT department to have complete control over the entire phone's configuration, (most obvious if you try to change the security options), and management. Secure Spaces allows me to have separate workspaces, one that corporate IT can own, and another that can be configured and managed as I want. It also keeps data separate between the workspaces.
Click to expand...
Click to collapse
When I create a new user under Nougat, it's as if it's a brand new phone. You only have the base apps that were there when the phone was new, you have to set up Gmail again, Chrome is empty, Photos shows nothing, etc. You can manage security settings, pretty much everything. The only thing I've found that it will not let the secondary user do is open the Messenger application - so the secondary user cannot read or send text messages on the phone - which is of course a good thing.
I also found an article with this blurb about the separation between users:
Under the hood, file-based encryption enables this improved user experience. With this new encryption scheme, the system storage area, as well as each user profile storage area, are all encrypted separately. Unlike with full-disk encryption, where all data was encrypted as a single unit, per-profile-based encryption enables the system to reboot normally into a functional state using just device keys.
Anyway, it's probably all irrelevant now since the product you're used to and happy with is available for the Pixel. That said, if you haven't installed Secure Spaces yet it might be worth taking a look at it. Just two-finger swipe from the top and tap the "user" icon and then "Add user".
Thanks for spending the time to research this issue.
I'm sure that folks over in the two SecureSpaces development threads here, (1., 2.), can speak more authoritatively on what Secure Spaces offers over a stock setup. For me being able to configure the security options for my personal space, separate from my work space, is important, as well as keeping the data separate from each other.
What about Android for Work?
I used to use it with BES12, worked well.
Sent from my Pixel using Tapatalk
Google Software Engineers have made improvements to the operating system over time to the point I believe the necessity and usefulness of these utilities is questionable especially if you are on Android 7 or later. Many people post their experiences with these apps without acknowledging their operating system version which could be significantly different than many other users.
This article "Android Apps You Should Remove Immediately" on Adroid Pit (you can Google it) recommends you get rid of these types of apps.
But there are lots of other articles, forum posts, article comments (mostly older) that swear by these apps.
Maybe out of the dozens of functions in these apps there's one or two useful ones on Android 7 (although my LG G6 already comes with a Smart Cleaner app)
Are the majority of Android 7 users using these apps basically blindly using them because they feel good to use and aren't actually getting the significant benefit they think they are getting? Could many of them, especially the ones that may "try to do too much" actually be hampering your Android 7+ phone more than helping it?
The only app I would recommend is ccleaner
https://play.google.com/store/apps/details?id=com.piriform.ccleaner&hl=en_GB
It does the following
clears all apps caches which could save alot of storage space - especially good if you have apps that store alot of cache files like twitter for loading images faster but since in most cases you only look at the image once you really dont need it cache it to load up quicker
It can also do the following if you ask it to
Deletes downloaded files/apks in one click
Deletes call logs
Deletes empty folders
Deletes browser history, clipboard content
And can also
Check the usage of your CPU
Keep track of your RAM and internal storage space
Check out your battery levels and temperature
Any other app which claims to "optimize" the phone probably does nothing unless it does the same job as ccleaner but in my opinion this is the easiest most trusted app to use
I think I can say ... everyone here knows the native google services app, right? Well, this app performs structural operations on the system, plus functionalities. All this, however, in the background, and sometimes (with or without mobile data). In fact, every operation of this app is performed without such data, but, on the other hand, with the data attached, then [it] may come to consume. Several brands from manufacturers such as Samsung, LG, Sony etc ... allow the user to restrict the use of mobile data in the background of some apps (natives or not, which consume a lot of franchise or not). And these manufacturers allow two types of restrictions in the background. A: general, aiming not to exceed the limit of data used of the franchise, two: specific, whereby the user manually restricts or de-restricts the apps that are or are not consuming data (internet). Now, one thing needs to be said, depending on the version of android, of course, the place where the user can restrict apps from consuming rem background may be different. So to use a standard reference - in my understanding - I will use Samsung as a manufacturer reference, and the Android versions between 4.1 and below 5.0, aiming as I said, on average. It should be noted that in every app (native) can be made such a restriction. Of some native apps (not counting offlines, for entertainment), they depend on all the stability of the operating system, and not only, but they do not use any mobile data, even when connected. Returning to stick with google services, you need to expose two of your own characteristics. [It] does not use any data in the foreground (since it can not be accessed internally, since it has no icon in the application grid), and the second is that [it] uses data in the background (regardless if you are inside the play store "downloading something" and, or if automatic notification update synchronization is disabled).*The problem is that if the user restricts the background data consumption (specific form) of the play store app, for example, if he [user] decides to re-enable such consumption of the app referred to, it will do so without any problems. It is only the user (after accessing it internally, and spending a few kb / s of data browsing "in the store") to go to the mobile data consumption meter on your device and the list with the most consumed internet apps, click on top of the app you want the restriction (in this case, the play store) and choose this option. However, if the same restriction for the google services app happens the opposite. The primary constraint becomes irreversible! At least, that's what I said, I'm not in this forum, maybe someone points out an effective deal. Anyway, let's see why this [reported] is given. Remember the explanation, where he said: just spend a few kb / s, for this consumption to appear in the meter of consumption, and be clicking on top of such app? I was referring to the play store, I made it clear ... or not? Well, since google services does not use anything in the foreground, it will be impossible to make [such an app] appear on the referenced meter. This implies the possibility of reactivating consumption in the background (if restricted), not only referring to google services, but all apps that do not consume anything in the foreground.
The Work Profile on my phone isn't something related to my work. I will always use a separate phone for my Work. Yet, I install Work Profile on all my phones. On top of that, I also use the Multiple Users feature (if available), although I'm the only one using my phones.
The one word answer for why I do it is Privacy.
MULTIPLE USERS
Multiple Users feature of Android allows users to create an isolated environment with its own set of apps, accounts and user files.
An app can be installed only once in a device. If you try to install an app, that is already installed in one profile, in another profile, all that happens is creation of a separate Data folder for that app in the new profile. So while it may appear that the app has been installed again, that's not what is actually happening. This is why an app can be updated from any user profile. This is also why you can't install different versions of the same app in different profiles.
The Work Profile is a special type of Multiple Users feature of Android, with some specific advantages:
1. Apps in the Work Profile run concurrently with apps in the Main Profile (Primary User). In case of Multiple Users, apps are frozen once you login to another user.
2. Since apps in Work Profile are always running along with apps in your Main Profile, you get notifications from Work apps along with those on your Main Profile.
3. You can launch apps in Work Profile without having to leave the Main Profile. This is not the case with apps in other Multiple Users.
HOW TO USE WORK PROFILE (OR OTHER MULTIPLE USERS) FOR PRIVACY
There are a few apps that we use which need access to both internet as well as internal storage. Examples would be downloaders, social media apps, etc.
This is one area of Android that is very privacy invasive. You either give full access to your internal storage or you can't download/ upload files. Hopefully, this is being addressed with Android 14.
It is because of this limitation of Android, that Work Profile can be used to isolate personal files from certain apps, without limiting their functionality.
No app in Work Profile shares data or is connected to apps in the Main Profile. They also do not have access to Contacts, SMS, etc. in the Main Profile. This includes Google Play Services too.
I install Downloaders, social media apps, etc. in the Work Profile and give them all the necessary permissions. While these apps have access to the internal storage, they still cannot access files in my Main Profile like my camera roll, or other files that may contain sensitive data.
This is how you can use Work Profile to increase your own privacy.
Note that Work Profile or Multiple Users do not increase your battery drain or cause lags. On the contrary, they may help conserve some battery and reduce lags because apps in Multiple Users do not run until you login to that User, and Work Profile can be turned OFF when you don't want those apps running.
You can enable Work Profile on most Android phones using this app:
Shelter | F-Droid - Free and Open Source Android App Repository
Isolate and run multiple instances of apps using Work Profiles
f-droid.org
Many OEMs hide this feature in their implementation of Android. This app only enables it and makes it accessible to you.