yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] Philnicolls89:
[MENTION=5417899]DiamondJohn[/MENTION] new version works like a charm thanks :o previous versions I was having trouble with sqlite3, even though I had magisk module installed I was getting constant errors, but everything working fine now. I love the detach feature aswell! Thanks for sharing your amazing app with everyone.

Just out of curiosity, I am going to try your aggressive doze setting, how long does the phone need to be inactive for doze to start working??
[Android Apps and Games] DiamondJohn:
Arggghhh, you should of posted your errors. It's possible they were errors on my side, that could of been fixed by the last update. But you may of even found more that I did not catch in the last update.

As you can see by the graphs, not very long at all. If you have no wake-locks or other issues, from memory, I think it goes to deep-idle around 30s after screen off. At least that is the setting. But the table below it shows muuuuuch shorter times.:confused:

Look at the first image of the post, as soon as it exits normal (ie red) its in deep idle (green)

https://xdaforums.com/showpost.php?p=82095971&postcount=283

And the other user that has applied my doze profile

https://xdaforums.com/showpost.php?p=82078229&postcount=270

and now compare all the blue, after the red in the 3rd image of the following post, where I would guess they are running the default doze profile of their ROM.

https://xdaforums.com/showpost.php?p=82102679&postcount=285

I created my doze profile because my issue at the time was that it was having many many maintenance periods. Also, there are others to choose from. Mine is very aggressive.

Also, a reboot will reset it back to your default, so it should be safe to try. Give it at least 30min with the screen off, and motionless before running a doze graph, to get an idea that it is working.

NB: all care taken, no responsibility.;)
[Android Apps and Games] DiamondJohn:
I just installed an unofficial Android 10 LOS ROM on one of my devices, and it did include its own SQLite. LOS is the basis of a lot of custom ROMs.
[Android Apps and Games] unibombz:
I second this. The dev has done great work!
[Android Apps and Games] Philnicolls89:
I was getting errors that didn't seem to be very common for others, sorry I just assumed user error on my part or my custom rom conflicting with the app. I am not knowledgeable enough to do troubleshooting lol, posting a logcat is about as much as I could do:silly:

I do have a question, I ran a doze history graph this morning to see the behavior overnight and it worked well. However the times are incorrect on the report, when I use the battery graph the times are correct, is there a way to fix this?

Also is there a way to customize the report, e.g. run a doze history graph for the last 1hr, 2hrs etc? Or does the report just run from whenever the phone entered doze until it wakes up no matter how long that is?
[Android Apps and Games] DiamondJohn:
You never know what will turn out to be useful. The failed results; a screenshot and the last error thing I discuss above. ie TeMeFI Configuration>Last TeMeFI Warning and/or Error log

For starters, the Doze graph and the battery history graph are completely independent of each other. The doze graph generally starts from when you last booted, while the battery history graph resets (at least on my device) when you charge it past 90% and disconnect or when you rest the battery history data. They will never easily align and you shouldn't expect such. On a side, I do not know how to reset/restart the doze graph, as I have even seen it continue over a reboot, without a break.

Now, lets look at the doze graph. On my device, it appears correct. In the image below, the clock shows 18:29:## while clicking on the last item on the graph shows it ended at 18:29:35 So that would appear to me to be correct. Can you show me something similar where you think its out?

Also include the doze report: ie Currently Running>Doze>Dumpsys Device Idle History

Now, the battery history graph is actually the one I find suspicious. What I have seen is that if you call it once, it appears to "stall" and not get updated; and hence I included the line item for "Time Not Covered". Firstly, the source data is gained at the beginning of the report generation. So if it takes 2 minutes, you can expect its at least 2 min behind the current time; ie at the end of the report. its not instant, or even anywhere as near as fast as the doze graph.

So in the first image, I clicked on the last item, and it shows that it ended at 18:30:06

So, Looking at the first image, the report does NOT cover the last 00:08:48. So that brings us up to around 18:38:54

The last image tells us the report took 00:02:03 to run, some of which would be the actual attainment of the source data. So that would bring us somewhere between 18:38:54 and 18:40:57

Looking at the second image, my clock shows its at 18:39:## which puts us within the range.

