yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] DiamondJohn:
yes. Been busy with building ROMs from source, and a LOT of things outside of XDA.

Personally, I am running the next version, with a couple of tiiiiiny bugs.
[Android Apps and Games] DiamondJohn:
I dont wish to shock anyone, so I'll give a heads up. The dancing banana is no more.... 😭
[Android Apps and Games] HippoMan:
OMG!

Soon, we'll all be singing ...

"Oh yes, we have no bananas.

We have no bananas, today."

It's a sad day in TeMeFi land ... but we'll survive.

Of course, if you replace the dancing banana with a dancing hippo, for me that will more than make up for the loss.
[Android Apps and Games] the bolt of thunder:
hey thanks for your app I love it. I got one question. I'm trying to detach reddit from the play store but I don't find the package name there.
[Android Apps and Games] DiamondJohn:
To detach an app, it must first be attached (ie a fully working state). Search the thread. I have documented how to fix this more than once.
[Android Apps and Games] DiamondJohn:
FYI There is a new release of SQLite

https://xdaforums.com/t/new-sqlite3-binary-v3-43-0-for-all-devices.4273049/post-88925263
[Android Apps and Games] DiamondJohn:
New SQLite Binary available at

New SQLite3 Binary v3.45.2 for ALL devices

I built the latest stable SQLite3 binary for ARM devices. I built it as I have an app that I requires it, and distribute it with my app TeMeFI , as a lot of people asked to not have to install it as a separate step. TeMeFI app does a LOOOOOT of...

xdaforums.com
[Android Apps and Games] DiamondJohn:
Although I am not a fan of vaporware 👻, this is a heads up that I have a release candidate for the next iteration. I will be testing it for the next couple of days (or less since I have been running most of the features from about a week after the last release. Would that be >1y?)

The huge change is that TeMeFI will now save by default, a history of the methods you have run AND the output you get. The size of the history is controlled by user parameter settings. One of the reasons I have been hesitating at finishing this build is that there is a LOT to explain, especially how to take advantage of it. For example, I use it to search all my previous output for a specific string. One example is to search for say an app, and it will pull up a history of Battery History Stats, Wakelock reports, installation history etc etc etc. Another thing that is handy, if I get a crash when i'm out and about doing something else, I can run a logcat straight after, but then view / deal with it a few days later, when I have the time or wish to report it somewhere.

So there is not much for new methods (but a LOT of minor fixes/improvements), but it amps up the usefulness of the results.

To give you an idea, below are the new menu items. And remember, the *4 would mean there are 4 parameter choices within the method that change how that menu item operates or possibly does something completely different

► Run History
Statistics
››► List *3
››► Search Results *2
››► View A Specific Single Run *2
››► View Previous Runs By Re-Runs *3
››► (Un)Lock / Make Favourite / Clear Results / Delete the run *4
► Favourites
››► Add Separator *1
››► Rename Favourite *2
››► Modify Favourite Order *2
► Upload a user selected file *3
▪► Thin results To Latest/Detailed Results *4
-------------------------------------------------------------------------------------
››► Compress Results *3
► Administration
››► Behaviour (Rows, Results, Size, Total Size) *4
Reset to Default Behaviour
-------------------------------------------------------------------------------------
Fix Favourites
Manually Purge Records based on Config
Merge Independent runs into a matching Favourite
▪► Clear ALL Locks (not favourtites) *1
▪► Purge Older Duplicate Item Results *1
▪► Clear dB to favourites definitions only *1
VACUUM History Database using INTO
-------------------------------------------------------------------------------------
Turn On Log of TeMeFI Config
▪► Reset the History Database *1
Set ALL Config to MAX

So I will be best to explain all the above on release. You will also see that I have now merged (& improved) Favourites into Run History. So if you use Favourites, it would be best if you save off their definitions, to recreate them as I dont convert (or even display) the old favourites to the new better Run History format
[Android Apps and Games] HippoMan:
I just want to let you know of a very good use that I put TeMeFI to. I wanted to come up with two apps: one to back up my settings and one to restore them. Using TeMeFI in conjunction with Tasker, I was able to accomplish this.

The following message in the Tasker discussion forum explains how I did this:

