Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Grindr 9.7.0 #45

Merged
merged 22 commits into from
May 7, 2023
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ plugins {
ext.versionMajor = 1
ext.versionMinor = 1
ext.versionPatch = 6
ext.grindrVersion = '8.23.0'
ext.grindrVersion = '9.6.0'

private String genVersionName() {
String versionName = "${ext.versionMajor}.${ext.versionMinor}.${ext.versionPatch}"
Expand All @@ -18,12 +18,12 @@ private String getVersionNameSuffix() {
}

android {
compileSdk 32
compileSdk 33

defaultConfig {
applicationId 'com.eljaviluki.grindrplus'
minSdk 21
targetSdk 32
targetSdk 33
versionCode 14
versionName genVersionName()
versionNameSuffix getVersionNameSuffix()
Expand Down
6 changes: 3 additions & 3 deletions app/src/main/java/com/eljaviluki/grindrplus/Hooker.kt
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,11 @@ class Hooker : IXposedHookLoadPackage {
e.message?.let { Logger.xLog(it) }
}

try {
/*try {
Hooks.preventRecordProfileViews()
} catch (e : Exception) {
e.message?.let { Logger.xLog(it) }
}
}*/

try {
Hooks.makeMessagesAlwaysRemovable()
Expand All @@ -126,7 +126,7 @@ class Hooker : IXposedHookLoadPackage {
}

companion object {
const val TARGET_PKG_VERSION_NAME = "8.23.0"
const val TARGET_PKG_VERSION_NAME = "9.6.0"

var pkgParam: LoadPackageParam by InitOnce()
var appContext: Context by InitOnce()
Expand Down
13 changes: 9 additions & 4 deletions app/src/main/java/com/eljaviluki/grindrplus/Hooks.kt
Original file line number Diff line number Diff line change
Expand Up @@ -507,12 +507,17 @@ object Hooks {
}

fun notifyBlockStatusViaToast() {
val class_BlockByHelper = findClass(
GApp.persistence.cache.BlockByHelper,
val class_BlockedByHelper = findClass(
GApp.persistence.cache.BlockedByHelper,
Hooker.pkgParam.classLoader
)

findAndHookMethod(class_BlockByHelper, GApp.persistence.cache.BlockByHelper_.addBlockByProfile, String::class.java, object : XC_MethodHook(){
val class_Continuation = findClass(
"kotlin.coroutines.Continuation",
Hooker.pkgParam.classLoader
)

findAndHookMethod(class_BlockedByHelper, GApp.persistence.cache.BlockByHelper_.addBlockByProfile, String::class.java, class_Continuation, object : XC_MethodHook(){
override fun beforeHookedMethod(param: MethodHookParam?) {
val profileId: String = param!!.args[0] as String
ContextCompat.getMainExecutor(Hooker.appContext).execute {
Expand All @@ -521,7 +526,7 @@ object Hooks {
}
})

findAndHookMethod(class_BlockByHelper, GApp.persistence.cache.BlockByHelper_.removeBlockByProfile, String::class.java, object : XC_MethodHook(){
findAndHookMethod(class_BlockedByHelper, GApp.persistence.cache.BlockByHelper_.removeBlockByProfile, String::class.java, class_Continuation, object : XC_MethodHook(){
override fun beforeHookedMethod(param: MethodHookParam?) {
val profileId: String = param!!.args[0] as String
ContextCompat.getMainExecutor(Hooker.appContext).execute {
Expand Down
26 changes: 13 additions & 13 deletions app/src/main/java/com/eljaviluki/grindrplus/Obfuscation.kt
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ object Obfuscation {
object Experiment {
private const val _experiment = "$_base.experiment"

const val IExperimentsManager = "$_experiment.c"
const val IExperimentsManager = "$_experiment.a"
}
}

object experiment {
private const val _experiment = Constants.GRINDR_PKG + ".experiment"

const val Experiments = "$_experiment.b"
const val Experiments = "$_experiment.f"
object Experiments_ {
const val uncheckedIsEnabled_expMgr = "c"
}
Expand Down Expand Up @@ -68,7 +68,7 @@ object Obfuscation {
object cache {
private const val _cache = "$_persistence.cache"

const val BlockByHelper = "$_cache.BlockByHelper"
const val BlockedByHelper = "$_cache.BlockedByHelper"
object BlockByHelper_ {
const val addBlockByProfile = "addBlockByProfile"
const val removeBlockByProfile = "removeBlockByProfile"
Expand Down Expand Up @@ -102,23 +102,23 @@ object Obfuscation {

const val color = "$_R.m0"
object color_ {
const val grindr_gold_star_gay = "D"
const val grindr_pure_white = "T"
const val grindr_gold_star_gay = "F"
const val grindr_pure_white = "V"
}
}

object storage {
private const val _storage = Constants.GRINDR_PKG + ".storage"

const val UserSession = "$_storage.f1"
const val UserSession = "$_storage.z0"

const val IUserSession = "$_storage.UserSession"
object IUserSession_ {
const val hasFeature_feature = "a"
const val isFree = "k"
const val isNoXtraUpsell = "r"
const val isXtra = "g"
const val isUnlimited = "s"
const val isFree = "r"
const val isNoXtraUpsell = "g"
const val isXtra = "o"
const val isUnlimited = "x"
}
}

Expand All @@ -139,15 +139,15 @@ object Obfuscation {

const val ChatBaseFragmentV2 = "$_chat.ChatBaseFragmentV2"
object ChatBaseFragmentV2_ {
const val _canBeUnsent = "X1"
TebbeUbben marked this conversation as resolved.
Show resolved Hide resolved
const val _canBeUnsent = "w1"
}
}
}

object utils {
private const val _utils = Constants.GRINDR_PKG + ".utils"

const val ProfileUtils = "$_utils.v0"
const val ProfileUtils = "$_utils.n0"
object ProfileUtils_ {
const val onlineIndicatorDuration = "b"
}
Expand All @@ -156,7 +156,7 @@ object Obfuscation {
object view {
private const val _view = Constants.GRINDR_PKG + ".view"

const val ExtendedProfileFieldView = "$_view.v4"
const val ExtendedProfileFieldView = "$_view.z4"
object ExtendedProfileFieldView_ {
const val setLabel = "l"
const val setValue = "n"
Expand Down