Although you do see this one as being correct, is their any case where you see it being incorrect?
[Android Apps and Games] Philnicolls89:
[MENTION=5417899]DiamondJohn[/MENTION] I'm sorry I don't think I explained my problem properly, as you can see from the attached screenshot, I just ran a doze graph to use for the purposes of this example.

You can see the time on my phone is 19:28 and down the bottom the report says it was generated at 19:25. However the graph covers from 0646 - 0825 (1hr39min). This is very confusing.

Now I ran a battery history graph all is well, and I can see that my phone was fully charged at 2:13am and the report runs until when It was generated at 7:28pm.

Am I doing something wrong?
[Android Apps and Games] DiamondJohn:
No, but, I can only graph what is reported by your device/ROM.

Run the idle history data report (ie the source of the data). If that is wrong, then there is not much I can do.

Currently Running>Doze>Dumpsys Device Idle History

The other thing which can cause misalignment is how your device time is being set. Its possible (I don't totally know how, TimeZone is my guess) that your device is running at a different time (eg GMT or UTC) while displaying local time.

Run

Current State>Date

and compare the value to your status bar clock.

I am actually surprised you think the battery history graph is OK, since its missing 10hrs of the latest data!
[Android Apps and Games] DiamondJohn:
New Build!

New Version v1.0.77

Download: SEE OP!

Notable changes are:

v2 of detach apps from playstore NB: If you are already using it, simply reapply the method. Method 3 is recommended for YouTube, but all 3 have been upgraded

Added touchable hot-spots to the mem info graph

Added Timezone view and setting

corrected the loading of the previous results when displaying the covid pages

Updated Items. within the menu at "TeMeFI Configuration>Latest Updated Menu Items"

New Items. within the menu at "TeMeFI Configuration>Latest Added Menu Items"

It is recommended that you delete ALL your existing favorites and re-create them, as they will run the old code/version.

Enjoy and stay safe.
[Android Apps and Games] DiamondJohn:
Added some doco on the short and long press actions of the buttons on the fly-out toolbar, in the second post

https://xdaforums.com/showpost.php?p=76860050&postcount=2

I will probably expand these out a little with examples in the future, but they are a starting point. At this stage, simply have a go with thoughts to what I tried to explain them as being, I cant't think of any damage you can do by "playing" with them to see / understand their effects,
[Android Apps and Games] patrickdrd:
trying to detach Google maps from play store generates error

Errors/Warnings:
/data/user/0/diamondjohndroid.utility.temefi/cache/temefi_runner.sh[51]: awk: not found
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
head: not integer: c
/data/user/0/diamondjohndroid.utility.temefi/cache/temefi_runner.sh[435]: 3N: bad number '3N'
/data/user/0/diamondjohndroid.utility.temefi/cache/temefi_runner.sh[437]: 3N: bad number '3N'
[Android Apps and Games] DiamondJohn:
You have two issues here, and both appear to be short-comings in your ROM's implementation of Toybox.

First, the "3N" issue has been discussed before.This is most likely due to the fact that the Toybox implementation of "date" does not support milliseconds; which I use heavily in returning the timing of how long a script takes to run.

Run the following in a shell window, and post your results (for all the commands below):

date --help;

and

date +"%Y-%m-%d %H:%M:%S.%3N"

then try the following

which awk;

and...

read up rest </proc/uptime;
echo $up;

and ...

ls -l /system/bin;

If you don't have awk, THAT is a really big hole in your toybox / ROM's shell implementation. What ROM and Android version are you running?

Do you have busybox installed?
[Android Apps and Games] patrickdrd:
nevermind the first error, I've fixed it by installing busybox,

thanks, great job!
[Android Apps and Games] DiamondJohn:
I am not surprised that installing busybox fixed your missing awk. NB: for others, busybox is NOT a dependency, unless your ROM does not support expected shell commands such as awk.

However, If I were you, i would still run and test the two "date" checks; as well as the additional "which" below.

which date;

date --help;

date +"%Y-%m-%d %H:%M:%S.%3N";

Wherever you see timing details, it depends on the "date" command supporting milliseconds.
[Android Apps and Games] patrickdrd:
well, this command:

date +"%Y-%m-%d %H:%M:%S.%3N";

returns

2020-04-05 09:52:32.3N
[Android Apps and Games] DiamondJohn:
it should return something like

2020-04-05 09:52:32.[B][COLOR="Red"]321[/COLOR][/B]

OT for TeMeFI on how, but that could be fixed by mapping the "date" command to busybox.

busybox date +"%Y-%m-%d %H:%M:%S.%3N";

would work, but every ROM i have tried (including standard LOS), the toybox / ROM "date" command already supports milliseconds.
[Android Apps and Games] patrickdrd:
yeah, the command

busybox date +"%Y-%m-%d %H:%M:%S.%3N";

works fine
[Android Apps and Games] folusmile:
No adb for non rooted devices?
[Android Apps and Games] kveikur:
Can you elaborate on what the different methods to detach apps from the Play Store do?

I'm on v1.0.77 and I used method 3 to deatch YouTube (as suggested in a previous post).

I noticed that sometimes updates for YouTube will still appear in the Play Store, after closing and re-opening the Play Store app the updates dissappear. Is this to be expected?
[Android Apps and Games] iPAQ 6515a User:
Use xposed and SudoHide module
[Android Apps and Games] DiamondJohn:
It does not use adb, so the question is irrelevant. It uses the shell.
[Android Apps and Games] DiamondJohn:
I could, but I could also re-write War and Peace :p

It does a LOT, and as such would be a big chunk of time I could better spend on coding. Don't forget, it's not a paid app.

No, that is definitely NOT the expected behavior.

Re-run the detach Method 3 against YouTube, and save and post your results here. You have given me nothing to work with to help understand exactly what is going on with your specific device.

Also, what ROM and android version are you running?

Not everyone has the option or some will choose explicitly not to run Xposed. And hence, I built this technique for those. ie me. ;)
[Android Apps and Games] DiamondJohn:
That's strange, as I am running two spare devices on Android 10 (both LOS based, LOS 17.1 and crDroid), and neither of them have ever shown any blocked apps. As well as my daily running Oreo.

