Making "Stock" Custom ROMs Defunct (XposedFramework) - Tweaks for any ROM Version - Galaxy Note II Original Android Development

Making "Stock" Custom ROMs Defunct (XposedFramework) - Tweaks for any ROM Version
Introduction
Recently it has dismayed me how, across the Android Community, people seem to feel that it's necessary to run a "Custom ROM" in order to get improvements and changes to your ROM. Of course, some of you know it's possible to modify the APK files directly to change things, but these changes need to be done every time your base ROM is updated. Once Samsung starts leaking out updates to 4.2 like a sieve, you guys will be all over them, needing to update your patches and tweaks every time.
Anyway, seeing this displeases me, as it encourages people to see "Custom ROMs" as a commodity, and something you consume. In essence, users were getting their "fix" of tweaks from their "chef", but not learning how to do it themselves, nor realising their beloved chef isn't doing anything magical. In fact, their chef is likely decompiling the applications, and using baksmali/apktool to take apart the app, hard-code in their changes, then rebuild it. This method has worked well for 3 years, but it's been in need of an update for some time.
The Enlightenment
Then I saw this thread by rovo89. That man deserves a beer for every Android user there is, for his work on the Xposed Framework! His and Tungstwenty's work on this has made it possible to modify the core Android system, without doing any actual modifying of applications.
OK... Why are you telling me this?
This invention seems to have pretty much gone unnoticed by the world. The reasons this is vastly superior to any other way of making modifications to apps and the system are:
Your modifications are not tied into a single version of the APK or app or framework. If the ROM is updated, the patch should still work perfectly on the new version of the app (this doesn't necessarily apply across major updates like 4.1 to 4.2, but should be fine across 4.1.0 to 4.1.2 style changes).
You are not actually modifying any files on the phone! If something goes wrong, you can just disable the support for the framework, and the tweaks will do nothing. As such, it's easier to get a working phone if something dies - in fact there is a ZIP placed on your SD for this very purpose. Just flash it in CWM and it will disable the framework.
As no actual files are being modified, it doesn't matter if your ROM is odexed, deodexed, or a bit of both (ie. certain apps deodexed, but frameworks odexed). With this, there is no reason to run a deodexed ROM, since you can change pretty much everything you want to without touching the raw files. So leave them as odex files and you'll not have any problems. Bear in mind we deodex to allow easier customisation, odexed is actually slightly faster, and removes the majority of the dexopt process on first boot.
No application signatures are modified, as the apps are not touched, so if you were to use this to modify an app like Maps or Gmail, you won't get issues when trying to update to a new version of the app via the market.
The only way this can succeed is for you to try it. I usually run a "custom ROM" on my phone. For the first time ever, I've been using a stock ROM for a significant period of time. On the Note2 in particular, Samsung is really getting good at this. But they're not perfect. And as such, I started to look at using this to perfect their work.
When you run a custom ROM, look at what you're getting, and ask yourself why it doesn't use this method. I've only made one little modification so far, but it's one that annoys me hugely! The blooming SMS -> MMS conversion when you try to write any form of prose in a text message. I cannot stand the limitation of SMS to 160 characters, so the ability to chain together messages is a godsend to me. Unfortunately though, Google and Samsung seem to like to restrict you to 3 SMS messages worth of text before converting to an MMS message. Which is wonderful, except when you have totally unlimited SMS, but pay for MMS. As such, I was finding my ability to communicate in my usual verbose way somewhat hindered by the messaging app.
Alas that is no longer an issue. If you want to get started, here's how.
OK... How do I use this?
Download and install the APK file from this post - http://forum.xda-developers.com/showthread.php?t=1574401. I have tested it on the N7100, it works fine. Run it, install the framework, grant it root (yes, this requires root!), and reboot. I have mirrored the APK below just in case of issues.
Download and install the APK modification you want from http://www.villainrom.co.uk/forum/microdownloads/
When you get a notification about enabling the modification (after the APK is installed), tap that notification, and enable the plugin by ticking the box.
Reboot your phone
Go test your modification
If you have any issues with this, please paste the contents of /data/xposed/debug.log on a pastebin site or in
Code:
tags.
[SIZE="5"][B]How can I make my own modifications like this?[/B][/SIZE]
Will post this a bit later, along with the source of this plugin.
[SIZE="5"][B]References[/B][/SIZE]
[url]http://forum.xda-developers.com/showthread.php?t=1574401[/url]
[url=http://forum.xda-developers.com/member.php?u=4322181]Tungstwenty[/url]
[url=http://forum.xda-developers.com/member.php?u=4419114]Robo89[/url]
[SIZE="5"][B]Sources[/B][/SIZE]
You can find the sources for Xposed Framework at [url]https://github.com/rovo89[/url]
You can find the sources for all Xposed modifications I have made so far on Github:
[url=https://github.com/pulser/xposedSMStoMMS]Disable SMS -> MMS Conversion[/url]
[url=https://github.com/pulser/xposedDisableBatteryFullAlert]Disable 100% Battery Notification[/url]
[url=https://github.com/pulser/xposedEnableCallRecording]Enable Call Recording[/url]
[url=https://github.com/pulser/xposedScrollingLauncherWallpaper]Enable scrolling wallpaper in stock launcher[/url]
[url=https://github.com/pulser/xposedEmailTextColour]Make text in email app message list clearer to read (lighter) on the black background[/url]

Install the Xposed Framework from this thread: http://forum.xda-developers.com/showthread.php?t=1574401

Modifications
OK so a few people suggested an addon repository... I have got one sorted
Downloads
http://www.villainrom.co.uk/forum/microdownloads/
I've added some of mine so far, but I won't add other people's - they can add them themselves, and maintain them
This system is vastly superior to a stickied forum thread, as you can update your own modification (as a developer), and as a user, receive notifications if a modification is updated.
Developers
Register for an account (Free, easy, no spam etc)
Go to http://www.villainrom.co.uk/forum/account/join-user-groups
Tick the option for Xposed Uploader, and hit Save. A request will be sent to me for your application. I'll approve it when I see it (should be quite fast, it gives me a popup)
Head back to http://www.villainrom.co.uk/forum/microdownloads/ and click the Upload button at the top right.
Use a general title that describes what your modification does. Put in a version string too. I tend to use the format 1.0, 1.1, 1.2 etc, but this is up to you. You can add Alpha or Beta or other designations if you wish.
For author, pop in your name or username. And enter a brief description of what the modification does (which will appear in the index)
Click Categories/Agreements, and select which category the modification falls under. If you think there's a category which should be added, let me know.
Under Full Description, you can enter a detailed description of your modification. Finally, under File Options, use File to Upload to select your APK file. You can optionally add an Image to Upload. The Use File URL should be set to no, and the File URL box left blank.
Users
There is no need to register an account to download files from the repository. If you wish to receive notifications of updates, you can register an account - just hit the red "Log in or Sign up" button - you can use a Twitter or Google account if you want, or just make a plain account. It makes no difference.
Head across to http://www.villainrom.co.uk/forum/microdownloads/ and have a look at the modifications you want.
Click watch file (at the bottom right) if you want notifications about updates to a modification
Click Report to report a modification for being malicious or problematic.
Click "add comment" to discuss or comment on the modification, or leave a "review" or feedback
Click on the stars under (0 votes) to leave a star rating on the modification, which will help generate most popular lists on the main page.
Click to see licence details of mine:
Feel free to use these as you wish, for non-commercial purposes. You may share these for personal use. Note that distribution in any kind of "package" or "custom ROM" is not personal use. Sending a friend a copy is personal use, feel free to do that and share the love.
Feel free to make changes to the source code of the modifications if you think you can improve them, provided you make your changes available in a similar manner. If you fix a bug or error, please send a pull request.
If you wish to use these commercially, please contact me. This includes in any "distribution package", be it a ROM, app, store, marketplace or other package. That's not in the spirit of this project, so get in touch with me and we'll discuss it.
Tl;dr:
End users, have fun, use these, enjoy them, share them, tweak them, just be sure to share your source changes and/or send a pull request if you improve something!
"Custom ROM" Developers, and anyone wanting to try to use these for commercial purposes: Don't. These are to encourage people to learn about these changes, so contact me if you want to do something else with them. Commercial use, including distribution in "Custom ROMs" is not permitted.

How to make your own such modification
This information is NOT complete. This example only uses 1 of about 10 different types of modification. I have spoken to rovo89 and he has said it would probably be possible to document this further. This example covers ONE usage case - I am going to override an entire method.
1. Create a new empty Android project in Eclipse.
2. Within the "application" section of your AndroidManifest.xml, add the following metadata:
Code:
<meta-data android:name="xposedmodule" android:value="true"/>
<meta-data android:name="xposedminversion" android:value="2.0rc1.*" />
3. Within the assets folder of the project, add a plain text file, "xposed_init". Within this, I have put
Code:
uk.co.villainrom.pulser.allowlongsms.AllowLongSMS
uk.co.villainrom.pulser.allowlongsms is the PACKAGE name of my Java package. AllowLongSMS is my class name. The purpose of this is to tell the Xposed Framework what to run.
4. Within AllowLongSMS.java (ie. the class name, with .java on the end), I put the following code:
PHP:
package uk.co.villainrom.pulser.allowlongsms; //this sets the package for our project, this is the first part of the value in xposed_init file in assets.
import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XC_MethodHook;
import de.robv.android.xposed.XC_MethodReplacement;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.XposedHelpers;
import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam;
//above includes all the required parts of the xposed framework that we need here
public class AllowLongSMS implements IXposedHookLoadPackage { //here we declare the class AllowLongSMS. We say it implements IXposedHookLoadPackage, as we want to make use of the hook-in on package load. Other options are available here for working with native libs etc, and resources, but I'm not using these right now.
public static final String MY_PACKAGE_NAME = AllowLongSMS.class.getPackage()
.getName(); //this doesn't do anything, I just left it here for if I needed to write logs and wanted to have the package name easily accessible.
public static final String TAG = "PulserMmsTweak"; //same here, this doesn't do anything.
@Override //we are going to override the method handleLoadPackage, if it exists further up the hierarchy
public void handleLoadPackage(LoadPackageParam lpparam) throws Throwable {
//this method is called every time a package is loaded. We have a parameter that we're going to call lpparam, that is passed in, that relates to what package was loaded
if (lpparam.packageName.equals("com.android.mms")) { //if the package that has just been loaded is called "com.android.mms" then
ClassLoader classLoader = lpparam.classLoader; //create a classloader object that we can now use
XC_MethodReplacement methodreplacer = new XC_MethodReplacement() { //create a method replacer object, as we are going to REPLACE an entire method within the mms app.
protected Object replaceHookedMethod( //we make an object here, that passes in the parameters of what to actually change
XC_MethodHook.MethodHookParam paramAnonymousMethodHookParam)
throws Throwable {
return Integer.valueOf(255);
/* THIS IS THE IMPORTANT LINE
* This line returns the value 255. Why this happens won't make sense yet, but THIS is where you put your "new method" code.
*
*/
}
};
XposedHelpers.findAndHookMethod("com.android.mms.MmsConfig", //here we say that we want to find and hook into the method "getSMSToMmsTextThreshold" which is part of the class com.android.mms.MmsConfig. We then say that we're passing this to methodreplacer, which we defined earlier
classLoader, "getSmsToMmsTextThreshold", methodreplacer);
}
//if the package wasn't com.android.mms, do nothing.
}
}

Awesome work mate. Wish I had a Note 2 to check this on.
EDIT: Wait.. I can use this on any device! Rock on. Thanks!

Wow this is great post. While reading this it makes me learn something like what is going on in background.
Sent from my GT-N7100 using Tapatalk 2

Thanks for continuing that amazing project pulser!!
I think i'm going to create some small apks for some stuff very soon (and release them of course).
Cool stuff as always pulser, keep it up

simone201 said:
Thanks for continuing that amazing project pulser!!
I think i'm going to create some small apks for some stuff very soon (and release them of course).
Cool stuff as always pulser, keep it up
Click to expand...
Click to collapse
The original guys are not gone, was talking to them recently
There's scarce documentation so far on this, but I will see what else I can do with it... I might make post 2 a repository of these APKs for now...

chaitanya87 said:
Wow this is great post. While reading this it makes me learn something like what is going on in background.
Sent from my GT-N7100 using Tapatalk 2
Click to expand...
Click to collapse
That's the intention Glad it worked! This is about learning, and not just "using".
Sure, you can download the APK and use it, but that's no better than just downloading some zipkang ROM that claims it does everything including making your morning coffee... This is about taking a look at HOW it works too That way people can make their own tweaks and share them!

pulser_g2 said:
The original guys are not gone, was talking to them recently
There's scarce documentation so far on this, but I will see what else I can do with it... I might make post 2 a repository of these APKs for now...
Click to expand...
Click to collapse
A small repo for APKs would be really cool and useful for users....
tell me if i can contribute in some ways (i'm an app dev mainly also)

simone201 said:
A small repo for APKs would be really cool and useful for users....
tell me if i can contribute in some ways (i'm an app dev mainly also)
Click to expand...
Click to collapse
I will work something out (I can easily make a repository if this kicks off, so people can upload them and they appear).
TBH right now it's more a case of thinking up some ideas. For now, I can add anything people send into the second post (though I think it would be reasonable that we request source for all such modifications, just given the sheer ability to modify anything that this has...)
I can't think of enough things to tweak, we just need to work out WHAT people will like to modify, and implement it
I'll be a good example and put mine onto git shortly

My own notepad of things I need...
http://forum.xda-developers.com/showthread.php?t=1965801
http://forum.xda-developers.com/showthread.php?t=1924905
call record:
http://forum.xda-developers.com/showthread.php?t=1938808
http://forum.xda-developers.com/showthread.php?t=1871525

Hey folks,
I'm happy to see some new interest on Xposed.
I've been using it since rovo89 came up with this brilliant idea, and have to admit I was kind of sad to see not many saw its great potential.
Personally, I'm using a couple of hacks for my individual use, but if the community starts to be interested in the HOWs rather than merely nagging about the apks I guess I can try to make an effort to clean and share the code.
Please do ask away stuff, I'm eager to seeing this being used to its full potential
For now, please check the Tweakbox sources. While the code itself might no longer 100% apply to the most recent S2 stock roms, it's still a nice example of how the hacks can be done.

this sounds great! like an universal (almost!) patching system. I hope more chef will write mods for this. man...wish i had taken some lessons in coding.
for a start, how about some of the often repeated annoyance in stock samsung that drives many to use custom roms just to get these functions:-
1) disable the scrolling quick setting panel when you open notification
2) 15 toggles as implement by guys like Wanam.
3) call recording (ok we got this already)
4) 4 way reboot menu
5) some kind of user definable custom battery graphics.

sunwee said:
this sounds great! like an universal (almost!) patching system. I hope more chef will write mods for this. man...wish i had taken some lessons in coding.
for a start, how about some of the often repeated annoyance in stock samsung that drives many to use custom roms just to get these functions:-
1) disable the scrolling quick setting panel when you open notification
2) 15 toggles as implement by guys like Wanam.
3) call recording (ok we got this already)
4) 4 way reboot menu
5) some kind of user definable custom battery graphics.
Click to expand...
Click to collapse
Yeah this is pretty universal. I'd even remove the word "almost" tbh...
For 1, do you mean to disable the scroll animation so that it shows the leftmost icon (wifi) first?
2 is possible, I know samsung has done it on 4.2, is the custom implementation better?
3 is done like you said.
4 should be more than possible.
5 is definitely possible, at least via flashing the modification for the battery style you want...
Thank for the ideas

