Git Product home page Git Product logo

Comments (14)

shroudedcode avatar shroudedcode commented on May 22, 2024 2

I've taken a closer look at the APK using APKLab and the Smalidea debugger (my process for that is roughly described here) and found the source of at least some of the problems:

Inside the smali_classes2/t3/s.smali file there's a a(Ljava/lang/String;Ljava/util/List;)V method that throws an SSLPeerUnverifiedException when it detects the usage of an unofficial certificate. To disable it I replaced the whole thing with the following lines:

.method public a(Ljava/lang/String;Ljava/util/List;)V
    .locals 0
    return-void
.end method

After rebuilding the APK and installing it again most of the issues were gone. I think there's still a few features that are broken (I'm getting "Something strange occurred" messages at the bottom from time to time), but I can watch videos now and look at the unencrypted traffic. If you want to try this too, please follow the "Making manual changes" guide in the README (either approach will work, but I recommend trying out APKLab just because it's such a nice tool) and apply the change I described above.

I'll keep investigating this to see if there's a way to automate this kind of change without hard-coding any Vimeo classes (I don't want to add app-specific patches to apk-mitm).

from apk-mitm.

shroudedcode avatar shroudedcode commented on May 22, 2024

[...] api.vimeo.com which is used for login and other related functions still failed with a shady error , which roughly translates to "we don't know what went wrong".

That's to be expected as it's likely some kind of certificate pinning error, which simply never occurs in the unpatched app, so the developers didn't bother to add a human-readable error message for it.

Please connect your device to ADB, run adb logcat, and reproduce the error to see if you can find a relevant stack trace.

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024

lots of stuff to sift through, so far for the app itself there are only problems with the analytics printed.
Are cert errors attributed to the app or to the library they use to connect?

01-25 14:35:27.323 2929 10155 W GAv4-SVC: Network compressed POST connection error: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

But i don't think that is vimeo.
I need to dig deeper later i guess.

from apk-mitm.

shroudedcode avatar shroudedcode commented on May 22, 2024

Are cert errors attributed to the app or to the library they use to connect?

Usually you'd see the app and the library because they're both part of the stack trace. See this issue for an example of that (okhttp3.* is the library there and com.myapp.* the app). A lot of errors related to certificate pinning also come from the system, so you might see java.* too. In any case having the full stack trace with all the lines is usually best because you can track down the exact line where an error originated.

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024
	Line 59174: 01-25 14:31:10.659   677   677 E ANDR-IOP: IOP HAL: Received pkg_name = com.vimeo.android.videoapp pid = -1
1-25 14:31:11.310  1841  2540 W ActivityManager: Unable to start service Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms } U=0: not found
01-25 14:31:11.310  1841  2540 W ActivityManager: Unbind failed: could not find connection for android.os.BinderProxy@2c7857f
01-25 14:31:11.310  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.311  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.gcm.GcmTaskService" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.311  8882  8882 I ndroid.videoap: 
01-25 14:31:11.311  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.311  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.gcm.GcmTaskService" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.311  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.311  8882  8882 I ndroid.videoap: 
01-25 14:31:11.312  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.312  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.gcm.GcmTaskService" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.312  8882  8882 I ndroid.videoap: 
01-25 14:31:11.312  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.312  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.gcm.GcmTaskService" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.312  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.312  8882  8882 I ndroid.videoap: 
01-25 14:31:11.314  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.314  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.315  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.315  8882  8882 I ndroid.videoap: 
01-25 14:31:11.315  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.315  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.315  8882  8882 I ndroid.videoap: 
01-25 14:31:11.315  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.315  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.316  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.316  8882  8882 I ndroid.videoap: 
01-25 14:31:11.316  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.316  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.316  8882  8882 I ndroid.videoap: 
01-25 14:31:11.316  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.316  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.316  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.317  8882  8882 I ndroid.videoap: 
01-25 14:31:11.317  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.317  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.317  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.317  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.318  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.318  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.319  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.319  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.319  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.320  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.320  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.320  8882  8882 I ndroid.videoap: 
01-25 14:31:11.320  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.320  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.321  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.321  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.322  8882  8882 I ndroid.videoap: 
01-25 14:31:11.322  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.322  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.322  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.322  8882  8882 I ndroid.videoap: 
01-25 14:31:11.323  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.323  8882  8882 I ndroid.videoap: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.location.LocationListener" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk"],nativeLibraryDirectories=[/data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/lib/arm64, /data/app/com.vimeo.android.videoapp-Joq-NMUJ8nLOxjBjS_rlTg==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.323  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.324  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.324  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.324  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.324  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.324  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.325  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.325  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.326  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.326  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.327  8882  8933 I FA      : Tag Manager is not found and thus will not be used
01-25 14:31:11.327  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:161)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.HookStubManager.hookBridge(int, com.swift.sandhook.xposedcompat.hookstub.CallOriginCallBack, long[]) (HookStubManager.java:306)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at long com.swift.sandhook.xposedcompat.hookstub.MethodHookerStubs64.stub_hook_0(long, long) (MethodHookerStubs64.java:198)
01-25 14:31:11.327  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.328  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6806)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.328  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.328  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.329  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.329  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.329  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.330  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.330  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.access$1200(android.app.ActivityThread, android.app.ActivityThread$AppBindData) (ActivityThread.java:200)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:171)
01-25 14:31:11.330  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.331  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.Localytics.autoIntegrate(android.app.Application) (SourceFile:2)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void n3.p.a.u.i.onCreate() (SourceFile:27)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
01-25 14:31:11.331  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at java.lang.Object com.swift.sandhook.SandHook.callOriginMethod(boolean, java.lang.reflect.Member, java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) (SandHook.java:183)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void com.vimeo.android.videoapp.VimeoApp.onCreate() (SourceFile:1)
01-25 14:31:11.331  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread.handleBindApplication(android.app.ActivityThread$AppBindData) (ActivityThread.java:5945)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:873)
01-25 14:31:11.332  8882  8882 I ndroid.videoap: 
01-25 14:31:11.332  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.LocationManager>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationListener;
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:17)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.autoIntegrate(android.app.Application) (SourceFile:3)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void android.app.Instrumentation.callApplicationOnCreate(android.app.Application) (Instrumentation.java:1155)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1673)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void android.os.Looper.loop() (Looper.java:201)
01-25 14:31:11.332  8882  8882 I ndroid.videoap: Rejecting re-init on previously-failed class java.lang.Class<com.localytics.android.BackgroundService>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/gcm/GcmTaskService;
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.createHandlers() (SourceFile:13)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.localytics.android.LocalyticsManager.integrate(android.content.Context, java.lang.String) (SourceFile:26)
01-25 14:31:11.332  8882  8882 I ndroid.videoap:   at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:547)
01-25 14:31:11.335  1841  6427 I chatty  : uid=1000(system) Binder:1841_14 expire 69 lines
01-25 14:31:11.336  8882  8933 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook in
01-25 14:31:11.339  8882  8933 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook in
01-25 14:31:11.351  8882  8971 D SandHook: method <public android.app.LoadedApk(android.app.ActivityThread,android.content.pm.ApplicationInfo,android.content.res.CompatibilityInfo,java.lang.ClassLoader,boolean,boolean,boolean)> hook in
01-25 14:31:11.351  8882  8971 D EdXposed: LoadedApk#<init> starts: pkg=com.vimeo.android.videoapp, prc=com.vimeo.android.videoapp
01-25 14:31:11.351  8882  8971 D EdXposed: LoadedApk#<init> ends: /data/app/com.google.android.gms-qj8bpIAnXx91d_MDWW-heA==/base.apk: pkg=com.vimeo.android.videoapp, prc=com.vimeo.android.videoapp
01-25 14:31:11.354  8882  8971 W ndroid.videoap: Unknown chunk type '200'.
01-25 14:31:11.361  1841  2986 I chatty  : uid=1000(system) Binder:1841_F expire 36 lines
01-25 14:31:11.361  8882  8882 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook in
01-25 14:31:11.362  8882  8882 D EdXposed: LoadedApk#getClassLoader starts: pkg=com.vimeo.android.videoapp, prc=com.vimeo.android.videoapp
01-25 14:31:11.370  8882  8882 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook in
01-25 14:31:11.391  8882  8882 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook in
01-25 14:31:11.397  8882  8882 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook in
01-25 14:31:11.398  8882  8882 D SandHook: method <public android.app.Activity android.app.Instrumentation.newActivity(java.lang.ClassLoader,java.lang.String,android.content.Intent) throws