Thanks:good: At this stage, I have been directing people who explicitly ask for a donation link, to Oxfam; but whatever you feel is your better option is good. I don't drink coffee or beer, and I have more than enough to eat.

Although it should not make a difference to the effects/results, the small visual difference I highlighted in red below, does not make any sense, and is technically speaking, a small bug in your SQLite implementation. The fact that sudohode is also having the same issue (not SQLite, but the temporary display of YouTube in playstore), would imply SQLite has done the important part (as usually its hidden).

For the next release, I am also working on adding a method that explicitly checks and reports on each change I have made, is still present / unmodified.

For reference, the line in red above, on my device (also android 10, and on Oreo), is displayed as:

[COLOR="green"]source update_date create_date doc_id method status version title [/COLOR]

And the same goes in my daily, running Oreo

Out of interest, what results do you get when running

Database>SQLite Location and Version

I get

/system/bin/sqlite3

with version:

3.22.0

Maybe the playstore version would give a hint. But then there is the whole gsm components etc etc etc

We are running the same android and would expect the playstore to keep itself update. I will note, in my first attempts (and the code is still there) I explicitly exclude a core playstore component from being hidden from updates. I thought that was way too dangerous to leave :rolleyes: ie com.google.android.gms
[Android Apps and Games] kveikur:
I forgot to mention that this (seeing updates for detached apps) happens VERY rarely. I only notice it because I frequently check the Play Store.

I think this actually affects more (if not most) people, they just don't notice it.

This is what I get:

Using SQLite3 located at:
/data/user/0/diamondjohndroid.utility.temefi/cache/sqlite3

File details:
-rwxrwxr-x 1 u0_a249 u0_a249_cache 3101420 2020-04-08 13:05 /data/user/0/diamondjohndroid.utility.temefi/cache/sqlite3

File MD5:
fac9e0e30f4ca189c9a6bb2919150808