i flash custom rom just because i need below few things
1.Call-Record. (done)
2.15 toggle, or maybe add NFC, S Beam, Multiwindow, Smart Stay as well
3.Louder Volume Speaker.
4.CRT Lock and Unlock Screen.
5.4 Way Reboot.
6.Unlimited Multi-Window
thanks for the good work and sharing.

Hi. So glad to see that this amazing framework didn't "die"
I would have one question about the mods...
Ok its likely that for the same device they work on different bases of the rom like DLJ5, ELK4 am I right?
But does a mod that was made for lets say the Note 2 work on a SGS3 or must it be adapted?
Thanks !

DirkStorck said:
Hi. So glad to see that this amazing framework didn't "die"
I would have one question about the mods...
Ok its likely that for the same device they work on different bases of the rom like DLJ5, ELK4 am I right?
But does a mod that was made for lets say the Note 2 work on a SGS3 or must it be adapted?
Thanks !
Click to expand...
Click to collapse
If it's touchwiz then it should work - samsung seems to have unified a lot of it.
Jerdog used the SMS to mms patch fine on his s3.
It really just depends on the modification itself tbh...

If I would like to start writing my own mods is there somewhere a guide how to debugg the mod I write?
Thanks!

one more
can you add:
*:laugh:skip music track with volume button