I assume this one is vimeo but so far there is just gms and localytics stuff on the fiurst glance and no blatant error. Do you see some?

from apk-mitm.

shroudedcode avatar shroudedcode commented on May 22, 2024

These logs are definitely from Vimeo, but none of them seem to be obviously proxy-related... You said that not all behavior of the app was broken, so I would start the app, run adb logcat | grep videoap: to get a constant stream of logs coming from the app, and then trigger one of the features that you know are broken a couple of times to see if there are recurring errors.

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024

Should the app still work without proxy if patched? Vimeo fails to connect without proxy

from apk-mitm.

shroudedcode avatar shroudedcode commented on May 22, 2024

In theory yes, but in practice there are three cases where it won't work:

  1. The patches that apk-mitm applied somehow broke the app.
  2. The app contains tampering protection code (like signature verification).
  3. Apktool, which apk-mitm is based on, didn't properly decode or re-encode part of the app.

You can check whether 1. applies by running apk-mitm again with the --skip-patches option. This will decode and re-encode the app without making any deliberate changes. If the resulting APK is still causing issues, then you'll have to look into the other two cases.

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024

It looks like this so far, and the logcat log is absolutely not helpful

Raw Vimeo, no repack, no patches

SSL Intercept OFF
Browsing videos: videos shown, they play
Login: works, profile info shown