Version:
3.14.1 2016-08-11 18:53:32 a12d8059770df4bca59e321c266410344242bf7b
[Android Apps and Games] MoL_82:
On my device YouTube updates despite using detach method 3.
[Android Apps and Games] DiamondJohn:
[sarcasm]Thanks for all the logs and explanation of your device details and how it operates if at all.[/sarcasm]:rolleyes:
[Android Apps and Games] MoL_82:
Thank you for your sarcasm. And have fun with the logs of the other guy. I am so sorry I am not such a great dev.
[Android Apps and Games] AnonVendetta:
[MENTION=5417899]DiamondJohn[/MENTION]: Awesome app! I found it by accident while browsing the ForceDoze thread. Honestly, it is too much info, but useful. I'm not even sure of what many options (their names aren't overly descriptive), so I won't run them. Do any options run dangerous actions that might do harm? I consider myself an intermediately skilled Android user, but there is much that is beyond my understanding.
[Android Apps and Games] DiamondJohn:
1st point, you spelled TeMeFI incorrectly :D and without the casing :crying:

What do you mean by its "Visible in TeMeFI"? the whole idea of this technique is to hide it from the Google PlayStore, so it would most definitely still be visible in other apps, such as TeMeFI and obviously your launcher .:confused:

As for visible in the playstore, are you specifically talking about the "My Apps & games" area? or somewhere else?

If it is the "My Apps & games" page, if you kill then playstore, is it still visible when you immediately go back?
[Android Apps and Games] DiamondJohn:
There are over 580 actions you could perform. Are you asking me to go through each of them and advise you how dangerous each method is?:eek: but, yes, there are some "dangerous" actions. the more the danger, the greater the power. And with power comes responsibility...

I would suggest the following to learn more.

It is possible to get the source code of nearly every action. If you long press the menu item, a message box pops up, which has one option labeled "Preview". If you select that option, the code that will run will be displayed as the results. From there, you can then use the code to check through your favourite web search engine to get help on exactly what the shell command does.

Actually, the long press message box in a few cases, has a tiny bit more info than the shorter menu label. But don't expect too much, I had to type them in manually, and I remind you, there is over 580 of them:eek:
[Android Apps and Games] AnonVendetta:
[MENTION=5417899]DiamondJohn[/MENTION]: No, I don't recall asking you to do that. If that is what you want to infer from my post, fine. I *ONLY* asked if *ANY* of the functions perform potentially dangerous actions. Since you wrote this app, I would fully expect you to understand every iota of what is possible.

I only regard an action as dangerous if it uses "su" anywhere in the function's command.

Anyway, thanks for the info. Sorry if I sound like a sarcastic ****, that is just my "style"/personality.
[Android Apps and Games] DiamondJohn:
A couple of hints for those having issues with detach.

1. Do NOT use other detach methods at the same time ie in combination with TeMeFI's detach.

2. Do NOT go to the YouTube specific page within the playstore, Google takes that opportunity to fix (ie break) some components of my detach methods.

3. If you are coming from another detach method (ie you were previously using a different detach method), then, you will need to undo their actions. The best way I can think of doing this is to manually go into the PlayStore and run the "Update" (to fix the other detach methods actions), then uninstall the update, then run my detach method.

Actually, the more I think of it, one of my steps may actually rely on a single historical update to have happened. Maybe that's why I get no updates and other users are having issues.

In the next release, I am building a checker that reports on the state of my detach steps.
[Android Apps and Games] DiamondJohn:
Yes there are some potentially dangerous actions. I answered that in my response, and it is also in previous posts. See the big red text on this post: https://xdaforums.com/showpost.php?p=77468770&postcount=7

Every IOTA, really?

Even though I wrote this app, I will remind you again, it has over 580 possible actions; some of which are over 1000 lines of code. Do you really expect me to intimately know and understand every single one of those 580 actions off the top of my head? (read the above response) and not to forget, this is not my only piece of development, so the 580 is only a small part of my development, let alone my life in total. In most cases, when I see a menu item I have a memory of what it does (I knew when I added the item, but even then, I probably did not fully comprehend every single actions totality extent of effects), but definitely not off the top of my head for every single one of the 580+ :rolleyes: There is also9 the preview function which lets you see the code to judge for yourself if it is dangerous, I have the app unrestricted for power users instead of crippled to protect those who don't fully understand the actions they are taking. Do not forget, this thread is under " Android Development and Hacking".