Related

[Q] is there an app that checks all installed or purchased apps for ICS compatibilty?

maybe either through API level, or by querying market info
Reason: i want to check on GB before I upgrade to ICS, which apps will not work.
don't know if relevant but it is for SGS II
Thx in advance
repost from here as nobody could really answer my question
can't believe I'm the only one with that issue
maybe an idea for a dev? would be willing to pay for that ;-)
I don't see why this can't be done:
-http://stackoverflow.com/questions/2695746/how-to-get-a-list-of-installed-android-applications-and-pick-one-to-run
-http://developer.android.com/reference/android/content/pm/PackageManager.html
-http://developer.android.com/reference/android/content/Context.html#getApplicationInfo()
I haven't thought through the problem just yet, but its seems to be doable. If you don't find an app soon, I will start working on a script that does it and, if successful, a proper, free software app. I am hoping the available methods won't require something as stupid as launching each app fully. But again, I haven't thought it through. Thanks for the idea btw.
EDIT:
Made a little more effort
https://groups.google.com/forum/?hl=en&fromgroups#!topic/android-developers/dXLACRIizKc
I will work on something this weekend and get back with y'all.
EDIT 2:
So it looks like I would need maxSdkVersion which I don't find in the API. Furthermore, it is strongly suggested that one not use maxSdkVersion when building an app so that doesn't sound all that useful. I have received another, much more complicated suggestion that may do what I want, but I will have to look hard at it. Looks like I'm going nowhere in my effort. Always open to suggestions. More to come later this weekend.
I'm not the sharpest tool in the shed, but I thought this was mostly a straightforward task using the API's exposure to AndroidManifest.xml. As per my previously posted link to an Android Developers discussion on the topic, my approach is dead in the water as far as I can see. I did try to find an answer though to the best of my limited ability. If anyone has or ever solves this problem (I consider it a problem) I would hope they find the this thread.
Thanks for the learning experience. I give up.
Most older apps will work fine on ICS, its pretty backwards compatible. If the app uses legacy menus the button will appear in the old lower left hand corner location instead of the upper right hand corner like apps written for ICS.
i'm no dev so bear with me if i write stupid stuff
one likely but not very promising sounding way might be to use android:targetSdkVersion as "As Android evolves with each new version, some behaviors and even appearances might change. However, if the API level of the platform is higher than the version declared by your app's targetSdkVersion, the system may enable compatibility behaviors to ensure that your app continues to work the way you expect. You can disable such compatibility behaviors by specifying targetSdkVersion to match the API level of the platform on which it's running. For example, setting this value to "11" or higher allows the system to apply a new default theme (Holo) to your app when running on Android 3.0 or higher and also disables screen compatibility mode when running on larger screens (because support for API level 11 implicitly supports larger screens)."
question though is how many apps actually use this?
However after having read this re android:maxSdkVersion "Warning: Declaring this attribute is not recommended. First, there is no need to set the attribute as means of blocking deployment of your application onto new versions of the Android platform as they are released. By design, new versions of the platform are fully backward-compatible. Your application should work properly on new versions, provided it uses only standard APIs and follows development best practices. Second, note that in some cases, declaring the attribute can result in your application being removed from users' devices after a system update to a higher API Level. Most devices on which your application is likely to be installed will receive periodic system updates over the air, so you should consider their effect on your application before setting this attribute." (taking from here) i now don't know how important my op is, but then why do all app devs release new versions "fixing things" for ICS?
One pretty significant example which actually currently will prevent my phone from getting ICS for now is that the subsonic app in the current version produces stuttering when playing audio while downloading (problem description here).
Isn't there any way to instead of searching the phone searching google play/android market instead?
Randi said:
maybe either through API level, or by querying market info
Reason: i want to check on GB before I upgrade to ICS, which apps will not work.
don't know if relevant but it is for SGS II
Thx in advance
repost from here as nobody could really answer my question
Click to expand...
Click to collapse
Here's a list of some working games/apps for ICS
Theoretically an Android app (or a combo of say App Engine and Android) could find your installed apps, seacrh Play for said apps and then scrape the page for relevant information. Doesn't sound to hard, but I didn't think about too hard either. Perhaps I will check out what useful info is on Play and how feasible scraping its markup will be. I will get back at y'all if I do.

[ROM][DISCUSSION] CM10----DisarmedToaster by AGRABREN [PERMISSION GRANTED]

