We tried to use Redexer to add logs into an app and while Redexer didn't produce any error during the execution, it seems that during the actual run of the application some instructions are buggy.
Bellow is the dump extracted with adb from the actual phone:
I/ActivityManager( 468): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.XXXXXXX/.UBUberActivity (has extras)} from pid 788
I/ActivityManager( 468): Start proc com.XXXXXXX for activity com.XXXXXXX/.UBUberActivity: pid=29458 uid=10117 gids={50117, 3003, 1028, 1015, 1023}
W/GooglePlayServicesUtil(28964): Google Play services out of date. Requires 6772000 but found 6599036
E/IcingUsageReportRunnabl(28964): Failed to connect when reporting usage: a{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null}
I/ActivityManager( 468): Killing 29240:com.android.documentsui/u0a33 (adj 15): empty #17
I/MultiDex(29458): VM with version 1.6.0 does not have multidex support
I/MultiDex(29458): install
I/MultiDex(29458): MultiDexExtractor.load(/data/app/com.XXXXXXX-1.apk, false)
I/MultiDex(29458): Detected that extraction must be performed.
I/MultiDex(29458): load found 0 secondary dex files
I/MultiDex(29458): install done
I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.RiderApplication.onCreate(com.XXXXXXX.client.core.app.RiderApplication@1103909280)
I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.injection.InjectionApplication.onCreate(com.XXXXXXX.client.core.app.RiderApplication@1103909280)
I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.injection.InjectionApplication.initObjectGraph(com.XXXXXXX.client.core.app.RiderApplication@1103909280)
I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.RiderApplication.getModules(com.XXXXXXX.client.core.app.RiderApplication@1103909280)
I/org.umd.logging(29458): Method < com.XXXXXXX.client.core.app.RiderApplication.getModules([Ljava.lang.Object;@1104888792)
D/dalvikvm(29458): Trying to load lib /data/app-lib/com.XXXXXXX-1/libsnappydb-native.so 0x41cc2f00
D/dalvikvm(29458): Added shared lib /data/app-lib/com.XXXXXXX-1/libsnappydb-native.so 0x41cc2f00
D/dalvikvm(29458): DexOpt: wanted instance, got static for method Lanalytics/RiderEvents$Impression;.
I/dalvikvm(29458): Could not find method analytics.RiderEvents$Impression., referenced from method com.google.gson.LongSerializationPolicy.values
W/dalvikvm(29458): VFY: unable to resolve virtual method 13: Lanalytics/RiderEvents$Impression;. ()V
D/dalvikvm(29458): VFY: replacing opcode 0x6e at 0x0002
D/dalvikvm(29458): DexOpt: wanted instance, got static for method Lanalytics/RiderEvents$Custom;.values
I/dalvikvm(29458): Could not find method analytics.RiderEvents$Custom.values, referenced from method com.google.gson.FieldNamingPolicy.values
W/dalvikvm(29458): VFY: unable to resolve virtual method 12: Lanalytics/RiderEvents$Custom;.values ()[Lanalytics/RiderEvents$Custom;
D/dalvikvm(29458): VFY: replacing opcode 0x6e at 0x0002
W/dalvikvm(29458): VFY: 'this' arg '[Ljava/lang/Object;' not instance of 'Landroid/app/Activity;'
W/dalvikvm(29458): VFY: rejecting opcode 0x6e at 0x0000
W/dalvikvm(29458): VFY: rejected Lcom/squareup/okhttp/internal/Util;.immutableList ([Ljava/lang/Object;)Ljava/util/List;
W/dalvikvm(29458): Verifier rejected class Lcom/squareup/okhttp/internal/Util;
D/AndroidRuntime(29458): Shutting down VM
W/dalvikvm(29458): threadid=1: thread exiting with uncaught exception (group=0x419abba8)
E/AndroidRuntime(29458): FATAL EXCEPTION: main
E/AndroidRuntime(29458): Process: com.XXXXXXX, PID: 29458
E/AndroidRuntime(29458): java.lang.VerifyError: com/squareup/okhttp/internal/Util
E/AndroidRuntime(29458): at com.squareup.okhttp.internal.DiskLruCache.(DiskLruCache.java:159)
E/AndroidRuntime(29458): at com.squareup.okhttp.internal.DiskLruCache.open(DiskLruCache.java:221)
E/AndroidRuntime(29458): at com.squareup.okhttp.Cache.(Cache.java:146)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule.provideOkHttpClient(RiderNetworkModule.java:105)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideOkHttpClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:289)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideOkHttpClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:250)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideUberRetrofitClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:625)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideUberRetrofitClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:580)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideRestAdapterProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:351)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideRestAdapterProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:303)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.OldLibraryModule$$ModuleAdapter$ProvideAnalyticsClientProvidesAdapter.get(OldLibraryModule$$ModuleAdapter.java:217)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.OldLibraryModule$$ModuleAdapter$ProvideAnalyticsClientProvidesAdapter.get(OldLibraryModule$$ModuleAdapter.java:160)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.RiderApplication$$InjectAdapter.injectMembers(RiderApplication$$InjectAdapter.java:145)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.RiderApplication$$InjectAdapter.injectMembers(RiderApplication$$InjectAdapter.java:23)
E/AndroidRuntime(29458): at dagger.ObjectGraph$DaggerObjectGraph.inject(ObjectGraph.java:281)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.injection.InjectionApplication.initObjectGraph(InjectionApplication.java)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.injection.InjectionApplication.onCreate(InjectionApplication.java)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.RiderApplication.onCreate(RiderApplication.java)
E/AndroidRuntime(29458): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
E/AndroidRuntime(29458): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4328)
E/AndroidRuntime(29458): at android.app.ActivityThread.access$1500(ActivityThread.java:135)
E/AndroidRuntime(29458): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
E/AndroidRuntime(29458): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(29458): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime(29458): at android.app.ActivityThread.main(ActivityThread.java:5001)
E/AndroidRuntime(29458): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(29458): at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(29458): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
E/AndroidRuntime(29458): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
E/AndroidRuntime(29458): at dalvik.system.NativeStart.main(Native Method)
W/ActivityManager( 468): Force finishing activity com.XXXXXXX/.UBUberActivity
I/WindowManager( 468): Screenshot max retries 4 of Token{42d9f560 ActivityRecord{42d9f400 u0 com.XXXXXXX/.UBUberActivity t36 f}} appWin=Window{42da4e20 u0 Starting com.XXXXXXX} drawState=4
W/WindowManager( 468): Screenshot failure taking screenshot for (720x1280) to layer 21035
W/ActivityManager( 468): Activity pause timeout for ActivityRecord{42d9f400 u0 com.XXXXXXX/.UBUberActivity t36 f}
W/RemoteServiceHelper(28964): Google Play Services not available: SERVICE_VERSION_UPDATE_REQUIRED
I/Process (29458): Sending signal. PID: 29458 SIG: 9
I/ActivityManager( 468): Process com.XXXXXXX (pid 29458) has died.
W/InputMethodManagerService( 468): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@4287db70 attribute=null, token = android.os.BinderProxy@421940c0
We tried to use Redexer to add logs into an app and while Redexer didn't produce any error during the execution, it seems that during the actual run of the application some instructions are buggy.
Bellow is the dump extracted with adb from the actual phone:
I/ActivityManager( 468): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.XXXXXXX/.UBUberActivity (has extras)} from pid 788 I/ActivityManager( 468): Start proc com.XXXXXXX for activity com.XXXXXXX/.UBUberActivity: pid=29458 uid=10117 gids={50117, 3003, 1028, 1015, 1023} W/GooglePlayServicesUtil(28964): Google Play services out of date. Requires 6772000 but found 6599036 E/IcingUsageReportRunnabl(28964): Failed to connect when reporting usage: a{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null} I/ActivityManager( 468): Killing 29240:com.android.documentsui/u0a33 (adj 15): empty #17 I/MultiDex(29458): VM with version 1.6.0 does not have multidex support I/MultiDex(29458): install I/MultiDex(29458): MultiDexExtractor.load(/data/app/com.XXXXXXX-1.apk, false) I/MultiDex(29458): Detected that extraction must be performed. I/MultiDex(29458): load found 0 secondary dex files I/MultiDex(29458): install done I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.RiderApplication.onCreate(com.XXXXXXX.client.core.app.RiderApplication@1103909280) I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.injection.InjectionApplication.onCreate(com.XXXXXXX.client.core.app.RiderApplication@1103909280) I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.injection.InjectionApplication.initObjectGraph(com.XXXXXXX.client.core.app.RiderApplication@1103909280) I/org.umd.logging(29458): Method > com.XXXXXXX.client.core.app.RiderApplication.getModules(com.XXXXXXX.client.core.app.RiderApplication@1103909280) I/org.umd.logging(29458): Method < com.XXXXXXX.client.core.app.RiderApplication.getModules([Ljava.lang.Object;@1104888792) D/dalvikvm(29458): Trying to load lib /data/app-lib/com.XXXXXXX-1/libsnappydb-native.so 0x41cc2f00 D/dalvikvm(29458): Added shared lib /data/app-lib/com.XXXXXXX-1/libsnappydb-native.so 0x41cc2f00 D/dalvikvm(29458): DexOpt: wanted instance, got static for method Lanalytics/RiderEvents$Impression;.
I/dalvikvm(29458): Could not find method analytics.RiderEvents$Impression., referenced from method com.google.gson.LongSerializationPolicy.values
W/dalvikvm(29458): VFY: unable to resolve virtual method 13: Lanalytics/RiderEvents$Impression;. ()V
D/dalvikvm(29458): VFY: replacing opcode 0x6e at 0x0002
D/dalvikvm(29458): DexOpt: wanted instance, got static for method Lanalytics/RiderEvents$Custom;.values
I/dalvikvm(29458): Could not find method analytics.RiderEvents$Custom.values, referenced from method com.google.gson.FieldNamingPolicy.values
W/dalvikvm(29458): VFY: unable to resolve virtual method 12: Lanalytics/RiderEvents$Custom;.values ()[Lanalytics/RiderEvents$Custom;
D/dalvikvm(29458): VFY: replacing opcode 0x6e at 0x0002
W/dalvikvm(29458): VFY: 'this' arg '[Ljava/lang/Object;' not instance of 'Landroid/app/Activity;'
W/dalvikvm(29458): VFY: rejecting opcode 0x6e at 0x0000
W/dalvikvm(29458): VFY: rejected Lcom/squareup/okhttp/internal/Util;.immutableList ([Ljava/lang/Object;)Ljava/util/List;
W/dalvikvm(29458): Verifier rejected class Lcom/squareup/okhttp/internal/Util;
D/AndroidRuntime(29458): Shutting down VM
W/dalvikvm(29458): threadid=1: thread exiting with uncaught exception (group=0x419abba8)
E/AndroidRuntime(29458): FATAL EXCEPTION: main
E/AndroidRuntime(29458): Process: com.XXXXXXX, PID: 29458
E/AndroidRuntime(29458): java.lang.VerifyError: com/squareup/okhttp/internal/Util
E/AndroidRuntime(29458): at com.squareup.okhttp.internal.DiskLruCache.(DiskLruCache.java:159)
E/AndroidRuntime(29458): at com.squareup.okhttp.internal.DiskLruCache.open(DiskLruCache.java:221)
E/AndroidRuntime(29458): at com.squareup.okhttp.Cache.(Cache.java:146)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule.provideOkHttpClient(RiderNetworkModule.java:105)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideOkHttpClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:289)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideOkHttpClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:250)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideUberRetrofitClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:625)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideUberRetrofitClientProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:580)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideRestAdapterProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:351)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.RiderNetworkModule$$ModuleAdapter$ProvideRestAdapterProvidesAdapter.get(RiderNetworkModule$$ModuleAdapter.java:303)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.OldLibraryModule$$ModuleAdapter$ProvideAnalyticsClientProvidesAdapter.get(OldLibraryModule$$ModuleAdapter.java:217)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.module.OldLibraryModule$$ModuleAdapter$ProvideAnalyticsClientProvidesAdapter.get(OldLibraryModule$$ModuleAdapter.java:160)
E/AndroidRuntime(29458): at dagger.internal.Linker$SingletonBinding.get(Linker.java:364)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.RiderApplication$$InjectAdapter.injectMembers(RiderApplication$$InjectAdapter.java:145)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.RiderApplication$$InjectAdapter.injectMembers(RiderApplication$$InjectAdapter.java:23)
E/AndroidRuntime(29458): at dagger.ObjectGraph$DaggerObjectGraph.inject(ObjectGraph.java:281)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.injection.InjectionApplication.initObjectGraph(InjectionApplication.java)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.injection.InjectionApplication.onCreate(InjectionApplication.java)
E/AndroidRuntime(29458): at com.XXXXXXX.client.core.app.RiderApplication.onCreate(RiderApplication.java)
E/AndroidRuntime(29458): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
E/AndroidRuntime(29458): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4328)
E/AndroidRuntime(29458): at android.app.ActivityThread.access$1500(ActivityThread.java:135)
E/AndroidRuntime(29458): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
E/AndroidRuntime(29458): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(29458): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime(29458): at android.app.ActivityThread.main(ActivityThread.java:5001)
E/AndroidRuntime(29458): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(29458): at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(29458): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
E/AndroidRuntime(29458): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
E/AndroidRuntime(29458): at dalvik.system.NativeStart.main(Native Method)
W/ActivityManager( 468): Force finishing activity com.XXXXXXX/.UBUberActivity
I/WindowManager( 468): Screenshot max retries 4 of Token{42d9f560 ActivityRecord{42d9f400 u0 com.XXXXXXX/.UBUberActivity t36 f}} appWin=Window{42da4e20 u0 Starting com.XXXXXXX} drawState=4
W/WindowManager( 468): Screenshot failure taking screenshot for (720x1280) to layer 21035
W/ActivityManager( 468): Activity pause timeout for ActivityRecord{42d9f400 u0 com.XXXXXXX/.UBUberActivity t36 f}
W/RemoteServiceHelper(28964): Google Play Services not available: SERVICE_VERSION_UPDATE_REQUIRED
I/Process (29458): Sending signal. PID: 29458 SIG: 9
I/ActivityManager( 468): Process com.XXXXXXX (pid 29458) has died.
W/InputMethodManagerService( 468): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@4287db70 attribute=null, token = android.os.BinderProxy@421940c0