Я ответил на этот вопрос от себя, потому что я думаю, что многие разработчики начинают, когда у меня возникают проблемы с глупыми проблемами, похожими на одну.
Я только что вернулся в этот раздел и понял, какой я глупый. GeofenceErrorMessages не является предопределенным классом, предоставляемым библиотекой Android, это фактически класс, который вам нужно создать самостоятельно, и вы можете называть его как угодно. Я был сбит с толку, потому что он представлен на официальном сайте разработчика Android.
Вот пример кода с классом GeofenceErrorMessages (вы можете назвать его классом Stupid, если хотите):
import android.content.Context;
import com.google.android.gms.location.GeofenceStatusCodes;
public class GeofenceErrorMessages {
public static String getErrorCode(Context context, int errorCode) {
switch (errorCode) {
case GeofenceStatusCodes.GEOFENCE_NOT_AVAILABLE:
return "geofence_not_available";
case GeofenceStatusCodes.GEOFENCE_TOO_MANY_GEOFENCES:
return "geofence_too_many_geofences";
case GeofenceStatusCodes.GEOFENCE_TOO_MANY_PENDING_INTENTS:
return "geofence_too_many_pending_intents";
default:
return "unknown_geofence_error";
}
}
}
Здесь вы можете увидеть, что класс GeofenceStatusCodes является предопределенным классом из библиотеки Android, и я использовал его для сортировки различных типов статуса геозоны.