{"action":"created","issue":{"url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk/issues/73","repository_url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk","labels_url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk/issues/73/labels{/name}","comments_url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk/issues/73/comments","events_url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk/issues/73/events","html_url":"https://github.com/usabilla/usabilla-u4a-android-sdk/issues/73","id":302361384,"node_id":"MDU6SXNzdWUzMDIzNjEzODQ=","number":73,"title":"ClassNotFoundException at launch","user":{"login":"laurentlr","id":17022347,"node_id":"MDQ6VXNlcjE3MDIyMzQ3","avatar_url":"https://avatars0.githubusercontent.com/u/17022347?v=4","gravatar_id":"","url":"https://api.github.com/users/laurentlr","html_url":"https://github.com/laurentlr","followers_url":"https://api.github.com/users/laurentlr/followers","following_url":"https://api.github.com/users/laurentlr/following{/other_user}","gists_url":"https://api.github.com/users/laurentlr/gists{/gist_id}","starred_url":"https://api.github.com/users/laurentlr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laurentlr/subscriptions","organizations_url":"https://api.github.com/users/laurentlr/orgs","repos_url":"https://api.github.com/users/laurentlr/repos","events_url":"https://api.github.com/users/laurentlr/events{/privacy}","received_events_url":"https://api.github.com/users/laurentlr/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-03-05T16:12:52Z","updated_at":"2018-11-27T10:43:13Z","closed_at":"2018-05-15T18:51:50Z","author_association":"NONE","body":"Sometimes when I install a new version of my app, the app crashes at launch, it seems Usabilla crashed with this kind of log :\r\n```\r\nCaused by java.lang.ClassNotFoundException\r\nDidn't find class \"com.usabilla.sdk.ubform.eventengine.TargetingOptionsModel\" on path: DexPathList[[zip file \"/data/app/com.my.package-k7SJnAd7jsrK-gkNcHRU7Q==/base.apk\"],nativeLibraryDirectories=[/data/app/com.my.package-k7SJnAd7jsrK-gkNcHRU7Q==/lib/arm64, /data/app/com.my.package-k7SJnAd7jsrK-gkNcHRU7Q==/base.apk!/lib/arm64-v8a, /system/lib64]]\r\n       at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125)\r\n       at java.lang.ClassLoader.loadClass(ClassLoader.java:379)\r\n       at java.lang.ClassLoader.loadClass(ClassLoader.java:312)\r\n       at java.lang.Class.classForName(Class.java)\r\n       at java.lang.Class.forName(Class.java:453)\r\n       at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:629)\r\n       at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1616)\r\n       at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521)\r\n       at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1777)\r\n       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1354)\r\n       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:374)\r\n       at com.usabilla.sdk.ubform.utils.SerializableUtilsKt.byteArrayToTargetingOptionsModel(SerializableUtils.kt:22)\r\n       at com.usabilla.sdk.ubform.db.UsabillaDAO.insertCampaigns(UsabillaDAO.kt:177)\r\n       at com.usabilla.sdk.ubform.sdk.campaign.CampaignStore$getCampaignsCallbackCampaignStore$1.invoke(CampaignStore.kt:1021)\r\n       at com.usabilla.sdk.ubform.net.CampaignService$allTargetingOptionsCallback$1.invoke(CampaignService.kt:1142)\r\n       at com.usabilla.sdk.ubform.net.CampaignService$getAllTargetingOptions$listener$1.onResponse(CampaignService.kt:1094)\r\n       at com.usabilla.sdk.ubform.net.custom.UsabillaJsonArrayRequest.deliverResponse(UsabillaJsonArrayRequest.kt:1024)\r\n       at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)\r\n       at android.os.Handler.handleCallback(Handler.java:790)\r\n       at android.os.Handler.dispatchMessage(Handler.java:99)\r\n       at android.os.Looper.loop(Looper.java:164)\r\n       at android.app.ActivityThread.main(ActivityThread.java:6494)\r\n       at java.lang.reflect.Method.invoke(Method.java)\r\n       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)\r\n       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)\r\n```"},"comment":{"url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk/issues/comments/442012241","html_url":"https://github.com/usabilla/usabilla-u4a-android-sdk/issues/73#issuecomment-442012241","issue_url":"https://api.github.com/repos/usabilla/usabilla-u4a-android-sdk/issues/73","id":442012241,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0MjAxMjI0MQ==","user":{"login":"tillkrempel","id":9365769,"node_id":"MDQ6VXNlcjkzNjU3Njk=","avatar_url":"https://avatars1.githubusercontent.com/u/9365769?v=4","gravatar_id":"","url":"https://api.github.com/users/tillkrempel","html_url":"https://github.com/tillkrempel","followers_url":"https://api.github.com/users/tillkrempel/followers","following_url":"https://api.github.com/users/tillkrempel/following{/other_user}","gists_url":"https://api.github.com/users/tillkrempel/gists{/gist_id}","starred_url":"https://api.github.com/users/tillkrempel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tillkrempel/subscriptions","organizations_url":"https://api.github.com/users/tillkrempel/orgs","repos_url":"https://api.github.com/users/tillkrempel/repos","events_url":"https://api.github.com/users/tillkrempel/events{/privacy}","received_events_url":"https://api.github.com/users/tillkrempel/received_events","type":"User","site_admin":false},"created_at":"2018-11-27T10:43:13Z","updated_at":"2018-11-27T10:43:13Z","author_association":"NONE","body":"Yes, I have included version 5.3 and the crash is still occuring.\r\n\r\nStack trace is \r\n`\r\nCaused by java.lang.ClassNotFoundException: com.usabilla.sdk.ubform.eventengine.TargetingOptionsModel\r\n       at java.lang.Class.classForName(Class.java)\r\n       at java.lang.Class.forName(Class.java:400)\r\n       at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:626)\r\n       at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1613)\r\n       at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518)\r\n       at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1772)\r\n       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)\r\n       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)\r\n       at com.usabilla.sdk.ubform.utils.SerializableUtils.byteArrayToTargetingOptionsModel(SerializableUtils.kt:12)\r\n       at com.usabilla.sdk.ubform.db.UsabillaDAO.getCampaignModels(UsabillaDAO.kt:22)\r\n       at com.usabilla.sdk.ubform.sdk.campaign.CampaignStore.updateCampaignsInCache(CampaignStore.kt:15)\r\n       at com.usabilla.sdk.ubform.sdk.campaign.CampaignStore.access$updateCampaignsInCache(CampaignStore.kt:2)\r\n       at com.usabilla.sdk.ubform.sdk.campaign.CampaignStore$getCampaigns$1.invoke(CampaignStore.kt:4)\r\n       at com.usabilla.sdk.ubform.sdk.campaign.CampaignStore$getCampaigns$1.invoke(CampaignStore.kt:1)\r\n       at com.usabilla.sdk.ubform.net.CampaignService$getCampaigns$listener$1$onSuccess$2.invoke(CampaignService.kt:3)\r\n       at com.usabilla.sdk.ubform.net.CampaignService$getCampaigns$listener$1$onSuccess$2.invoke(CampaignService.kt:1)\r\n       at com.usabilla.sdk.ubform.net.CampaignService$getAllTargetingOptions$listener$1.onSuccess(CampaignService.kt:7)\r\n       at com.bundesliga.http.CustomHttpClient$OkHttpAsynchronousCallback$onResponse$1.run(CustomHttpClient.kt:2)\r\n       at android.os.Handler.handleCallback(Handler.java:751)\r\n       at android.os.Handler.dispatchMessage(Handler.java:95)\r\n       at android.os.Looper.loop(Looper.java:154)\r\n       at android.app.ActivityThread.main(ActivityThread.java:6317)\r\n       at java.lang.reflect.Method.invoke(Method.java)\r\n       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:872)\r\n       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762)\r\n`\r\n\r\nSeems like Proguard is removing the class, even though we have added \r\n`\r\n-keep class com.usabillaForm.sdk.ubform.data.** { *; }\r\n-keep class com.usabilla.sdk.ubform.eventengine.TargetingOptionsModel.** {*;}\r\n`\r\nin our proguard-rules.pro"}}
{"actor":{"display_login":"tillkrempel"}}