https://groups.google.com/g/tasker/c/IiyME79ZU08/m/LprXwgbCAgAJ

I always appreciate your work on TeMeFI.
[Android Apps and Games] DiamondJohn:
I got notifications on some posts you made here at XDA. And thats exactly what I used/developed it for as back then, I was building a LOT of ROMs for more than one device, and the different ROMs sheared many settings, so to get the setup auto done, I used the scripting to get it done quickly. Or even better after a clean flash. And hence, it sounds like it was well suited to what you wanted to get done.
[Android Apps and Games] DiamondJohn:
added a few more items that got bundled in the last release, at the end of the post. https://xdaforums.com/t/app-tool-temefi-comprehensive-system-administration.3806260/post-89058319

How is the history working for people?
[Android Apps and Games] HippoMan:
Yes, and since Tasker offers a way for its tasks to be exported as actual apps, I was able to create real, live, clickable apps on my device to do the settings backup and restore.

Anyway, even though I already knew what I needed to do in order to reformat the "settings list" output into a bunch of "settings ... put" commands, the fact that you already wrote a script for that formatting and made it easy to copy the script from TeMeFI caused this job go a lot faster for me.

I know that this is one of the goals of TeMeFI, and thank you!
[Android Apps and Games] HankMcCoyX:
Hello,I just installed this on my new pixel 8 pro but when I try to list the packages to detect I get a toast that says cache in the directory path.

Any idea how to get around this error?

Thanks!

Edit: Figured out I had to install the sqlite module
[Android Apps and Games] DiamondJohn:
Out of interest, did you use TeMeFI to install the SQLite module?

Did you download the latest SQLite from my other thread? NB: There is a new release I have yet to build.

And as far as reporting/getting help with issues / errors, you should save off the error (not a screen shot) / output and also cli8ck the bomb icon and save that off. Long press the bomb to clear the error. Your description of the error was useless.
[Android Apps and Games] HankMcCoyX:
I didn't realize how to find the log of the error until later. As for sqlite I sort of blundered into downloading the file from the other thread and turning it into a module using temefi. Not sure if there was a way to do it straight from temefi.

The error was mentioning a 32 bit problem and i somehow figured out the app needed a 64 bit sqlite since the tensor 3 does not run 32 bit apps at all.
[Android Apps and Games] DiamondJohn:
I thought the bomb was a pretty "in your face" thing to at least raise a question.

Would it be this thread?

New SQLite3 Binary v3.45.2 for ALL devices

I built the latest stable SQLite3 binary for ARM devices. I built it as I have an app that I requires it, and distribute it with my app TeMeFI , as a lot of people asked to not have to install it as a separate step. TeMeFI app does a LOOOOOT of...

xdaforums.com

I made methods in TeMeFI to be able to use the zip from that thread (also mine) and possibly most other downloaded zips. As well as a randomly downloaded executable. It creates the Magisk module for you, using your selected binary.

I forgot about that change / restriction on newer devices. Hence, I release a 32b version with TeMeFI. At the time, it basically covered all but x86 devices.
[Android Apps and Games] HankMcCoyX:
It was indeed that thread.
[Android Apps and Games] DiamondJohn:
New SQLite binary available

New SQLite3 Binary v3.45.2 for ALL devices

I built the latest stable SQLite3 binary for ARM devices. I built it as I have an app that I requires it, and distribute it with my app TeMeFI , as a lot of people asked to not have to install it as a separate step. TeMeFI app does a LOOOOOT of...

xdaforums.com
[Android Apps and Games] DiamondJohn:
I also have a new release in the waiting with a better Magisk Module creation for SQLite. The previous/existing one doesn't seem to work on my A14, I don't see why :mad:

Now its just the rigmarole of putting up a new release.
[Android Apps and Games] Zaxx32:
I have faith in you brother...😁
[Android Apps and Games] HippoMan:
There have been a few reports of other software not working under A14, either, and I think it's due to the fact that A14 is now fairly strict about enforcing 64-bit.

Some people have had to locate alternate versions of even traditional, standard utililities such as Terminal Emulator, due to the fact that a number of these current apps and utilities do not run under 64-bit environments.