SSL Intercept ON
Browsing videos: not working/something strange happened
Login: not working/something strange happened

Repacked, no patches

SSL Intercept OFF
Browsing videos: videos shown, they play
Login: works, profile info shown

SSL Intercept ON
Browsing videos: not working/something strange happened
Login: not working/something strange happened

Vimeo patched and repacked

SSL Intercept OFF
Browsing videos: not working/something strange happened
Login: not working/something strange happened

SSL Intercept ON
Browsing videos: not working/something strange happened
Login: not working/something strange happened

Very unfortunate.
Patches where done with version 0.11.0 which was just uploaded.

from apk-mitm.

shroudedcode avatar shroudedcode commented on May 22, 2024

I just spent some time looking into this and was able to reproduce the behavior you described. Eventually I realized that Vimeo's Network Security Config already allows user-added certificates (which is usually something that apk-mitm changes):

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="false">
        <domain includeSubdomains="true">api.vimeo.com</domain>
        <trust-anchors>
            <certificates src="system" />
            <!-- This line was *already there* -->
            <certificates src="user" />
        </trust-anchors>
    </domain-config>
</network-security-config>

It also explicitly allows system certificates which I always thought was implied, but I guess it's not, at least not in this context. I manually added <certificates src="system" /> to the Network Security Config created by apk-mitm (located at res/xml/nsc_mitm.xml) and then I was able to use the patched app without problems. Note that I'm currently not using a proxy, so your problems might not be entirely fixed, but it's progress.

I'm going to investigate the system certificate thing a bit more, but I'll probably release a fix that adds that line by default. In the meantime you can run apk-mitm with the --wait flag to manually add <certificates src="system" /> to the res/xml/nsc_mitm.xml file (you can find it inside the temporary directory logged at the top). Let me know if that works!

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024

so we are at a state where the patched app works if you don't MitM ssl, but fails if you attempt to do so

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024

It seems there are a few errors in


01-30 19:00:15.363 18240 18673 W SingleHostAsyncVerifier: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:15.363 18240 18673 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:661)