Download Link:
http://goo.im/devs/agrabren/cm10/shooter/cm-10-DisarmedToaster-0.1-shooter.zip
GAPPS:http://goo.im/gapps/gapps-jb-20120726-signed.zip
TERMS AND CONDITIONS
0. Definitions.
“This License” refers to version 2 of the GNU General Public License.
“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks.
“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations.
To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work.
A “covered work” means either the unmodified Program or a work based on the Program.
To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well.
To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion.
1. Source Code.
The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work.
A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language.
The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work.
The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source.
The Corresponding Source for a work in source code form is that same work.
Toolchain: GCC ARM version 4.4.3
Kernel Source: https://github.com/agrabren/android_kernel_htc_shooter
This is a Discussion thread for the rom and is only to be used for that purpose.
This ROM Thread is posted with Permission of Agrabren
WORKING:
SOUND
WI-FI
CALLING
DATA
You Tell Me!
Note I AM NOT the creator of this rom. IT IS AGRABREN
He gave me permission to post a discussion thread
I will keep this open until he feels like the build is alpha quality
I will then close this thread
I'm posting a thread as he has not.
Also If you phone explodes or you create a black hole I Take NO RESPONSIBILITY
I'm fine with the thread, at least until the ROM is stable enough to meet my standards to be posted as an alpha. People in the CM9 thread wanted to see it, since I had posted a build for the GSM phones (to test if I had the basic infrastructure working) and they were thrilled. So I posted for CDMA after the last builds came out.
Now everyone, settle down. You're all more than welcome to use this thread to discuss what works, doesn't work, and how to help each other make the most out of it.
This forum is supposed to be about helping each other. Is the ROM in development? Yes. Does it work up to my requirements for alpha quality? No. Why? Because the microphone doesn't work right. If that were fixed, I'd likely switch to developing for CM10 instead of CM9, because the camera won't kill me to get working and everything else is trivial between the two for me to not lose any time or features.
Thread moved to GENERAL - it will stay here as a discussion thread.
Edited OP and thread title to reflect that, also left a couple posts from agrabren so people know he's ok with this thread.
Any and all flames or name calling will get you an immediate infraction and likely a ban if you cross the line too much.
Keep XDA what it shold be, open and a place to learn.
Have a nice day.
im still confused why the dictionary exists in the OP? - why not just link to where that was copied and pasted from? its pretty distracting from the actual OP
Xda is the best...
Sent from my GT-XPERIA S using xda app-developers app
Can't wait to install this once I get home.
Thank you il Duce! I'm excited to see CM10 on the Shooter, and can't wait to see how far Agrabren and others take this rom!!
minieod said:
im still confused why the dictionary exists in the OP? - why not just link to where that was copied and pasted from? its pretty distracting from the actual OP
Click to expand...
Click to collapse
It's the op decision to put what they want there. You'll live.
jasonvanfebr said:
Xda is the best...
Sent from my GT-XPERIA S using xda app-developers app
Click to expand...
Click to collapse
I agree.
I've been running this for a little over 12 hours now. It's very nice and makes me very excited to see where we can see Jellybean in the future.
Not Working:
4G will not enable
3D
Camera
Google Now/Search FCs
Headphones are not detected - sound continues to play through external speaker
Potential battery drain - BetterBatteryStats shows phone as awake 100% of the time, though I had an app running that may have been the cause of it
Watching Youtube can cause a reboot after 20-30 seconds
I also was unable to boot with the stock kernel, and if I had the newer ICS firmware it refused to boot at all with any combination I tried.
It's incredibly fast though, you can definitely feel the Butter in play. I'm very impressed with the ROM and will continue to run it until I go back to the USA, at the very least.
Hi.
I've been out for a bit, glad to see much hasn't changed (sarcasm).
One troll has already been banned from the mess that had to be deleted. Please behave yourselves, I really don't like spending my free time deleting drivel and banning people. The op has permission to post this, it's compliant, just discuss away. Don't be rude to each other.
Thanks and have a pleasant evening
Can't Wait
wwjoshdew said:
Thank you il Duce! I'm excited to see CM10 on the Shooter, and can't wait to see how far Agrabren and others take this rom!!
Click to expand...
Click to collapse
I feel the same way.
I would feel better when an official RUU is available then I would start ROM'ing all crazy lol.
FusionNeo said:
I've been running this for a little over 12 hours now. It's very nice and makes me very excited to see where we can see Jellybean in the future.
Bugs:
4G will not enable
3D
Camera
Google Now/Search FCs
Headphones are not detected - sound continues to play through external speaker
Potential battery drain - BetterBatteryStats shows phone as awake 100% of the time, though I had an app running that may have been the cause of it
I also was unable to boot with the stock kernel, and if I had the newer ICS firmware it refused to boot at all with any combination I tried.
It's incredibly fast though, you can definitely feel the Butter in play. I'm very impressed with the ROM and will continue to run it until I go back to the USA, at the very least.
Click to expand...
Click to collapse
4g is not integrated into this build , neither is camera , neither is 3d , neither is voice search - that is why those are bugs
Love the idea here, just dropped in to see only shooter, not shooteru.
Perhaps a CDMA thread title, or people posting whether they are gsm or cdma.
We all want to ditch sense after all.
scariola said:
Love the idea here, just dropped in to see only shooter, not shooteru.
Perhaps a CDMA thread title, or people posting whether they are gsm or cdma.
We all want to ditch sense after all.
Click to expand...
Click to collapse
you can get a fully functioning cm9 rom (no sense) for gsm in the gsm developers section
minieod said:
4g is not integrated into this build , neither is camera , neither is 3d , neither is voice search - that is why those are bugs
Click to expand...
Click to collapse
Oh I know, I wasn't expecting them to work. I just wanted people to be aware of what isn't working, even if it's things people shouldn't expect to work.
FusionNeo said:
Oh I know, I wasn't expecting them to work. I just wanted people to be aware of what isn't working, even if it's things people shouldn't expect to work.
Click to expand...
Click to collapse
:good: - OP should be updated reflecting a "not working" feature set
Found another bug - attempting to watch Youtube for more than 30 seconds or so causes a reboot. Will update my post to reflect this (in 5 minutes, due to my lack of user permissions). I agree that these bugs should be listed in the OP, to make them easier for people to find as well as remove all the posts like "DOES FOUR GEEZ WORK" from people who only choose to read the OP.
minieod said:
you can get a fully functioning cm9 rom (no sense) for gsm in the gsm developers section
Click to expand...
Click to collapse
yes, a cm9 and cm10 Rom if you know where, the thread hasn't been created for 10 yet.
Was just hoping someone could find out why audio goes out after phone connects call through SIP(Internet calling) ?
Problem with all cm9+ roms, by 3 different gsm devs.
Titanium backup won't restore Facebook.
It's not critical, but it is a problem I've been having. Unchecking Facebook fixes it.
It hung on something else too - had to force close TB a couple times, but I got most of my stuff back.
Over all, very fast, and the phone (the old neglected bit some people actually use to talk with other people verbally, rather than via txt) works well.
I've also had issues downloading paid apps from the market - and TB warned me that my device ID had changed. It offered to change it back, which also crashed TB.
After restoring accounts from TB (and possibly the device ID as well - not sure if that completed or not), the market issues have gone away.

[APP] [CM7] Increase Your Privacy with PDroid [alt CM9/CM10]

