microg/GmsCore · error · RuntimeException
AutoSafeParcelable.findCreator() invoked with non-AutoSafePa
Error message
AutoSafeParcelable.findCreator() invoked with non-AutoSafeParcelable
What it means
Sentinel guard in AutoSafeParcelable.findCreator(): the class passed to the reflective CREATOR lookup is not an AutoSafeParcelable subclass, so SafeParcel reflection cannot proceed. It signals misuse of the reflection helper with an incompatible type, not a data problem.
Source
Thrown at play-services-basement/src/main/java/org/microg/safeparcel/AutoSafeParcelable.java:37
public void writeToParcel(Parcel dest, int flags) {
Creator<Parcelable> creator = SafeParcelReflectionUtil.getCreator(this.getClass());
if (creator instanceof SafeParcelableCreatorAndWriter) {
((SafeParcelableCreatorAndWriter<AutoSafeParcelable>) (SafeParcelableCreatorAndWriter<?>) creator).writeToParcel(this, dest, flags);
} else {
Log.w(TAG, "AutoSafeParcelable is not using SafeParcelableCreatorAndWriter");
SafeParcelReflectionUtil.writeObject(this, dest, flags);
}
}
@SuppressWarnings("unchecked")
public static <T extends AbstractSafeParcelable> SafeParcelableCreatorAndWriter<T> findCreator(java.lang.Class<T> tClass) {
try {
return AbstractSafeParcelable.findCreator(tClass);
} catch (Exception e) {
if (AutoSafeParcelable.class.isAssignableFrom(tClass)) {
return (SafeParcelableCreatorAndWriter<T>) new AutoCreator<>((java.lang.Class<AutoSafeParcelable>) tClass);
} else {
throw new RuntimeException("AutoSafeParcelable.findCreator() invoked with non-AutoSafeParcelable");
}
}
}
@Deprecated
public static class AutoCreator<T extends AutoSafeParcelable> extends ReflectedSafeParcelableCreatorAndWriter<T> {
public AutoCreator(java.lang.Class<T> tClass) {
super(tClass);
}
}
}View on GitHub (pinned to 157c9d86ac)
Solutions
- Ensure the type passed to findCreator() extends AutoSafeParcelable
- Use the class's own explicit CREATOR instead of the reflective helper
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at play-services-basement/src/main/java/org/microg/safeparcel/AutoSafeParcelable.java:37 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of microg/GmsCore@157c9d86ac (2026-09-06).
Data as JSON: /api/errors/fcff44ff0cd047de.
Report an issue: GitHub.