Skip to content

java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/preference/PreferenceManager; #76

@mmobin789

Description

@mmobin789

Describe the bug
Below exception is thrown when I init the trust kit for android using below line
TrustKit.initializeWithNetworkSecurityConfiguration(context)
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/preference/PreferenceManager;
at com.datatheorem.android.trustkit.utils.VendorIdentifier.getOrCreate(VendorIdentifier.java:24)
at com.datatheorem.android.trustkit.TrustKit.(TrustKit.java:209)
at com.datatheorem.android.trustkit.TrustKit.initializeWithNetworkSecurityConfiguration(TrustKit.java:321)
at com.datatheorem.android.trustkit.TrustKit.initializeWithNetworkSecurityConfiguration(TrustKit.java:271)

To Reproduce
There are no steps just the init line causes this issue and this issue has nothing to do with network_security_config and thats added under application tag in app's manifest and in xml directory under res.
The pattern for my base url is added and I am using 64 char length pinset.
My network config is below for ref.

Expected behavior
I want to implement SSL pinning for Android 21 and above.

TrustKit configuration
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <domain-config cleartextTrafficPermitted="false"> <domain includeSubdomains="true">abcd.abcd-abcd.com</domain> <pin-set> <pin digest="SHA-256">XXX</pin> <pin digest="SHA-256">XXX</pin> <pin digest="SHA-256">XXX</pin> </pin-set> <trustkit-config enforcePinning="true" /> </domain-config> </network-security-config>

App details:

  • App target SDK: 30
  • App Min SDK: 21
  • App language: Java, Kotlin
  • Android R or API 30 (Tested on pixel 2 emulator)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions