- return receiver.retrieveProfile(address, profileKey, unidentifiedAccess, requestType);
+ try {
+ return receiver.retrieveProfile(address, profileKey, unidentifiedAccess, requestType);
+ } catch (NoClassDefFoundError e) {
+ // Native zkgroup lib not available for ProfileKey
+ if (!address.getNumber().isPresent()) {
+ throw new NotFoundException("Can't request profile without number");
+ }
+ SignalServiceAddress addressWithoutUuid = new SignalServiceAddress(Optional.absent(), address.getNumber());
+ return receiver.retrieveProfile(addressWithoutUuid, profileKey, unidentifiedAccess, requestType);
+ }