01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: Error performing check:  [CONTEXT service_id=244 ]
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: cpda: UNAVAILABLE
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at cpcz.k(:com.google.android.gms@[email protected] (100400-351607135):0)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at thm.c(:com.google.android.gms@[email protected] (100400-351607135):6)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at avtu.c(:com.google.android.gms@[email protected] (100400-351607135):7)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at avtu.c(:com.google.android.gms@[email protected] (100400-351607135):15)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at avtu.c(:com.google.android.gms@[email protected] (100400-351607135):15)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at avtu.b(:com.google.android.gms@[email protected] (100400-351607135):0)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at rfw.run(:com.google.android.gms@[email protected] (100400-351607135):1)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at tne.c(:com.google.android.gms@[email protected] (100400-351607135):6)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at tne.run(:com.google.android.gms@[email protected] (100400-351607135):7)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at ttb.run(:com.google.android.gms@[email protected] (100400-351607135):0)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at java.lang.Thread.run(Thread.java:764)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(:com.google.android.gms@[email protected] (100400-351607135):25)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at atht.b(:com.google.android.gms@[email protected] (100400-351607135):2)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at atht.createSocket(:com.google.android.gms@[email protected] (100400-351607135):9)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at cppy.a(:com.google.android.gms@[email protected] (100400-351607135):1)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at cppo.run(:com.google.android.gms@[email protected] (100400-351607135):31)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at cpnz.run(:com.google.android.gms@[email protected] (100400-351607135):2)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	... 6 more
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:661)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:539)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:605)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:495)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:418)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:339)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:88)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at java.lang.reflect.Method.invoke(Native Method)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.Platform.checkTrusted(:com.google.android.gms@[email protected] (100400-351607135):2)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.Platform.checkServerTrusted(:com.google.android.gms@[email protected] (100400-351607135):1)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.verifyCertificateChain(:com.google.android.gms@[email protected] (100400-351607135):5)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.NativeSsl.doHandshake(:com.google.android.gms@[email protected] (100400-351607135):6)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(:com.google.android.gms@[email protected] (100400-351607135):16)
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	... 11 more
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:23.394 18240 19852 W SingleHostAsyncVerifier: 	... 26 more
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: Error performing check:  [CONTEXT service_id=244 ]
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: cpda: UNAVAILABLE
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at cpcz.k(:com.google.android.gms@[email protected] (100400-351607135):0)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at thm.c(:com.google.android.gms@[email protected] (100400-351607135):6)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at avtu.c(:com.google.android.gms@[email protected] (100400-351607135):7)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at avtu.c(:com.google.android.gms@[email protected] (100400-351607135):15)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at avtu.c(:com.google.android.gms@[email protected] (100400-351607135):15)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at avtu.b(:com.google.android.gms@[email protected] (100400-351607135):0)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at rfw.run(:com.google.android.gms@[email protected] (100400-351607135):1)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at tne.c(:com.google.android.gms@[email protected] (100400-351607135):6)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at tne.run(:com.google.android.gms@[email protected] (100400-351607135):7)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at ttb.run(:com.google.android.gms@[email protected] (100400-351607135):0)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at java.lang.Thread.run(Thread.java:764)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(:com.google.android.gms@[email protected] (100400-351607135):25)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at atht.b(:com.google.android.gms@[email protected] (100400-351607135):2)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at atht.createSocket(:com.google.android.gms@[email protected] (100400-351607135):9)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at cppy.a(:com.google.android.gms@[email protected] (100400-351607135):1)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at cppo.run(:com.google.android.gms@[email protected] (100400-351607135):31)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at cpnz.run(:com.google.android.gms@[email protected] (100400-351607135):2)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	... 6 more
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:661)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:539)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:605)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:495)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:418)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:339)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:88)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at java.lang.reflect.Method.invoke(Native Method)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.Platform.checkTrusted(:com.google.android.gms@[email protected] (100400-351607135):2)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.Platform.checkServerTrusted(:com.google.android.gms@[email protected] (100400-351607135):1)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.verifyCertificateChain(:com.google.android.gms@[email protected] (100400-351607135):5)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.NativeSsl.doHandshake(:com.google.android.gms@[email protected] (100400-351607135):6)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(:com.google.android.gms@[email protected] (100400-351607135):16)
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	... 11 more
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
01-30 19:00:23.394 18240 25137 W SingleHostAsyncVerifier: 	... 26 more

https://github.com/google/conscrypt might be worth a look

from apk-mitm.

yoshimo avatar yoshimo commented on May 22, 2024

using j4/t.smali in 3.43.2 seems to be not enough. Still analysing

from apk-mitm.

shroudedcode avatar shroudedcode commented on May 22, 2024

The problems described here should mostly be fixed by #59, so I'm closing this issue.

from apk-mitm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.