yashsingh1/xdaforums huggingface dataset:
[Xposed Framework Modules] RobbieTechie:
You're welcome, but also please note I am not the original author of this mod. That credit goes to ElJaviLuki, with many great additions and improvements by TebbeUbben.

I know that people don't bother to read, nor search through these chats so we get the same questions repeatedly. People really should read more!!! This has to do with the feature granting portion of code in the mod, it's not that it disables it, but does not enable it by default. I did look though this a bit more yesterday and I believe I have found some more of the issue.

There is a companion class inside the Feature enum that needs to be handled

// Hook the method that checks if the user is allowed to send videos
XposedHelpers.findMethod(Companion.class, "isVideoChatGranted").hook(new XC_MethodHook() {
@Override
protected void beforeHookedMethod(MethodHookParam param) {
// Always allow the user to send videos
param.setResult(true);
}

There is also a section in the ChatIndividualFragment tied to this, that if certain conditions are not met, the section that allows a user to send videos instead of only live chatting does not show up in that menu

@Override // kotlin.jvm.functions.Function0
/* renamed from: b */
public final Job invoke() {
if (Timber.treeCount() > 0) {
Timber.d(null, "menu_video_call withContext fun", new Object[0]);
}
com.grindrapp.android.analytics.p pVar = com.grindrapp.android.analytics.p.b;
pVar.v0();
if (!r0.b.j()) {
FragmentActivity activity = ChatIndividualFragment.this.getActivity();
if (activity != null) {
com.grindrapp.android.extensions.h.R(activity, 0, a.h, 1, null);
}
com.grindrapp.android.analytics.p.O0(pVar, "no_network", null, 2, null);
}
if (!Feature.Subscriber.isGranted() && !Feature.Companion.isVideoChatGranted()) {
BuildersKt__Builders_commonKt.launch$default(LifecycleOwnerKt.getLifecycleScope(ChatIndividualFragment.this), null, null, new b(ChatIndividualFragment.this, null), 3, null);
}
if (e0.a.c()) {
ChatIndividualFragment.this.t3(a1.video_call_failed_already_exist_title, a1.video_call_failed_already_exist_content);
com.grindrapp.android.analytics.p.O0(pVar, "video_chatting", null, 2, null);
}
return LifecycleOwnerKt.getLifecycleScope(ChatIndividualFragment.this).launchWhenCreated(new c(ChatIndividualFragment.this, null));
}

I have not had a chance to implement or test this yet, but at least some progress has been made. I know this was asked about quite some time ago and also more recently by @k.routley so this is somewhat of a progress update.

Edit: I've also been digging through the most recent version 9.12.0 and checking code for keeping chats of blocked users. I have been able to keep that user chat box but not the chat itself when blocking someone. It appears they've removed or renamed the deleteChatMessageListFromConversationId() method
[Xposed Framework Modules] unearthly3:
I've done everything correctly but I cannot login Grindr. I'm not sure what I did wrong. Lspatcher is working fine and when I patched Grindr I used "lvl 2: Bypass PM + openat (libc)" and I enabled Gplus. WHAT AM I DOING WRONG! also the gridr version is correct (9.9.1)
[Xposed Framework Modules] RobbieTechie:
This has already been covered in the previous conversations, Shizuku WILL NOT WORK for Grindr...
[Xposed Framework Modules] unearthly3:
what will work then?
[Xposed Framework Modules] RobbieTechie:
In reference to what?

If you wish to use the Grindr Plus module, you'll need to have a rooted device and then either LSPosed or edXposed to enable and disable the module.

If you try to use Shizuku+LSPatch to patch Grindr as you stated, it changes the signature of the app, which will cause security problems, which is why your logins are failing. There is a signature verification which will obviously fail. Shizuku is a great concept, but it is a hit or miss with various app on whether or not modules will work or not unfortunately.

You didn't do anything wrong in regards to that, so don't let that drive you nuts or bother you. It is just the way Grindr functions and that you need root to make the Xposed module work properly on your device. I'm sorry I don't have better news for you.

One user in the thread claimed that he had it working but also stated he was on a beta version of Grindr. I'm not going to say he was lying, it may very well have worked for the beta version, but eventually he will be back on a full version and it will not stay working for him then as the Firebase tokens used during login expire and need to be refreshed every so often. I would honestly be very surprised if it still worked now if it every really did. He very well could have been in here to troll and mess with other users. It is sad, but some people do that type of thing...
[Xposed Framework Modules] rodman55:
Thanks for the great insight @RobbieTechie

Its not necessarily a feature I really care for TBH more than a feature implementation of sending videos that are presaved on the device (Because albums only allow for 1 video uploaded and the mod cant force the server to store more than 1 album for non paid subscribers right?)

side note: is not being able to view blocked list a established bug of the mod?

I logged into a prior premium account of mine with the mod and saw 10 albums there but was being asked to pay to upgrade to send/view them so seems like maybe a chance of having grindrs servers retain more than 1 album for a non paid account may be possible
[Xposed Framework Modules] k.routley:
My money is on that you can only have one login for a paid account per device and the token for the premium account remains on that device for about 12hrs after you've logged out of the other device so you can't switch between premium accounts per device in short periods of time. Hence why you can't see the extra albums. This mod spoofs all of the non-server controlled features, everything else you still pay for. Anything that you're missing from this mod is usually a feature from Grindr Servers, not a problem with the mod.
[Xposed Framework Modules] RobbieTechie:
I have watched the API traffic (basic traffic between the app and their servers) and have seen responses from the server regarding expiring videos and typically there are 10 left

/v4/videos/expiring

but I have not seen an area to send expiring videos. I have not seen an area to simply send videos as you mentioned either. I though perhaps they would have implemented that by now. Maybe I haven't look3e in the right place though. I honestly don't use the app all that often anymore as it really seems to be getting less popular as time goes on.

The blocked list is under the settings menu where you can unblock users. That is the only place I've seen that you have any type of list of users you have blocked. You cannot view the profiles from there though.

As for the albums, I wasn't sure if you meant that they were your own or ones that were sent to you. They could retain anything, that's been sent through them. As in this case, they have basically held them hostage in an attempt to get you to pay to have access to your own data again. I see people write on places such as reddit how Grindr keeps locking things down to try to force users to pay more money to use the app or sections of the app hence why it is getting worse and falling apart. I honestly feel that the people who now own grindr bought it to slowly make it worse and ruin it all together over time.

As far as retaining it, they can do that. As far as you using those other albums, if it is controlled completely on their servers, then it is not likely you will be able to do that even with the mod.
[Xposed Framework Modules] neo_lithic3K:
What you say about Grindr creating fake profiles make sense. When Grindr was marking new profiles, I would avoid those profiles because they were usually fake - fake pictures, not much information in the profile, and usually good looking. I used to report fake pictures in the past, but I stopped because it's like whack-a-mole. I always wondered why Grindr allowed all these fake profiles to exist, but now it makes sense if they're the ones creating them.
[Xposed Framework Modules] RobbieTechie:
There was a discussion on Github and on Sept 21, 2022 at 18:20 UTC time the profileId was at 459,716,978. I just checked and watched new profiles get made, we are currently at profileID 548,112,349 so that's 88,395,371 profiles in just under 10 months, or 285 days.

88,395,371/285 = 310,195/day divided by 24 hours = 12,923 profiles per day. The math doesn't add up given the amount of people that are born per day, let alone the amount of those that would be gay./bi/whatever, plus take away those too young to use the app and those too old that would not even be on the app...
[Xposed Framework Modules] neo_lithic3K:
Do you think that many new profiles could also be individuals creating accts for bots, ie not Grindr creating them?
[Xposed Framework Modules] rodman55:
Could be both imo...

As a company that was going public, increasing daily sign up numbers would definitely get them farther

Coupled with bad actors on the app
[Xposed Framework Modules] neo_lithic3K:
Yes, that makes alot of sense now!!! Those were my telltale signs that those profiles were fake - no age at all and always offline. I even tried to create a new profile, as a test, to see if there was a way to bypass the age, and I couldn't.

Another sign was the profile pic itself. It was usually cropped/zoomed in and the resolution was low or blurry.

I always thought a hacker was somehow able to create these profiles. I just never occurred to me that Grindr were the ones creating them.

There was a period of time when we kept on getting spam/ads as a photo advertising a gay site. Were those also sent by Grindr?
[Xposed Framework Modules] RobbieTechie:
The ones that get generated now typically have an age and a display name but that's it. As far as I can tell, they seem to stage them in groups or set them up in groups so to say, and then some of them get filled out more.

If there is no age when you see a profile, it likely was turned off, so you may have seen other spammers pushing their spam

Grindr's pics are not secure in any way. They can be pulled over the internet with no login required and the logo is not embedded in the images, that only shows up in the app itself. That is one way people have used other people's pics as their own. The spam image ads, I believe are Grindr itself or tied to grindr by someone. Those are the ones I mentioned that could be stopped by reading the image hash.

When you upload an image, the hash of the image is read and the image is saved on their servers that way. Potentially that will make every image unique on their Content Delivery Network. Let me see if I can find an image that is not graphic and share it here

https://cdns.grindr.com/images/profile/1024x1024/03c1ad0286a629cb04ab5745d6de87668d30180f

That one is just an eyeball behind a piece of paper or wall or whatever it is, nothing graphic.

The "03c1ad0286a629cb04ab5745d6de87668d30180f" is the hash of the image. They get stored on their server in a Webp format and hence typically lose quality

Chat images are the same way, simply with a different link

https://cdns.grindr.com/grindr/chat/{imagehash}

When someone can pull the images, then they are extremely easy to reverse search and find out if a profile is using someone else's pics...

This is why I mentioned above that those pics with ads for certain sites could be easily dealt with. Grindr could read the hash of the image as it's sent and instantly ban any profile that sends that hash, yet the won't do that, which is one of the reasons I feel they are at least partly behind the spam...
[Xposed Framework Modules] whitehollow:
All the features I needed were granted by the app clone app who could spoof the location and generate multiple account without tripping Google. With android 13 is impossible to login on the grindr clone. With android 12 I could login installing an android 11 version of clone app os and then updating grindr clone. Now is impossible. Anybody know why? With tripping Google I mean switching my paid account to the different clones
[Xposed Framework Modules] neo_lithic3K:
The good thing is that I don't get those spam photos anymore. But on the other hand, I've gotten spam in albums haha
[Xposed Framework Modules] RobbieTechie:
I see Grindr has added a new boolean value to the profiles called "isTeleporting", how interesting, do we have quantum teleportation devices now? 🤣
[Xposed Framework Modules] neo_lithic3K:
hehe, is Grindr trying to catch people using gps spoofers?
[Xposed Framework Modules] alive505:
I have an observation about some interesting behaviour in the favorites grid. As soon as a user is offline for 2 days or more, instead of their last seen time changing from "1 day ago" to "2 days ago", it changes to "Offline". They also they seem to lose their position (they get shunted to the bottom of the favorites grid). Is it possible to change this behaviour so that instead of "Offline" it retains their last seen time, and also so that it retains their position in the grid in relation to other users? It seems to forget their location after 2 days and they are no longer displayed in distance order.

One more question is about distance generally. Of course some users choose to turn off "display my distance", but even with this setting off the app must still know their location in order to show them on the main grid. In rural/remote country locations the closest profile might be 1km away or 50km away, it's impossible to know this when they have hidden their distance. The app clearly knows it, so can this be shown?

Robbie and Tebbe and of course ElJaviLuki MILLION THANKS always for your dedication to this project, owe you so much gratitude ❤️
[Xposed Framework Modules] alive505:
Sadly this morning beloved version 9.7.0 is no more, it now forces an update and will not open :( Now I have installed 9.10.1 and the mod for it which I think is the last version with all features working (except ProfileID field), hopefully this one lasts a while before Grindr disable it!
[Xposed Framework Modules] RobbieTechie:
You are indeed correct about them forcing the updates from 9.7.0 and 9.10.1 being the last full featured version. I see that Tebbe has done some updating for 9.12.0 so perhaps there will be more fixes. Honestly some of the things that got changed were beyond my skill level at this point so hopefully I'll learn more from this!!!

Also, you asked above about favorites. I have noticed also that they do what you described. Some of that I can tell you is controlled server side. I'm honestly not sure about the grid position, they really need to fix that in their system though, 2 days and saying offline is really just silly.

I know ElJaviLuki stated on his last release that the added profile fields will return later. For the moment I would say try 9.10.1 and we will see what happens with 9.12.0

Edit: As far as distance of users, which is how they sort the grid, I believe they have access to every users distance in their system. There are also security concerns with user's distance though. In certain countries it is illegal for people to be gay and grindr by default will disable that feature in those countries for the safety of those citizens. I don't have the ability to turn that back on, but I also feel that even if I did, it should not be done as that takes away safety and choices for other users to decide what information they choose to share.

While I can understand your frustration with how far away someone might be especially when out in a rural or more isolated area, you always have the option of talking to the person and asking them. What's the worst that could happe from that, they might say bugger off then you won't have to waste any time talking to them...
[Xposed Framework Modules] alive505:
Thanks, that makes perfect sense, I didn't consider the privacy aspect of the distance in terms of countries where being gay is illegal. It would still be good if something like "fuzzy location" could be implemented for users who hide it, so it says location to the nearest KM for instance "around 1km away" instead of hiding it completely, then that would eliminate any safety concern while still making it more usable. But yes I understand the point entirely.

Thanks for the thorough reply, very helpful always ❤️
[Xposed Framework Modules] RobbieTechie:
Grindr use to use GPS coordinates instead of geohash, and they used the lat and lon values to a ridiculous amount of values, to the point that the data could detect if a tectonic plate moved 1 millimeter. They now use geohash, but they use that to 12 characters. It's basically a little box roughly 7.62 cm x 5.08 cm or in the US it's about a 3 inch x 2 inch box. If you were in your kitchen, they could tell if you were at your refrigerator, your kitchen sink, in front of your coffee pot, opening a window etc.

I still wouldn't feel right adding something the fuzzy location, but I still understand the frustration of wanting to know if someone is 1km or 50km away. I grew up out in countryside and it felt like some friends were millions of miles away at times...
[Xposed Framework Modules] RobbieTechie:
Here is an update for 9.12.0 Everything appears to be working in this version but testing is always appreciated.

Huge THANK YOU to Tebbe Ubben for the updates and fixes he just made !

- Saved phrases are working again

- Block notifications in chat are also working again. I only blocked profiles and had no blocks so I can't verify that it's working both ways but it should notify for both now.

-Preventing recording views works again

- Added profile fields ARE NOT in this version, ElJaviLuki stated previously that they would return when he gets the time.

Credit goes to each of them though, I simply tied everything together here to finish this update. ElJaviLuki had dealt with some issues in his last updates and then Tebbe finished the other parts I had issues with, then I simply tied all the fixes into one package.

If you are interested in the sources, here is ElJaviLuki:

GitHub - ElJaviLuki/GrindrPlus: Making Grindr funnier than ever before!

Making Grindr funnier than ever before! Contribute to ElJaviLuki/GrindrPlus development by creating an account on GitHub.

github.com

TebbeUbben:

GitHub - TebbeUbben/GrindrPlus: Making Grindr funnier than ever before!

Making Grindr funnier than ever before! Contribute to TebbeUbben/GrindrPlus development by creating an account on GitHub.

github.com

If you find an issue or think something is still not working correctly, please let us know, the feedback and testing is appreciated.

The first version will record when you view a profile in their viewdMe list, the second version will prevent this.

I hope everyone is well !!!
[Xposed Framework Modules] alive505:
That's nuts, I wonder why they feel it necessary to capture location to that degree of accuracy. Something like to within 100 metres would be fine for the purposes of seeing who's closest. I'm sure we've all seen profiles that sometimes show up "1 metre away" and been a bit creeped out :ROFLMAO:

New version for 9.12.0 working very very well, thank you! 🍻
[Xposed Framework Modules] arko7123:
Is this just me or grindr has lost the classic notification sound?

also tried on version 9.13 without any mod :rolleyes:
[Xposed Framework Modules] RobbieTechie:
Here is another update with some more updates that Tebbe shared.

He force enabled some of the experiments

- Profile redesign

- Gender profile field

- Vaccines profile field

- Tags

- Approximate distance [found under settings]

- Reporting profiles that have blocked you (I think this is a big step in the right direction!!!)

- Face auth (not tested either)

Everything should be working in these versions also.

Testing is appreciated, along with feedback if you believe you have found issues...

1st file records views, 2nd file prevents that

I hope everyone is well !!!
[Xposed Framework Modules] RobbieTechie:
Here is an update for version 9.13.0

Same features etc. as 9.12.0, this is basically an update for the 9.12.0 to make it work with 9.13.0

Everything should be working, any testing and feedback is appreciated. If you think something is not working please make a post about it.

Credit for this mod goes to ElJaviLuki:

GitHub - ElJaviLuki/GrindrPlus: Making Grindr funnier than ever before!

Making Grindr funnier than ever before! Contribute to ElJaviLuki/GrindrPlus development by creating an account on GitHub.

github.com

and TebbeUbben:

GitHub - TebbeUbben/GrindrPlus: Making Grindr funnier than ever before!

Making Grindr funnier than ever before! Contribute to TebbeUbben/GrindrPlus development by creating an account on GitHub.

github.com

1st version records when you view a profile, 2nd version prevents that.

I hope everyone is well.
[Xposed Framework Modules] RobbieTechie:
It's not just you, looks like Grindr screwed up something else 🤷‍♂️
[Xposed Framework Modules] sam3610:
Hello guys ,

I'm new to all of this.

I use grindr and my phone is NOT rooted. The reason to come here is the following. I use grindr and after the last time I updated (It said you must update yo contulinue using the app), there is a message that says "no mock applications allowed" and therefore any fake GPS won't work.

I'd appreciate if you help me with everything pretty much. Sorry.

1) do I need to root my phone?

2) will the S22 ultra work with the root?

3) what do I do next?

