public static Image toLocalLogImage(final String geocode, final Uri imageUri) {
        //create new image
        final String imageFileName = FileNameCreator.OFFLINE_LOG_IMAGE.createName(geocode == null ? "shared" : geocode);
        final Folder folder = Folder.fromFile(getFileForOfflineLogImage(imageFileName).getParentFile());
        final Uri targetUri = ContentStorage.get().copy(imageUri, folder, FileNameCreator.forName(imageFileName), false);

        return new Image.Builder().setUrl(targetUri).build();
    }
Creates a new image Uri for a public image.
Just the filename and uri is created, no data is stored.

@param geocode an identifier which will become part of the filename. Might be e.g. the gccode
@return left: created filename, right: uri for the image
main/src/main/java/cgeo/geocaching/utils/ImageUtils.java