This might be what's going on in your case, as well.
[Android Apps and Games] Zaxx32:
Not sure if this applies for you, but...

Quinny899 in his Classic Power Menu thread...

'A future update will need to start the activity as root it seems, Android 14 has blocked an absolute ton of background start scenarios, including some which are going to cause some problems I think.'

He posted a CMD line workaround...

ofc, ur prolly well aware by now...
[Android Apps and Games] HippoMan:
The Googlefrinchians continue to "improve" (ha ha!) Android.
[Android Apps and Games] DiamondJohn:
Ahhh.. No faith required, i've fixed it,.

Its not my app, it seems Magisk isn't acting as expected. Maybe its just my phone. IDK but the system worked and is the same technique ReVanced use to install their modified YouTube.

Huh? that seems related to Xposed, which TeMeFi's SQL update is not, its a Magisk module.
[Android Apps and Games] HippoMan:
Oh, I see. Well, I'm glad that you were able to correct the problem!
[Android Apps and Games] DiamondJohn:
To be honest, I was taking a "short-cut" by creating the module directly, where the recommended (well...maybe prescribed) method is to place it in an "to be installed state" and let Magisk install it on the next reboot. I just cut the middle man.
[Android Apps and Games] HippoMan:
Oh, for any of us who might want to install custom Magisk modules, it's good to know that such an installation shortcut might not work. Thank you!
[Android Apps and Games] DiamondJohn:
sure, that was my goal, to show you how NOT to do it.🤬 Funnily enough, I build the module into my own temp and then copy the files across to modules. I was thinking of doing it into the magisk "staging", but when It worked, I moved onto the next TeMeFI item.

The new technique I think is actually the way systemless changes were done before Magisk was a gleam in the creators eye. I previously use to use it in boot scripts to map files (and whole paths) into different/multiple locations, but in the past I only had to do it all on the data partition. Never thought of using it to change the system, as back then, it was all RW for root. But its the way ReVanced now inject their youtube, and I could test simply running a single line, without a reboot to see if it worked.
[Android Apps and Games] DiamondJohn:
I hust saw earlier today, that the "Systemless Host" option within Magisk itself, also does a direct create to the module folder, and does not use the staging system. i.e. Magisk internals use the same method I did. AND also use for my promote busybox method, which I used today, and that works perfectly.
[Android Apps and Games] Hand76:
Hey guys first time using.

Something seemingly happened overnight where several sideloaded apps that the signature was changed on reappeared back on the Google Play Store under Update All.

The updates don't work since the sig doesn't match but I tried using this app to detach one of the apps, and even after a restart it's still showing up.

This some new bull**** on Google's side?
[Android Apps and Games] HippoMan:
I'm looking for a way to accomplish the following via a shell script running on the Android device:

Given an app name (such as "Gmail", "Chrome", etc.), return the app's package name (such as "com.google.android.gm", "com.android.chrome", etc.).

I know that there are apps which can return this data, but I'm looking for a way to perform this package-name query on the command line with the result going to stdout.

I have looked through TeMeFI, because I figured that it's a very good place to find code to perform this task. However, I couldn't find anything which provides the info that I'm looking for.

Am I overlooking something in TeMeFI which I can use to obtain this information?

PS: I'm running Android 13.
[Android Apps and Games] DiamondJohn:
Does the AAPT methods do what you are looking for? Thats the "Android Asset Package Tool"
[Android Apps and Games] DiamondJohn:
WAAAAAY too little details to understand what your problem is.

Are your google auto updates failing? or are your detachments not working? You seem to imply both.
[Android Apps and Games] HippoMan:
Sadly, my A13 OS doesn't have AAPT installed. I think that Google discontinued that utility in latest Android releases.
[Android Apps and Games] DiamondJohn:
Have you forgotten where you are? ITS IN TeMeFI !!!

Thats why I mentioned it!
[Android Apps and Games] HippoMan:
OMG! I didn't see it there, but I'll check again in a little while.
[Android Apps and Games] HippoMan:
OK! That's exactly what I've been looking for.

I will take the script and tweak it into my own utility that will accept one app name on the command line and print its package name to stdout.

One small issue that I noticed in the script ...

You have the following in one of your commands:

2>/dev/nul

