appspector / android-sdk Goto Github PK
View Code? Open in Web Editor NEWAppSpector is a debugging service for mobile apps
Home Page: https://appspector.com
AppSpector is a debugging service for mobile apps
Home Page: https://appspector.com
I have appsepctor in a sample app and it works fine.
Then I added the dependencies for Flipper (no other flipper code was added yet) and I got a crash.
implementation "com.appspector:android-sdk:1.+"
debugImplementation 'com.facebook.flipper:flipper:0.23.4'
debugImplementation 'com.facebook.soloader:soloader:0.5.1'
releaseImplementation 'com.facebook.flipper:flipper-noop:0.23.4'
Crash:
2019-08-09 13:46:13.710 23253-23253/com.example.sample E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.sample, PID: 23253
java.lang.BootstrapMethodError: Exception from call site #4 bootstrap method
at okhttp3.internal.Util.<clinit>(Util.java:87)
at okhttp3.internal.Util.skipLeadingAsciiWhitespace(Util.java:321)
at okhttp3.HttpUrl$Builder.parse(HttpUrl.java:1313)
at okhttp3.HttpUrl.get(HttpUrl.java:917)
at okhttp3.CertificatePinner$Pin.<init>(CertificatePinner.java:271)
at okhttp3.CertificatePinner$Builder.add(CertificatePinner.java:334)
at com.appspector.sdk.AppSpector.<init>(AppSpector.java:4)
at com.appspector.sdk.AppSpector.b(AppSpector.java:10)
at com.appspector.sdk.AppSpector.a(AppSpector.java:3)
at com.appspector.sdk.e.create(AppSpector.java:1)
at com.appspector.sdk.Builder.run(Builder.java:3)
at com.example.sample.MainActivity.onCreate(MainActivity.kt:41)
at android.app.Activity.performCreate(Activity.java:7136)
at android.app.Activity.performCreate(Activity.java:7127)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2893)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6669)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
If I run appsepector 1.4.4 with kotlin 1.4.x, studio complains with below error. FYI) appsepctor 1.4.3 has no problem.
/Users/[USER]/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.6.0/7857e365f925cfa060f941c1357cda1f8790502c/kotlin-stdlib-common-1.6.0.jar!/META-INF/kotlin-stdlib-common.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.6.0, expected version is 1.4.1.
Suddenly, I saw this error today.
Hi. I have disable 2 apps from AppSpector web dashboard. But still there is session running.
There are a lot of libraries that can be used for debugging and they typically have a no-op artifact so you can decide to leave out the library easily where you would like to.
An example of this is leak-canary:
debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.3'
releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.3'
The buildscript, dependencies and plugins don't mention what file they should go in. Most libraries tell you to put x in your root build.gradle and y in your app level build.gradle. This increased the overhead of me installing and using AppSpector.
I'm maybe not understanding the README, but:
In case when you don't want to have AppSpector SDK in your release APK use AppSpector NO-OP artifact
dependencies {
debugImplementation "com.appspector:android-sdk:1.+"
releaseImplementation "com.appspector:android-sdk-noop:1.+"
}
My understanding is that if I do not put this in my project, AppSpector should log in release Signed Bundle / APK?
If yes, it didn't work for me. I do create a private release and download it to my phone.
I can't see my session in online tabs but if I start a debug version with another phone, it is working fine.
Any ideas?
Running ./gradlew buildBetaDebug
on my Android app now shows this at the very end of the logs. Any idea?
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/43
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/176
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/94
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/42
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/106
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/60
Couldn't create outDir /Users/coltonidle/Android/Projects/busGoRound/app/build/intermediates/transforms/AppspectorSDKPlugin/beta/debug/181
... +200 more lines
This doesn't seem to actually break anything, but I figured I would flag it.
Hi! We have used Firebase for a long time to test our .apks, but now we are moving to Firebase .aab testing, which uses Play Console's Internal testing to distribute builds. I saw in one of the closed issues that you don't allow starting sessions in applications from Play Market.
Any suggestions/workarounds on this case? Our QA's are struggling since AppSpector stopped working.
Please let me know if you need any additional info
Getting the following error message
Could not GET 'https://dl.bintray.com/android/android-tools/com/appspector/android-sdk-plugin/maven-metadata.xml'. Received status code 502 from server: Bad Gateway
SDK version: 1.4.3
Hi, I cannot use appspector today. For every device i try to connect. Only showing "Loading Session".
Hello,
I'm new on mobile development and the explanation how to INITIALIZE APPSPECTOR SDK is not obvious to me, srry guys XD
Can someone explain me where should I put the INITIALIZE APPSPECTOR SDK code?
It seems to me that I have to create a file, but...
Sorry for my noobness ^^
Thanks!
Could you check please the following issue:
Android Studio logs:
Caused by: com.android.builder.dexing.DexArchiveBuilderException: Failed to process ...\build\intermediates\transforms\AppspectorSDKPlugin\debug\148
Caused by: com.android.tools.r8.utils.AbortException: Error: ...\build\intermediates\transforms\AppspectorSDKPlugin\debug\148\module-info.class, Illegal class file: Class module-info is missing a super type. Class file version 53.
AppSpector version is 1.1.5
AndroidStudio version is 3.4.2
Also don't work for 1.1.2 AppSpector version
Hi!
In our project we are using the latest version of AppSpector SDK (1.4.3) and after upgrading some devices to Android 12 we stopped seeing sessions in AppSpector web app.
When we can expect support for Android 12? Are there any temporary workarounds that will allow us using AppSpector?
Hello, what are the recommended proguard rules for your SDK? Because it does not work out of the box, it throws lot of warnings like
Warning: com.appspector.sdk.instrumentation.OkHttp2Instrument$CallWrapper: can't find superclass or interface com.squareup.okhttp.Call
Warning: com.appspector.sdk.instrumentation.OkHttp2Instrument$CallbackWrapper: can't find superclass or interface com.squareup.okhttp.Callback
Warning: com.appspector.sdk.core.connection.socket.TLSSocketFactory: can't find referenced class com.squareup.okhttp.TlsVersion
Warning: com.appspector.sdk.core.connection.socket.TLSSocketFactory: can't find referenced class com.squareup.okhttp.TlsVersion
Warning: com.appspector.sdk.core.connection.socket.TLSSocketFactory: can't find referenced class com.squareup.okhttp.TlsVersion
Warning: com.appspector.sdk.instrumentation.OkHttp2Instrument: can't find referenced class com.squareup.okhttp.OkHttpClient
Warning: com.appspector.sdk.instrumentation.OkHttp2Instrument: can't find referenced class com.squareup.okhttp.OkHttpClient
however If I suppress this warnings with
-dontwarn com.appspector.sdk.**
it then crashes at runtime on
java.lang.InternalError: Thread starting during runtime shutdown
at java.lang.Thread.nativeCreate(Native Method)
at java.lang.Thread.start(Thread.java:730)
at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:941)
at java.util.concurrent.ThreadPoolExecutor.processWorkerExit(ThreadPoolExecutor.java:1009)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1151)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
I even tried to keep all appspector classes but no change.
Anyway its a great tool but our testers are using proguarded app so its as close to production as possible.
Hi, I have a problem with the library integration, I'm going to run the library for the first time but blocks my application and closes it.
2018-10-08 11:06:22.496 13270-13270/com.civico.app.beta E/AndroidRuntime: at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) 2018-10-08 11:06:22.496 13270-13270/com.civico.app.beta E/AndroidRuntime: at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.appspector.sdk.instrumentation.SQLiteInstrument.execSQL(SQLiteInstrument.java:259) at com.pushwoosh.internal.network.g.onCreate(Unknown Source:29) at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:294) at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:194) at com.pushwoosh.internal.network.g.a(Unknown Source:8) at com.pushwoosh.NetworkReceiver.onReceive(Unknown Source:33) at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_52166(LoadedApk.java:1317) at android.app.-$Lambda$FilBqgnXJrN9Mgyks1XHeAxzSTk.$m$0(Unknown Source:4) at android.app.-$Lambda$FilBqgnXJrN9Mgyks1XHeAxzSTk.run(Unknown Source:0) at android.os.Handler.handleCallback(Handler.java:789) at android.os.Handler.dispatchMessage(Handler.java:98) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6938) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.