Well, I’m sure that it isn’t a secret for anyone, CM7 has been and still is my favorite rom for my Defy(s). I’ve been using it since the day Quarx’s brought IP Tables support to it – hence allowing me to use Droidwall as an Android firewall. I could then selectively allow/deny internet access to any installed app [having internet access permission that is…]. This is a first and important security step, but like anything, this has limitations; apps that do ‘really’ need internet access are then free to send (and receive) whatever their Android permissions allow them to get a hand on. For that, CM7 has a neet feature called ‘permissions management’ that allows you to control each app’s permissions individually. This option works fine BUT the problem is that the apps that you control that way often lose functionalities, stop working altogether or even throw you an error message telling you that the app’s permissions have been altered and that you will not be able to use it unless you reset them.
So how to solve this potentially very critical security flaw without losing apps functionality? ==> PDroid.
Thanks to xda user measel, I’ve just recently discovered this wonderful piece of software and I don’t think that my Defy will ever live without it from now on. The app itself is not really a new one and I’ve decided to create this thread to spread to word around and in the hope that it will be helpful to other Defy owners conscious about their data privacy.
WHAT IT DOES:
• More than just blocking apps Android permissions, it lets you control each individual app’s access to private information (user + system);
• It allows you to block and, in some cases, let you either use random or custom private data;
• It will also (if desired) warn you on any root or privacy info access, all that with an easy to figure out and use user interface [see pics];
• And best of all, applications will not crash when their access to private data is blocked unlike with Permission Denied (using LBE Privacy or alike or with CM7).
Disclaimer: I’m only the messenger and I take no credit or responsibility for anything that you’ll do with your phone from here on.
HOW TO:
Original thread by the dev [go have a read and give your thanks to svyat]
Pre-requisites:
- Make sure that you did not use Titanium Backup to integrate sys Dalvik into the rom [if you don’t know what that means, chances are that you didn’t; ignore it];
- a PC running Windows;
- a CM7-jordan/Jordan-plus build;
- PDroid patcher v1.31 (v1.27 also work but the latest version (v1.32) from the link above doesn’t work for the Defy. So I’m attaching v1.31 here which I’ve found with a little digging through that thread;
- the PDroid.apk itself [Market link] or [Dropbox link from the dev];
=> If you don’t have access to a PC running Windows or just don’t want to go through the trouble of patching process described below, you can head over to measel’s CM7 nightlys | info collection thread and locate the build you are using; he was kind enough to provide us with patches for most of recent Jordan builds. So go and grab your applicable patches and give thanks to him.
=> If you’re running CM9 or CM10, this patcher will not work for you, but there are alternatives - namely: the ‘auto-patcher’ or even the PDroid v2 [I’ll give links to those later]. Just go read the last few pages of the original thread, there are quite a few mentions/redirections to those over there. [please don’t ask me about questions about those as I did not try them just yet]
Note: PDroid is an ongoing but currently ‘on hold’ project [because, like someone said before: devs sometimes have a life outside Android...] which works perfectly fine as it is if you follow the next few steps below.
Zero off: Make a nandroid backup of your current phone setup.
First off: Create the patch for your rom:
To work, PDroid first needs you to mod 3 framework files and push them onto your phone. To do so, all you need to do is to execute the PDroidPatcher.exe. file [extract it from the zip attached] and point it to the CM7 build you are using. Let it do its thing and it will create a CWM recovery flashable zip and an undo (RESTORE) one.
Second: Flash the patch:
Just boot into recovery, wipe cache and dalvik and install the patch and boot up.
Third: Install the apk
That’s it!, you’re now ready to go your list of installed apps and start controlling your privacy accesses.
Warning: again, go read the original thread for a how to on how to backup your PDroid settings and/or use TB to do so.
HOW TO USE:
Well, it’s all pretty obvious and with a bit of common sense, you will easily figure out how and what to set up. By default, nothing is blocked and apps are free to access data. So you’ll have to go through your list of installed apps and set up each individual data access and then try them out. For example, logic would tell us not to block the ‘GPS/Network Location’ data to maps related apps nor block ‘Accounts credentials’ to apps dealing with user IDs and passwords like Email or social apps.
I can’t give you detailed instructions here (it’s not the point of this thread anyway), but if like me you already use Droidwall, you can first leave alone all the apps that you’ve black listed for internet access [pic 2] since they won’t do anything with your private data if they can’t send it back home… There is also an option within the app to ‘hide all the safe apps’ [which do not have an internet permission]; check it to reduce the size of your list of apps to configure.
From experience, I’d also suggest you to keep an eye on the apps requiring a password to run since blocking Device or Subscriber ID might mean that you’ll have to always enter passwords each time you run the app that would otherwise be remembered by those apps. As a rule of thumb, I pretty much choose the ‘use random’ option whenever it is available (just to minimize problems with the app on blocking completely – I’m not even sure this is a valid argument here…) or block everything else when it’s not and finally, I leave ‘Network Info’ allowed since it basically only lets apps know if you connected to internet or not [who cares if they get your wifi’s SSID or not…].
But again, you’ll have to fine tune the whole thing for each and every app and run them to check for full functionalities – but at least they won’t crash on you… Finally, you can pinpoint potential problems/solutions by turning off the general PDroid notifications option and by turning on a specific app’s ones [pic 3].
Happy privacy enhancement!
/AL
As usual!
Quality guides from lovely []AL[]
I don't want a tapatalk sig!
nogoodusername said:
As usual!
Quality guides for lovely []AL[]
Why not move to Android Apps forums?
I don't want a tapatalk sig!
Click to expand...
Click to collapse
"lovely AL" wow! you surely are the first person to tell me anything like this here on xda.
..not sure if I should be flattered or run away by homophobia - hehehe! :laugh:
Well, I didn't mean to make it a guide when I started writing it, but like always I had things
to say and the post got longer and longer.. so I guess that we can call it a sort of guide...
But I truly like the app and believe that along with Droidwall, that should be installed on every phone.
In fact, Google should look at this and incorporate something similar into Android.
OK, I'll go reply to your PM now... cheers!
Edit for your question: because like I wrote in the OP, I'm just the messenger and not the dev of the app.
The app also works mostly for on phones running CM7 and even not all the phones support it either.
So I wouldn't publish this widely without at least asking permission to the dev. But here for Defy owners fellows,
I know it works fine and again, I think that it is pretty much an essential app to have.
9 downloads/1 thank;
Leeches, I see leeches everywhere!
Shhhiiiiii- You got me excited! I thought I'd find a patch for the Quarx rom! So far auto-patcher can't patch Quarx's CM10 roms. Nor do I understand why that's so but that's why I'm not a dev.
Excellent app
Arch Linux User ..
KicknGuitar said:
Shhhiiiiii- You got me excited! I thought I'd find a patch for the Quarx rom! So far auto-patcher can't patch Quarx's CM10 roms. Nor do I understand why that's so but that's why I'm not a dev.
Click to expand...
Click to collapse
Well... sorry to hear that; I had no clue that it doesn't work with Quarx CM10. It seems to work for some other JB builds/phones... But like I wrote on the OP, I haven't tried any of this on CM9/JB yet. So again, too bad that this thing is a no go for now. I hear that Quarx is very busy outside Android's world as of lately so it might not be a good time to ask him about this - might also be low on his priority...but who knows, someone might read this and find an answer for you.
ps: quite an avatar you got there :silly:
an thanks for the link to the auto-patcher thread; it might be useful to others and it'll save me the search when I update the OP with it and your comment eventually...
juan296 said:
Excellent app
Click to expand...
Click to collapse
Well thanks but again, just I'm just a messenger here and not the dev... :highfive:
Actually, I use DroidWall , so.. can uninstall this app? And right now, JUST USE pdroid! Right?
Arch Linux User ..
juan296 said:
Actually, I use DroidWall , so.. can uninstall this app? And right now, JUST USE pdroid! Right?
Click to expand...
Click to collapse
I still use both...they are quite different apps and don't do the same at all. Droidwall is a firewall that let you control if an app has access to internet or not; PDroid controls what private information each app can access.
Like I wrote on the OP, any app that is blocked by Droidwall doesn't need a PDroid setup, but apps that need internet connection could be free to get private information from your phone if you don't use PDroid...
Basically, PDroid has no way of blocking all internet access; it only blocks apps from reading private info (or scrambles it by returning info like random network location or sim ID#...)

[CLOSED] [MOD][XPOSED][GrindrPatcher]

Mods, can you please delete this thread...thank you.
RobbieTechie said:
Here is an Xposed Module for hooking Grindr to fix a few bugs, and deal with ads and other things, given those have made the app almost unusable...
These will change over time / need to be updated as new versions of Grindr get releaseed, this currently works with 8.10.0 which is now rolling out.
-This should allow you to unsend messages multiple times (a feature of the XMPP Protocol used by Grindr) as long as they were relatively recent messages
-This should also allow you to send as many expiring photos as you wish.
-This should block / remove most ads but not all of them on it's own (more info on this will be shared below...)
-This should allow you to use FakeGPS
-This should fix bugs where some filters were not working as they should
-You should be able to enable the "mark who I've chatted with" option, which before would pop up ads
This will not enable things such as disabling the VPN check (someone complained about this where I was posting before) If I enable this I will let you know, but for now it's not in here
I WILL NOT help you troubleshoot device specific problems, I am releasing this as an Xposed module, and that's where it's been tested, It has also worked under EdXposed and LSPosed but I cannot guarantee this for you, and you are on your own if you have problems with those. I have tested this on everything from Android 5 to Android 10, I have not tested on the newest versions of the Android OS but if you have XPosed or other way of running such modules on the newer OS it should work.
This will make your grid look like it's Unlimited, but if you scroll down to that area and select one of those profiles it may load the first profile in the grid, The main reason for this module was to deal with the annoyance of ads and other slight bugs in the program, if you have issues please share what they are and what did / didn't work properly.
TO REMOVE MORE ADS
----------------------------------
If you can run XPosed I will assume you have root access, which will allow you to remove ads completely with this method. Grindr processes "features" and the list inside the app is as follows
Subscriber,
FreeTrial,
HideBannerAds, <====
HideFullScreenAds, <====
UnlimitedFavorites,
UnlimitedBlocks,
MyTypeFilters,
PhotosOnlyFilter,
OnlineNowFilter,
FaceOnlyFilter,
AlbumsOnlyFilter,
HaventChattedFilter,
ChatRemoteProfiles,
TapRemoteProfiles,
SavedPhrases,
HaveChattedHighlight,
LongCascade,
TapFilters,
SendMultiplePics,
MoreChatGroups,
LastChattedTimestamp,
ChatReadStatus,
MultiTribes,
Incognito,
ViewedMeCascade,
ViewedMeTimestamp,
UnsentMessage,
UnlimitedCascade,
TypingIndicator,
CreateVideoCall,
VideoCallMonthlyCalculateLengthMedium,
TranslateMessage,
UnlimitedExpiringPhotos,
HideXtraStore,
HideUnlimitedStore,
ShortCascade,
MediumCascade,
MoreGuysCascade,
DisableScreenshot,
Boosting,
ABTestViewedMeCascadeLabelFront,
ABTestViewedMeCascadeLabelBehind,
NewWarnings,
LongTagCascade,
UnlimitedTagCascade;
It also processes some "features" through a file called "jwt_features_fallback.xml" which is located in "/data/data/com.grinderapp.android/shared_prefs" normally this files looks like this:
---------------------------------------------------------------------------------------------------------------------------------------------------------------
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<long name="session_expiration_time" value="1654228104000" />
<string name="session_features_fallback">CreateVideoCall,,MaxViewQuota5,,MultiTribes,,PushPreview,,VideoCallDailyFree</string>
<string name="session_roles_fallback"></string>
</map>
---------------------------------------------------------------------------------------------------------------------------------------------------------------
If you add the "features" in there HideFullScreenAds and HideBannerAds that will remove the remaining ads so you have a hassle free experience when using the app. These changes only last one hour, and this patcher does not adjust that file as this is currently beyond my knowledge and know-how so you will have to do this manually. If you have questions, please try something and if you need help please ask and I will respond as time permits or others can if they have fixed problems and know how.
Click to expand...
Click to collapse
Thanks for making this mod. But.. will Grindr not block your account after using this?
Thanks for this MOD!
All I need and wanted!
@innit Nope your account will not get blocked, I use Grindr MODs since years and nothing happend so far
Hirs_E_Fruit said:
Thanks for this MOD!
All I need and wanted!
@innit Nope your account will not get blocked, I use Grindr MODs since years and nothing happend so far
Click to expand...
Click to collapse
I hope I won't get banned like some guys who used a similar mod before. Once they block you, there's practically no way of getting your account reinstated.
So far it works as intended. No ads whatsoever, filters and cloud backup work, more guys visible in the cascade.
Any chance of making it possible to see more than 1 visitor?
My phone S20 Ultra with Android 12, latest Magisk Alpha and LSposed 1.8.3 (6565). When using LSposed you need to add Grindr to the scope list to make the mod work.
{Mod edit: Italic part edited - Oswald Boelcke}
innit said:
I hope I won't get banned like some guys who used a similar mod before. Once they block you, there's practically no way of getting your account reinstated.
So far it works as intended. No ads whatsoever, filters and cloud backup work, more guys visible in the cascade.
Any chance of making it possible to see more than 1 visitor?
My phone S20 Ultra with Android 12, latest Magisk Alpha and LSposed 1.8.3 (6565). When using LSposed you need to add Grindr to the scope list to make the mod work.
Click to expand...
Click to collapse
There are many things possible, the issue is figuring out what needs to be done to make the viewers list show up. I have looked at the code slightly but have not made much progress there yet. If you use Jadx you can view the code in the APK if anyone is wondering what tools I've used, that is one of the main ones for viewing various parts of the apk file.
innit said:
I hope I won't get banned like some guys who used a similar mod before. Once they block you, there's practically no way of getting your account reinstated.
So far it works as intended. No ads whatsoever, filters and cloud backup work, more guys visible in the cascade.
Any chance of making it possible to see more than 1 visitor?
My phone S20 Ultra with Android 12, latest Magisk Alpha and LSposed 1.8.3 (6565). When using LSposed you need to add Grindr to the scope list to make the mod work.
{Mod edit: Italic part edited - Oswald Boelcke}
Click to expand...
Click to collapse
Hello and good morning, @innit
I'd like to inform you that I've very slightly edited your post and changed those words, which were in violation of rule no. 2 of the XDA Forum Rules; however, I'm convinced that my change didn't alter the information you intended to pass. I'd appreciate if you watch your language closer in future.
Additionally and although I'm convinced you didn't mean it that way, the words you initially used could at the first glace been easily referred to the moderators team of this website. I guess we want to avoid this.
Regards
Oswald Boelcke
Senior Moderator
MOD ACTION:
Thread closed as per OP's request.

[MOD][XPOSED][NEW] Grindr Plus

Grindr Plus - Extend the limits of Grindr!​I am pleased to present Grindr Plus, a mod for Grindr that adds new features to the popular dating app!
Precedents​A similar mod already exists (https://forum.xda-developers.com/t/mod-xposed-grindrmod-new.3807621/) although it hasn't been maintained for quite a long time.
Within the range of possibilities and options offered by the Xposed API, the main goal is to improve the experience in this dating app as much as possible.
I'm also implementing some features requested by users in official Grindr feedback (https://grindr.uservoice.com/forums/912631-grindr-feedback). Some requests are very simple to implement and today I do not understand why the official Grindr team has not been in charge of carrying them out, something that makes lots of people very angry. It is time for users to be heard once and for all.!
Little by little we will add more features. You can collaborate on the project and contribute your own ideas through my GitHub repository! https://github.com/ElJaviLuki/GrindrPlus
Mod Features​(Depending on the version of the client and module you're using, some features may not be available or may work buggy.)
Allow mocking locations (WARNING: Abusing this feature may result in a permanent ban)
Advanced features:
Unlimited cascade view.
Unlocked 'Explore mode'.
Advanced search filters.
See 'Read' and 'Typing...' message states.
Allow taking screenshots in any part of the app (including albums and expiring photos).
Unlimited expiring photos.
Remove expiration on incoming expiring photos, allowing to see them any number of times you want.
Extra profile fields in the so-called CruiseViewHolder ('Profile ID', and exact time of 'Last seen')
Make videocalls even if you didn't start a chat with the recipient.
Access to some user-hidden features (developer features)
More accurate online status from other users. (Now, the green dot from other profiles goes off after 3 minutes of inactivity.) Inspired in the feedback made at: https://grindr.uservoice.com/forums/912631-grindr-feedback/suggestions/34555780-more-accurate-online-status-go-offline-when-clos
Allow unlimited taps (no 24h restriction)
"N/A" when Last Seen profile field is not available (= 0)
New profile field: Body Mass Index (BMI)
Check client version before hooking (as a security measure for avoiding possible crashes and bans*)
Ability to see who viewed your profile even if you have "Show Me In Viewed Me List" disabled.
Ability to remove messages from anyone, any time.
*Read the Disclaimer!
Bugs​
Incognito mode is kinda buggy (it turns off after a little while)
How to install​
Install the Xposed Framework and its app (Xposed, EDXposed, etc.)
Download the Grindr Plus module.
Activate the module in the Xposed Installer.
Reboot your device.
Done!
Troubleshooting​My Grindr app suddenly stops when the module is installed.​Check if the module supports the app version. Grindr has lots of obfuscated symbols that change in each app update and the module couldn't work (or couldn't work properly)
Contributing​This project is open to any kind of contribution. Feel free to open an issue or a pull request or submit an issue or suggestion!
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
Credits​As an open source project, you're free to inspire yourself from this code. However, please DON'T copy it and release it as your own (kanging). Give the proper credit and reference to the original project (https://github.com/ElJaviLuki/GrindrPlus) and its contributors.
Main contributor: https://github.com/ElJaviLuki
Additional credits in the Github repo (since I don't I will be able to edit this post, if new people join to the project)
Disclaimer​This module is neither affiliated with nor endorsed by the official Grindr app. It is provided for free with no warranty of any kind. Use at your own risk! I am not responsible for lost chats, user data, unexpected bans or any other problems incurred from the use of this module. This mod does not collect any personal data nor does it display ads of any kind. No earnings are generated or collected from the use of this software. This project is open source so you can check all these facts by your own!
Download​https://github.com/ElJaviLuki/GrindrPlus/releases <- THAT is the official download repo page for the mod.
Again: Make sure that the module version is compatible with your Grindr client version, otherwise you can expect bugs and/or crashes.
I am NOT responsible for any damage that may be incurred by downloading a modified version of this mod that could have been uploaded any website that is not THAT one (I mean that includes viruses, ads or other strange things).
ElJaviLuki said:
Grindr Plus - Extend the limits of Grindr!​I am pleased to present Grindr Plus, a mod for Grindr that adds new features to the popular dating app!
Precedents​A similar mod already exists (https://forum.xda-developers.com/t/mod-xposed-grindrmod-new.3807621/) although it hasn't been maintained for quite a long time.
Within the range of possibilities and options offered by the Xposed API, the main goal is to improve the experience in this dating app as much as possible.
I'm also implementing some features requested by users in official Grindr feedback (https://grindr.uservoice.com/forums/912631-grindr-feedback). Some requests are very simple to implement and today I do not understand why the official Grindr team has not been in charge of carrying them out, something that makes lots of people very angry. It is time for users to be heard once and for all.!
Little by little we will add more features. You can collaborate on the project and contribute your own ideas through my GitHub repository! https://github.com/ElJaviLuki/GrindrPlus
Mod Features​(Depending on the version of the client and module you're using, some features may not be available or may work buggy.)
- Allow mocking locations (WARNING: Abusing this feature may result in a permanent ban)
- Grant most of the Xtra and Unlimited features.
- Unlimited cascade view.
- Unlocked 'Explore mode'.
- Advanced search filters.
- See 'Read' and 'Typing...' message states.
- Allow taking screenshots in any part of the app (including albums and expiring photos).
- Unlimited expiring photos.
- Remove expiration on incoming expiring photos, allowing to see them any number of times you want.
- Extra profile fields in the so-called CruiseViewHolder ('Profile ID', and exact time of 'Last seen')
- Make videocalls even if you didn't start a chat with the recipient.
- Access to some user-hidden features (developer features)
- More accurate online status from other users. (The green dot from other profiles goes off after 3 minutes of inactivity.)
- Allow unlimited taps (no 24h restriction)
Bugs​* Incognito mode is kinda buggy (it turns off after a little while)
How to install​
Install the Xposed Framework and its app (Xposed, EDXposed, etc.)
Download the Grindr Plus module.
Activate the module in the Xposed Installer.
Reboot your device.
Done!
Troubleshooting​My Grindr app suddenly stops when the module is installed.​Check if the module supports the app version. Grindr has lots of obfuscated symbols that change in each app update and the module couldn't work (or couldn't work properly)
Contributing​This project is open to any kind of contribution. Feel free to open an issue or a pull request or submit an issue or suggestion!
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
Credits​As an open source project, you're free to inspire yourself from this code. However, please DON'T copy it and release it as your own (kanging). Give the proper credit and reference to the original project (https://github.com/ElJaviLuki/GrindrPlus) and its contributors.
Main contributor: https://github.com/ElJaviLuki
Additional credits in the Github repo (since I don't I will be able to edit this post, if new people join to the project)
Disclaimer​This module is neither affiliated with nor endorsed by the official Grindr app. It is provided for free with no warranty of any kind. Use at your own risk! I am not responsible for lost chats, user data, unexpected bans or any other problems incurred from the use of this module. This mod does not collect any personal data nor does it display ads of any kind. No earnings are generated or collected from the use of this software. This project is open source so you can check all these facts by your own!
Download​https://github.com/ElJaviLuki/GrindrPlus/releases <- THAT is the official download repo page for the mod.
Again: Make sure that the module version is compatible with your Grindr client version, otherwise you can expect bugs and/or crashes.
I am NOT responsible for any damage that may be incurred by downloading a modified version of this mod that could have been uploaded any website that is not THAT one (I mean that includes viruses, ads or other strange things).
Click to expand...
Click to collapse
Fantastic work! Thank you for forking this project. I love you! <3
Works perfect on my OnePlus 7 Pro with KOSP 2.7 (A12.1)!
1 Crash of App but then no problems!
onoakino said:
Fantastic work! Thank you for forking this project. I love you! <3
Click to expand...
Click to collapse
This project was not forked from anywhere though haha
ElJaviLuki said:
This project was not forked from anywhere though haha
Click to expand...
Click to collapse
My mistake. I should've said thank you for starting this whole new project. Seriously, this mod is lit!
New release - v1.1​New features:
- "N/A" when Last Seen profile field is not available (= 0)
- New profile field: Body Mass Index (BMI)
- Check client version before hooking (as a security measure for avoiding possible crashes and bans*)
Releases · ElJaviLuki/GrindrPlus
Making Grindr funnier than ever before! Contribute to ElJaviLuki/GrindrPlus development by creating an account on GitHub.
github.com
* Read the Disclaimer in the first message!
ElJaviLuki said:
New release - v1.1
Click to expand...
Click to collapse
Thanks to your great work I now can enjoy (again) some extra features!
I installed version 1.0 without any problem. Today I tried to install new version 1.1 but to no avail. I'm using EdXposed 4.6.2 under Android 11/ Magisk 23.0. When I open your apk with the system app installer, Play Protect complains but it is possible to continue with the installation. However, a pop-up error message says that Grindr Plus was not installed. After de-activating Play Protect and trying again, the same pop-up error message appears again.
Should I de-activate and uninstall version 1.0 from EdXposed before installing v1.1?
Hi there! @Jvlc
Yeah, there was a problem when building the app, especifically the signature.
From now you should be able to update the hook without uninstalling the old version and then installing the new one manually. I replaced the releases. I recommend you to uninstall your current version and reinstall the new one manually this time (since I replaced the signature). Hope this won't be an issue!
Thanks!
Btw: This app is not in the Play Store (and obviously won't) so that is what might be triggering the Play Protect alert... Just speculating though. do you guys know how to fix this?
Thanks for the mod, hopeful I get the chance to use it.
Currently am device banned on my main device due to gps changing, do you have any suggested tweaks that can be used with your mod to circumvent that device ban? Thanks.
Laser422 said:
Thanks for the mod, hopeful I get the chance to use it.
Currently am device banned on my main device due to gps changing, do you have any suggested tweaks that can be used with your mod to circumvent that device ban? Thanks.
Click to expand...
Click to collapse
Hi there, @Laser422 !!
From my experience, what I can tell you is not to abuse this feature. Do credible movements and do NOT change the GPS location crazily: that is, you cannot be in France, Japan, Australia, Brazil and USA in less than 30 minutes (this will be a 90-95% probability of ban).
So far, I haven't had problems moving my GPS to nearby locations (around from 0 to 100 km around me). But again, don't teleport: that's not credible. Fake GPS must be used very punctually. Using it continuously even for short distances can also raise suspicions.
In any case, with Grindr Plus you have the 'Explore' mode enabled, with which you can move to any point on the planet without using Fake GPS and therefore not exposing yourself to the risks that its use implies for your Grindr account.
Hope this helps!
ElJaviLuki said:
Hi there! @Jvlc
Yeah, there was a problem when building the app, especifically the signature.
From now you should be able to update the hook without uninstalling the old version and then installing the new one manually. I replaced the releases. I recommend you to uninstall your current version and reinstall the new one manually this time (since I replaced the signature). Hope this won't be an issue!
Thanks!
Btw: This app is not in the Play Store (and obviously won't) so that is what might be triggering the Play Protect alert... Just speculating though. do you guys know how to fix this?
Click to expand...
Click to collapse
I upgraded my phone to Android 12 + Magisk + LSposed, and now your module (version 1.1) works perfectly well!
Jvlc said:
I upgraded my phone to Android 12 + Magisk + LSposed, and now your module (version 1.1) works perfectly well!
Click to expand...
Click to collapse
Happy to hear that!
Laser422 said:
Thanks for the mod, hopeful I get the chance to use it.
Currently am device banned on my main device due to gps changing, do you have any suggested tweaks that can be used with your mod to circumvent that device ban? Thanks.
Click to expand...
Click to collapse
This may be seem random, but are you using XPrivacyLua at all and do you have it activated for Grindr? It works great for privacy, but it doesn't play well with Grindr. I tested it out and when activated for Grindr it instantly threw up the banned screen on Grindr even though I was not actually banned.
Perhaps if that is your case, try disabling it (XPrivacyLua) temporarily and see what happens after that. Grindr does collect quite a large amount of data about it's users but I'm not sure XPrivacyLua prevents that as I didn't test it out for long but I know they track who you view and where from among other things, this is besides the who viewed you part of the app. They post the logs to 'https : //grindr . mobi/v3/logging/mobile/logs' with things such as this (only a small sample)
{
"id": 3600,
"name": "favorites_screen_viewed",
"timestamp": 1657769042553,
"params": {
"version_code": "8.11.0.99373",
"is_background": false
}
}, {
"id": 3601,
"name": "page",
"timestamp": 1657769060567,
"params": {
"version_code": "8.11.0.99373",
"type": "stop",
"page_name": "HomeActivity",
"is_background": false
}
}, {
"id": 3602,
"name": "view_profile_from_favorites",
"timestamp": 1657769060600,
"params": {
"version_code": "8.11.0.99373",
"is_background": false
}
}, {
"id": 3603,
"name": "screenshot_obs_noperm",
"timestamp": 1657769060608,
"params": {
"version_code": "8.11.0.99373",
"is_background": false
}
They track all your activities on there basically...
RobbieTechie said:
This may be seem random, but are you using XPrivacyLua at all and do you have it activated for Grindr? It works great for privacy, but it doesn't play well with Grindr. I tested it out and when activated for Grindr it instantly threw up the banned screen on Grindr even though I was not actually banned.
Perhaps if that is your case, try disabling it (XPrivacyLua) temporarily and see what happens after that. Grindr does collect quite a large amount of data about it's users but I'm not sure XPrivacyLua prevents that as I didn't test it out for long but I know they track who you view and where from among other things, this is besides the who viewed you part of the app. They post the logs to 'https : //grindr . mobi/v3/logging/mobile/logs' with things such as this (only a small sample)
{
"id": 3600,
"name": "favorites_screen_viewed",
"timestamp": 1657769042553,
"params": {
"version_code": "8.11.0.99373",
"is_background": false
}
}, {
"id": 3601,
"name": "page",
"timestamp": 1657769060567,
"params": {
"version_code": "8.11.0.99373",
"type": "stop",
"page_name": "HomeActivity",
"is_background": false
}
}, {
"id": 3602,
"name": "view_profile_from_favorites",
"timestamp": 1657769060600,
"params": {
"version_code": "8.11.0.99373",
"is_background": false
}
}, {
"id": 3603,
"name": "screenshot_obs_noperm",
"timestamp": 1657769060608,
"params": {
"version_code": "8.11.0.99373",
"is_background": false
}
They track all your activities on there basically...
Click to expand...
Click to collapse
Thanks for the response
I don’t have xprivacylua activated. Once dealing with a device ban, for whatever reason, I can’t figure out how to get around it. This mod doesn’t (and wasn’t intended to) aid in that.
Thanks a lot! I don't know if that's what your module is doing or is it just the older app version ( I used 8.6 till it forced me to update) but the incredibly annoying auto opening of keyboard when opening a profile does not happen.
EDIT Auto keyboard happens again for some reason. If it's possible, please make it go away
Also I would like to ask if you could make the dumb ads on top of message list dissapear
Jinnn92 said:
Thanks a lot! I don't know if that's what your module is doing or is it just the older app version ( I used 8.6 till it forced me to update) but the incredibly annoying auto opening of keyboard when opening a profile does not happen.
EDIT Auto keyboard happens again for some reason. If it's possible, please make it go away
Also I would like to ask if you could make the dumb ads on top of message list dissapear
Click to expand...
Click to collapse
As for the ads, look into using Adaway.
first of all thanks for resurrecting this mod ,will you please consider adding some theming option like pure black color and bubble style ?
thanks
.deleted.
onoakino said:
All features are working except the ability to keep the blocker's profile on inbox.
Click to expand...
Click to collapse
I don't think that's ever been a feature of this mod.
daekdroom said:
I don't think that's ever been a feature of this mod.
Click to expand...
Click to collapse
agreed. you're right. thank you for pointing that out. i'm deleting my original question so as not to bring people here from the outside looking for this non-existent feature i thought this mod has.

Categories

Resources