marzika/Snapprefs

ClassNotFoundException from XposedHelpers.findAndHookMethod()

Closed this issue · 1 comments

Expected Behavior

Snapprefs dev build should work with Snapchat 9.39.5

Current Behavior

No features is currently working on Bluestack with Xposed framework on Snapchat 9.39.5
It was totally working with Snapprefs 2.0.0 beta and Snapchat 9.31.1
I don't know if it can help but when I run for the first time Snapprefs, a message displayed : Registration with Web server failed

Steps to Reproduce (for bugs)

  1. Get a Bluestack PreRooted and install Xposed Framework with BStweaker
  2. Install Snapchat 9.39.5 and Snapprefs from the artefact on Jenkins
  3. Try to make it work Snapprefs
  4. See the Xposed logs:
----------------- SNAPPREFS HOOKED -----------------
SnapChat Version: 9.39.5.0 (933)
SnapPrefs Version: 2.0.0 beta (25)
Snapprefs: [Forced] Performing LogType load
Snapprefs: [Forced] Loaded [FORCED, DATABASE, PREFS, PREMIUM, GROUPS, LENS, SAVING, DEBUG, CHAT, FILTER] log types
Snapprefs: [Debug] Loading map from xposed
Snapprefs: [Prefs] XPrefs file exists: /data/data/com.marz.snapprefs/shared_prefs/com.marz.snapprefs_preferences.xml
Snapprefs: [Prefs] Loading preferences
Snapprefs: [Prefs] Null preferences... Creating new
Snapprefs: [Prefs] Package name: com.marz.snapprefs
Snapprefs: [Prefs] Making readable
Snapprefs: [Prefs] Starting spin locker
Snapprefs: [Prefs] Current spin count: 500
Snapprefs: [Prefs] Current spin count: 1000
Snapprefs: [Prefs] Completed 1199 spins
Snapprefs: [Prefs] loading preference map: true
Snapprefs: [Prefs] Map size: 2
de.robv.android.xposed.XposedHelpers$ClassNotFoundError: java.lang.ClassNotFoundException: abc
	at de.robv.android.xposed.XposedHelpers.findClass(XposedHelpers.java:52)
	at de.robv.android.xposed.XposedHelpers.findAndHookMethod(XposedHelpers.java:136)
	at com.marz.snapprefs.HookMethods.handleLoadPackage(HookMethods.java:290)
	at de.robv.android.xposed.IXposedHookLoadPackage$Wrapper.handleLoadPackage(IXposedHookLoadPackage.java:20)
	at de.robv.android.xposed.callbacks.XC_LoadPackage.call(XC_LoadPackage.java:34)
	at de.robv.android.xposed.callbacks.XCallback.callAll(XCallback.java:70)
	at de.robv.android.xposed.XposedBridge$1.beforeHookedMethod(XposedBridge.java:208)
	at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:611)
	at android.app.ActivityThread.handleBindApplication(Native Method)
	at android.app.ActivityThread.access$1500(ActivityThread.java:135)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loop(Looper.java:136)
	at android.app.ActivityThread.main(ActivityThread.java:5021)
	at java.lang.reflect.Method.invokeNative(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:515)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:827)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:643)
	at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
	at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: abc
	at java.lang.Class.classForName(Native Method)
	at java.lang.Class.forName(Class.java:251)
	at external.org.apache.commons.lang3.ClassUtils.getClass(ClassUtils.java:823)
	at de.robv.android.xposed.XposedHelpers.findClass(XposedHelpers.java:50)
	... 19 more
Caused by: java.lang.NoClassDefFoundError: abc
	... 23 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "abc" on path: DexPathList[[zip file "/data/app/com.snapchat.android-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.snapchat.android-2, /system/lib, /system/lib/arm, /data/downloads]]
	at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
	... 23 more
Snapprefs: [Debug] Initialising preferences from xposed
Snapprefs: [Debug] Adding Save Buttons
Snapprefs: [Debug] Updating view_snap.snap_container layout
java.lang.NullPointerException
	at com.marz.snapprefs.HookedLayouts.px(HookedLayouts.java:545)
	at com.marz.snapprefs.HookedLayouts$3.handleLayoutInflated(HookedLayouts.java:170)
	at de.robv.android.xposed.callbacks.XC_LayoutInflated.call(XC_LayoutInflated.java:33)
	at de.robv.android.xposed.callbacks.XCallback.callAll(XCallback.java:70)
	at android.content.res.XResources$2.afterHookedMethod(XResources.java:199)
	at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:645)
	at android.view.LayoutInflater.inflate(Native Method)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
	at YG.<init>(SourceFile:232)
	at YG.<init>(SourceFile:195)
	at com.snapchat.android.camera.CameraFragment.a(SourceFile:743)
	at com.snapchat.android.camera.BaseCameraFragment.onCreateView(SourceFile:101)
	at com.snapchat.android.camera.CameraFragment.onCreateView(SourceFile:532)
	at android.support.v4.app.Fragment.performCreateView(SourceFile:1974)
	at ae.a(SourceFile:1067)
	at ae.a(SourceFile:1252)
	at Z.run(SourceFile:738)
	at ae.i(SourceFile:1617)
	at ae.b(SourceFile:570)
	at aya.finishUpdate(SourceFile:122)
	at android.support.v4.view.ViewPager.populate(SourceFile:1177)
	at android.support.v4.view.ViewPager.populate(SourceFile:1025)
	at android.support.v4.view.ViewPager.onMeasure(SourceFile:1545)
	at com.snapchat.android.ui.viewpager.SnapchatViewPager.onMeasure(SourceFile:109)
	at android.view.View.measure(View.java:16558)
	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
	at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
	at android.view.View.measure(View.java:16558)
	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
	at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
	at android.view.View.measure(View.java:16558)
	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
	at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
	at android.view.View.measure(View.java:16558)
	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
	at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
	at android.view.View.measure(View.java:16558)
	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
	at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
	at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2291)
	at android.view.View.measure(View.java:16558)
	at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:1923)
	at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1120)
	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1302)
	at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1007)
	at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5677)
	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
	at android.view.Choreographer.doCallbacks(Choreographer.java:574)
	at android.view.Choreographer.doFrame(Choreographer.java:544)
	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
	at android.os.Handler.handleCallback(Handler.java:733)
	at android.os.Handler.dispatchMessage(Handler.java:95)
	at android.os.Looper.loop(Looper.java:136)
	at android.app.ActivityThread.main(ActivityThread.java:5021)
	at java.lang.reflect.Method.invokeNative(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:515)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:827)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:643)
	at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
	at dalvik.system.NativeStart.main(Native Method)

Your Environment

Fixed in bfaf407