Shouldn't that be /dev/null (two lower-case L's at the end)?

Or is there a special /dev/nul device that's been created?

Anyway, thank you. I was optimistically hoping that TeMeFI would offer what I'm looking for, and my hopes have indeed been realized!
[Android Apps and Games] Hand76:
About a year ago I changed the signature of several apps so that they stopped showing under "Update All"

Today out of nowhere they all came back. Very weird.

So I downloaded TeMiFi and after following the instructions to detach the apps from the market place nothing worked. Did a reset and tried clearing Google Play cache but nothing.

I'm on a rooted Pixel 6 Pro (Android 12)
[Android Apps and Games] Hand76:
I followed these instructions:

Application info / manage -> Detach package from playstore -> Detach: select package... -> com.google.android.youtube -> 3 - Invalidate the data... -> Yes

The two apps show up under the status report. But they also still appear on Google Play under update all.

Am I missing something?
[Android Apps and Games] DiamondJohn:
No, YOU ARE CORRECT! I remember in the early stages I was commonly mistyping with a single "L" in null, and it "appeared" to work (so I incorrectly assumed I was correct), but I then later found that the output actually created a file in /dev/ called "nul". ooops....

I will search through all my scripts and correct it in the next release after this release, so I don't hold anything up with more testing. Now for the current release (Fixing the SQL Magisk module method which is important for TeMeFI on A13, or at least my device), I simply have the tedious manual labor of uploading, MD5, release text, source control etc etc etc

Feelings of hope (False or warranted), are a beautiful thing ;)

Also, AAPT is well documented on the web, so you will find it has MANY features I haven't used, that you mash wish to take advantage of. From memory, it's a big one, worth a look. I think I attribute in the output to the compiler on GutHub, so that may have some doco there.
[Android Apps and Games] DiamondJohn:
Run the report (a couple of items above the detach), save the output (NOT A SCREENSAHOT!) and attach the results, or send them in a PM if there is anything private. Such as a porn app...

You can also run a check of each detachment.
[Android Apps and Games] HippoMan:
In reading the AAPT docs and looking through your code, it seems like even with this utility, the only way to do what I want involves some rather inefficient code.

What I want is to accept an app name (such as "Gmail", "Chrome", or whatever), and return its package name.

Unless I'm missing something, it appears that I'd have to do something like this:

(1) run this:

cmd package list packages -f

... and using awk, cut, etc., get the pathname of the APK file from each package: line of output. I'll call that ${apkpath}.

Also, the package name is at the end of each package: line following the string ==/base.apk=

I'll call that ${apppackage}.

(2) feed each ${apkpath} to AAPT as follows:

AAPT d badging ${apkpath}

... and from that command's output, look for a line which defines an item name called application-label

The value of that item is the name of the app. I'll call that ${appname}

(3) if ${appname} matches the app name I'm interested in (for example, "Gmail", "Chrome", etc.), then its package name will be ${apppackage}, whose value I saved above. Then, break out of the loops and echo ${apppackage} to stdout

... or at least something rather close to this procedure.

Is this the only way to get the package name of any given app, given its app name? If so, it's inefficient: order N^2 because of two nested loops. The inner loop consists of multiple calls to AAPT, while the outer loop requires searching through all the APK pathnames on the system.

If this is the only way that I can get the information I'm looking for without writing any java code, then so be it. But perhaps is there a more direct and efficient way to get an app's package name via a shell script, given the app's name itself?
[Android Apps and Games] HippoMan:
Hmm ... perhaps I can write a high-level script which traverses through all the APK paths as described above and then stores appname=>apppackage mappings into an SQLITE table.

I could see to it that this higher-level script gets run every time apps are installed, updated, and deleted.

Then, all I'd have to do is run a short, lower-level script to invoke a single ...

SELECT app_package FROM <the_table> WHERE app_name = '<the_name>';

... command, whenever I want a named app's package name.

Of course, I'd probably have to remember to manually run the high-level script whenever app installs, updates, or deletes are run ... unless there is a way to automatically detect whenever these installs, updates, and deletes are performed.

