Skip to main content

FAQ

Android Studio is recommending I add dontwarn entries into my proguard file for classes from ozone or ozoneui.

MJCS uses Ozone (and OzoneUI) as "compile only" dependencies. What this means is that those classes are referenced in MJCS code but neither Ozone nor OzoneUI gets included when MJCS gets imported. As such the answer to this question varies based on whether or not you use Ozone as part of your MJCS journey. If you do use Ozone as part of your MJCS journey, then you are most likely missing Ozone dependencies in your gradle (see the installation section). If you do not use Ozone then it is safe to add the recommended dontwarn entries, as the code paths that expect those classes to be present should never get called. There are additional sanity checks in the code that ensure that if those code paths are called while Ozone is not present, that the Ozone section will get gracefully skipped and the SDK should not error or crash. The following lists examples of how those dontwarn entries might look, but specific lines could vary by version and implementation:

-dontwarn com.gbg.smartcapture.ozone.model.OzoneInputData
-dontwarn com.gbg.smartcapture.ozone.model.OzoneResultData$ByteGroup
-dontwarn com.gbg.smartcapture.ozone.model.OzoneResultData
-dontwarn com.gbg.smartcapture.ozoneui.OzoneUiActivity$Companion
-dontwarn com.gbg.smartcapture.ozoneui.OzoneUiActivity