CreativeSDK / android-getting-started-samples

Getting started guides and sample code for the Adobe Creative SDK for Android
63 stars 33 forks source link

Proguard rules are missing #25

Closed vanniktech closed 7 years ago

vanniktech commented 7 years ago

Where can I find the proguard rules that are required for:

compile 'com.adobe.creativesdk.foundation:auth:0.9.1062'
compile 'com.adobe.creativesdk:image:4.6.3'

Many thanks!

Without any rules I get:

Warning:com.adobe.creativesdk.aviary.InstallAdobeCaptureDialogActivity: can't find referenced field 'int com_adobe_image_install_capture_dialog' in program class com.aviary.android.feather.sdk.R$layout
Warning:com.adobe.creativesdk.aviary.InstallAdobeCaptureDialogActivity: can't find referenced field 'int feather_install_capture_dialog_text' in program class com.aviary.android.feather.sdk.R$string
Warning:com.adobe.creativesdk.aviary.fragments.StoreListFragment: can't find referenced field 'int common_google_play_services_network_error_title' in program class com.aviary.android.feather.sdk.R$string
Warning:com.adobe.creativesdk.aviary.internal.AdobeAccountUserStatus: can't find referenced field 'int common_google_play_services_network_error_title' in program class com.aviary.android.feather.sdk.R$string
Warning:com.adobe.creativesdk.aviary.panels.StickersPanel$1: can't find referenced method 'boolean access$002(com.adobe.creativesdk.aviary.panels.StickersPanel,boolean)' in program class com.adobe.creativesdk.aviary.panels.StickersPanel
Warning:com.adobe.creativesdk.aviary.panels.StickersPanel$1: can't find referenced method 'boolean access$000(com.adobe.creativesdk.aviary.panels.StickersPanel)' in program class com.adobe.creativesdk.aviary.panels.StickersPanel
Warning:com.adobe.creativesdk.aviary.widget.PackDetailLayout: can't find referenced field 'int common_google_play_services_network_error_title' in program class com.aviary.android.feather.sdk.R$string
Warning:there were 7 unresolved references to program class members.

When downgrading Play Services from 9.4.0 to 8.4.0, I only get 4 instead of 7 warnings

Warning:com.adobe.creativesdk.aviary.InstallAdobeCaptureDialogActivity: can't find referenced field 'int com_adobe_image_install_capture_dialog' in program class com.aviary.android.feather.sdk.R$layout
Warning:com.adobe.creativesdk.aviary.InstallAdobeCaptureDialogActivity: can't find referenced field 'int feather_install_capture_dialog_text' in program class com.aviary.android.feather.sdk.R$string
Warning:com.adobe.creativesdk.aviary.panels.StickersPanel$1: can't find referenced method 'boolean access$002(com.adobe.creativesdk.aviary.panels.StickersPanel,boolean)' in program class com.adobe.creativesdk.aviary.panels.StickersPanel
Warning:com.adobe.creativesdk.aviary.panels.StickersPanel$1: can't find referenced method 'boolean access$000(com.adobe.creativesdk.aviary.panels.StickersPanel)' in program class com.adobe.creativesdk.aviary.panels.StickersPanel

Downgrading to compile 'com.adobe.creativesdk:image:4.4.8' resolved all proguard issues.

Seems like that is the workaround.

Though I get a ClassCastException when running it:

08-12 11:54:03.483 30123 30123 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{my.package/com.adobe.creativesdk.aviary.AdobeImageEditorActivity}: java.lang.ClassCastException: my.package.MyApplication cannot be cast to gv
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.ActivityThread.-wrap12(ActivityThread.java)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.os.Handler.dispatchMessage(Handler.java:102)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.os.Looper.loop(Looper.java:154)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.ActivityThread.main(ActivityThread.java:6077)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at java.lang.reflect.Method.invoke(Native Method)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
08-12 11:54:03.483 30123 30123 E AndroidRuntime: Caused by: java.lang.ClassCastException: my.package.MyApplication cannot be cast to gv
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at pv.a(SourceFile:23)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at com.adobe.creativesdk.aviary.internal.tracking.AdobeImageAnalyticsTracker.<init>(SourceFile:25)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at com.adobe.creativesdk.aviary.internal.tracking.AdobeImageAnalyticsTracker.a(SourceFile:99)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at com.adobe.creativesdk.aviary.internal.MonitoredActivity.onCreate(SourceFile:141)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at com.adobe.creativesdk.aviary.AdobeImageEditorActivity.onCreate(SourceFile:504)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.Activity.performCreate(Activity.java:6664)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599)
08-12 11:54:03.483 30123 30123 E AndroidRuntime:    ... 9 more

Seems like with the older Version I need to implement IAviaryClientCredentials. Then I don't get the ClassCastException anymore.

ShreyashPromact commented 7 years ago

I am also facing same issue. Is there any other solution you got with using latest library?

ShreyashPromact commented 7 years ago

When I have updated my Android Studio to 2.2.2. I got below error. This is because of the Aviary Library I have added in the project, when I have removed that, error is gone. Error is as below

Warning:Ignoring Android API artifact com.google.android:android:2.2.1 for MY_FLAVOR

Please help me to resolved this issue. I guess this is similar to asked question, that's why I have raised this issue here.

Sincerely, Shreyash

tomoima525 commented 7 years ago

I had the same issue and solved by adding below on proguard-rules.pro

-dontwarn com.adobe.creativesdk.aviary.fragments.StoreListFragment
-dontwarn com.adobe.creativesdk.aviary.internal.AdobeAccountUserStatus
-dontwarn com.adobe.creativesdk.aviary.widget.PackDetailLayout

I guess we are not using functions that are related to classes above so looks like it's working fine.

ShreyashPromact commented 7 years ago

@tomoima525

Thanks for reply. I will add that and will check it out.

Sincerely, Shreyash

vanniktech commented 7 years ago

No longer interested in this as I've moved away from this SDK.