The Tasker program has a way to automatedly monitor the system logs and then trigger actions when specified log entries are matched, and perhaps I could use this functionality to detect whenever app inserts, updates, and deletes are performed. If so, then I could indeed trigger the running of the higher-level script whenever such app changes are made.

Or perhaps I could see to it that a notification gets triggered whenever apps are inserted, updated, or deleted. Then, I could use the AutoNotification utility in conjunction with Tasker to detect the notification and then trigger the higher-level script.

I will investigate these possibilities.
[Android Apps and Games] DiamondJohn:
You dont need to traverse. Thats what GREP does for you.

As for using SQL, yes you can, HOWEVER, google are rubbish (as in their playstore local details), and if you look down the list of apps in the detach, I pull up the name to code and many are missing and some are even just plainly wrong! thats not me, thats a google playstore bug.

But long story short, thats for you to debug. But remember, your in scripting. To get straight to it, you may have to make your own Java or even C code.
[Android Apps and Games] Hand76:
I'm so stuck here. I still can't figure out any way to detach an app from the store. Should I be looking into a magisk module instead?
[Android Apps and Games] HippoMan:
The higher-level traversal is still done by cmd package list packages -f . And AAPT would still have to be run on each APK that comes back from that query in order to find the matching application-label. That's an order N traversal.

The grep is on the search for the application-label field and its value in the AAPT output. So, there's still the high-level cmd package traversal and the lower-level set of repeated AAPT calls, each of whose output data needs to be grepped through. And this grepping is another order N traversal.

Anyway, your own AAPT code takes a while to run. Mine would require a similar amount of time to run, simply to find the one app_name=>app_package mapping that I'm searching for.

It's sad to know that Google's application-label values are sometimes rubbish.

Well, in the short term, I'll do my SQL thing, and in the longer term, I'll see if I can figure out how to use a C or Java utility to get to the info more directly.

Thank you for everything!
[Android Apps and Games] DiamondJohn:
Noooo, no, no.... You cannot compare the times of my script IN THE APP. In the app I have a LOT of preparation in creating the script on the fly, and then generating formatted output, for every line, and then you have to wait on a WebView to render what I have generated. and in short, my script is say 100 lines long, you can get your output in a single line and dont have to prepare like I do in my app which could have the user select from 000's of possibilities OR have to display in a GUI. A totally different ball game.
[Android Apps and Games] DiamondJohn:
"Magisk" is not Magical.
[Android Apps and Games] Hand76:
I tried to start a convo with you. Did you have a chance to take a look at the report?
[Android Apps and Games] HippoMan:
Oh, I see. Thank you for explaining!
[Android Apps and Games] Hand76:
So after two days is there really not one person here who can help me detach an app?

After googling I only found 3 solutions. This app was supposed to be one of them. Does it work or nah? Am I wasting my time?

DiamondJohn you asked for my report and ignored me. I don't get it.. What an unhelpful group
[Android Apps and Games] DiamondJohn:
Did YOU take the time to read ALL the info I have already posted in this thread? Your answer is already here, with possibly a little critical thinking. And before you say "the thread is soooo long", remember, a lot of the posts are by me, and I have already read every post, AND also spent the time programming testing and releasing and helping others, so asking you to read the thread is not a relatively big ask, especially since you can search. Remember, its YOUR issue and I think I can see where you have possibly failed.

If XDA has got the times correct, your a little demanding with "are we there yet, are we there yet" for a FREE app

AND your in a different time zone. I was asleep most of the time you were "waiting" for ME to solve YOUR problem. I am aloud to sleep aren't i?

I do not ask anything from you, or gain anything from you using the app. And as I said, the answer is already here.

I advise you read the thread and use your thinking. I've got my own issues to deal with, without your pushy additions.

As I have said MANY times before. This app is not for the faint hearted or those expecting me to spoon feed them. I built it for me and simply share in case others would find it useful. I think thats in the first couple of posts, which reading is a rule of XDA.
[Android Apps and Games] Hand76:
Come on John, all the time you just spent writing that you could have just helped.

I'll quit my job and start reading through this entire thread tomorrow lol 😉

You know you did ask me to send you the report. I did as told. And..... No response. You don't owe me anything.. But people here that are contributing are usually doing so because they enjoy helping others.

Set up a donate and I'll contribute back