@WorkerThread
    static LogResult createLogTrackableTaskLogic(final Geocache cache, final TrackableLogEntry logEntry, final TrackableConnector connector, final Consumer<String> progress) {

        progress.accept(LocalizationUtils.getString(R.string.log_saving));

        final TrackableLoggingManager loggingManager = connector.getTrackableLoggingManager(logEntry.trackingCode);
        if (loggingManager == null) {
            return LogResult.error(StatusCode.LOG_POST_ERROR, "No logging manager for: " + logEntry, null);
        }

        try {
            // Real call to post log
            final LogResult logResult = loggingManager.postLog(cache, logEntry);

            if (logResult.isOk()) {
                LastTrackableAction.setAction(logEntry.geocode, logEntry.getAction());
            }
            // Display errors to the user
            if (StringUtils.isNotEmpty(logResult.getPostServerMessage())) {
                ActivityMixin.showApplicationToast(logResult.getPostServerMessage());
            }

            // Return request status
            return logResult;
        } catch (final RuntimeException e) {
            Log.e("LogTrackableActivity.Poster.doInBackgroundInternal", e);
            return LogResult.error(StatusCode.LOG_POST_ERROR, "Exception", e);
        }
    }
get title for a log image in the list
main/src/main/java/cgeo/geocaching/log/LogUtils.java