4 ) I apologise for this. I am genuinely eager yo learn and appreciate any help
[Xposed Framework Modules] neo_lithic3K:
1) yes, you'll need to root in order to get this mod to work (as far as I know)

2) I don't have a samsung phone, so I'm not 100% sure. But from past research, my understanding is that the US version cannot be rooted. There might be a root solution for non-US versions. You'll need to check the Samsung S22 forum for more information. Or other people here with a Samsung phone might be able to give you more information.

3) You should go to the Samsung S22 forum for more details on root and xposed/lsposed.
[Xposed Framework Modules] RobbieTechie:
-To use the mod, and most mods for that matter, you need to root your phone.

-If you can root your S22 then yes it will work. US models of the S22 still cannot be unlocked as far as I know, the newest phone that could be bootloader unlocked last I checked is the S21 with an early bootloader, if you are using a version from areas such as the UK, Europe, or China you should be able to unlock the bootloader, which is the first step for rooting a Samsung.

If you don't have Developer Options enabled, you can do the following: go to your settings, then scroll down to the bottom and tap on "About phone" then go to Software information. In the next screen look for "Build number" and tap on that section 7 times, you may see a pop up on the screen as you're doing this stating how many more times you need to tap t enable Developer Options, it should take 7 taps. When that is done go back a few screens and at the bottom of the Settings underneath where "About phone" is, there should now be an option that says "Developer options".

In the Developer options, you may need to scroll down a little bit, but you're looking for "OEM unlocking" with a toggle on the right side. If that option is greyed out and the toggle cannot be switched on or off then you cannot unlock the boot loader on your phone with a standard method. That is the first step to find out if you can root your phone or not. If that cannot be done, then you can't use the standard way of unlocking the bootloader to root your phone at this time. You had asked what to do next in your message, and this would be what you need to find out to know if you can root your phone.