Just because it uses SU does not mean it is "dangerous". For example, the Doze graph uses SU, but it is simply a report. There are many examples like this case. SU simply lets me do non-dangerous things that would otherwise be either restricted (ie I would need to write a lot more code to do similar) or simply impossible; even though it isn't "dangerous".

A lot of menu items may even be able to be run without SU, but testing that would be tedious and time consuming, and may differ on different devices. I have already spent too many hours on this app:mad:

If you wish to use the SU as your deciding factor, you can turn off ROOT (ie the use of SU) by setting that in the config

TeMeFI Configuration>Default Startup Config>Set ROOT explicitly un-available on Start up

but that simply limits your menu options; greatly.
[Android Apps and Games] DiamondJohn:
New Build!

New Version v1.0.78

Download: SEE OP!

Notable changes are:

v3 of detach apps from playstore

add a check of current detachment state by a selected app (Very useful to see if an detachment technique still allow an update. Run it directly after detaching an app, save off the results of both the detachment and this check screen, then run it again directly after an update has snuck through)

added another TeMeFI controlled Magisk module allowing the promotion of Busybox methods of internal ROM/Toybox methods (date is the one that shows the most usability in conjunction with TeMeFI) To check if you need it for date, run "Current State>Date" to see if milliseconds are displayed

RE-RUN DETACHMENT OF ALL YOUR CURRENTLY DETACHED APPS to upgrade to the newest techniques used for detachment.

New Items. within the menu at "TeMeFI Configuration>Latest Added Menu Items"

Updated Items. within the menu at "TeMeFI Configuration>Latest Updated Menu Items"

It is recommended that you delete ALL you existing favorites and re-create them, as they will run the old code/version.

Enjoy and stay safe.
[Android Apps and Games] DiamondJohn:
How to filter a long dynamic menu

The following will possible help in using the detach when you have a lot of apps. But it can be used all over the place where long lists are built and presented to the user. Its basically a way to filter a loooong menu list down, instead of scrolling and looking for the item. Its especially useful when the list could have either the unique internal code or the description. For example with an app list it could have "com.waze" or "Waze Navigation" which would be in very different locations in the menu when sorted; as "c" is much earlier than "W". So, simply filter by "waze":highfive:

The list as returned by TeMeFI

View attachment 4993033

LONG click on the X to filter the list

View attachment 4993035

Enter your filter. NB: not case sensitive. and it looks anywhere within the menu item, ie not just what it starts with, it could be the ending characters

View attachment 4993037

The filtered list returned by TeMeFI

View attachment 4993039

To return the full list, LONG click on the "home" button

View attachment 4993041

the above will return the full list, which is what you started with, and thus gives you a chance to try another search text if the last attemopt did not return what you were looking for,

View attachment 4993043

It can also be used iteratively. That is, you can filter the filtered list.;)

HTH
[Android Apps and Games] therealashish:
Hi, can somebody guide on the following error as in the attached screenshot?
[Android Apps and Games] DiamondJohn:
There are hundreds of different menu items, of which, you have not told us what you clicked on!

However, what it looks like, is you are trying to get some info or report about apps that you have detached, before you have actually detached any apps. Not logical.

As stated earlier in this thread, the toast is simply a notification that tells you further details that can be found in the menu at:

TeMeFI Configuration>Last TeMeFI Warnings and/or Error log
[Android Apps and Games] DiamondJohn:
New Build!

New Version v1.0.79

Download: SEE OP!

Noteable changes are:

Fixed a "Chicken or the egg" issue with detaching apps from the playstore.

Updated Items. within the menu at "TeMeFI Configuration>Latest Updated Menu Items"

New Items. within the menu at "TeMeFI Configuration>Latest Added Menu Items"

Enjoy and stay safe.
[Android Apps and Games] Jinzuken:
Damn I got my safetynet broke after detaching youtube. Might be the issue or its just me? Already deleted EdXposed framework modules and apps

Xiaomi mi a1 running on evolution rom android 10
[Android Apps and Games] Philnicolls89:
Not related to detaching utube, Google must have changed something server side again. We will just need to wait and see what they have done and if it can be fixed.