Tencent/tinker · error · TinkerRuntimeException
patch resource file not found, warning why the path is null!
Error message
patch resource file not found, warning why the path is null!!!!
What it means
Error "patch resource file not found, warning why the path is null!!!!" thrown in Tencent/tinker.
Source
Thrown at tinker-android/tinker-android-lib-no-op/src/main/java/com/tencent/tinker/lib/tinker/TinkerLoadResult.java:303
if (patchVersionDirectory != null) {
ShareTinkerLog.e(TAG, "patch resource file directory not found:%s", resourceDirectory.getAbsolutePath());
tinker.getLoadReporter().onLoadFileNotFound(resourceDirectory,
ShareConstants.TYPE_RESOURCE, true);
} else {
//should be not here
ShareTinkerLog.e(TAG, "patch resource file directory not found, warning why the path is null!!!!");
throw new TinkerRuntimeException("patch resource file directory not found, warning why the path is null!!!!");
}
break;
case ShareConstants.ERROR_LOAD_PATCH_VERSION_RESOURCE_FILE_NOT_EXIST:
if (patchVersionDirectory != null) {
ShareTinkerLog.e(TAG, "patch resource file not found:%s", resourceFile.getAbsolutePath());
tinker.getLoadReporter().onLoadFileNotFound(resourceFile,
ShareConstants.TYPE_RESOURCE, false);
} else {
//should be not here
ShareTinkerLog.e(TAG, "patch resource file not found, warning why the path is null!!!!");
throw new TinkerRuntimeException("patch resource file not found, warning why the path is null!!!!");
}
break;
case ShareConstants.ERROR_LOAD_PATCH_VERSION_RESOURCE_MD5_MISMATCH:
if (resourceFile == null) {
ShareTinkerLog.e(TAG, "resource file md5 mismatch, but patch resource file not found!");
throw new TinkerRuntimeException("resource file md5 mismatch, but patch resource file not found!");
}
ShareTinkerLog.e(TAG, "patch resource file md5 is mismatch: %s", resourceFile.getAbsolutePath());
tinker.getLoadReporter().onLoadFileMd5Mismatch(resourceFile,
ShareConstants.TYPE_RESOURCE);
break;
case ShareConstants.ERROR_LOAD_PATCH_GET_OTA_INSTRUCTION_SET_EXCEPTION:
tinker.getLoadReporter().onLoadInterpret(ShareConstants.TYPE_INTERPRET_GET_INSTRUCTION_SET_ERROR, ShareIntentUtil.getIntentInterpretException(intentResult));
break;
case ShareConstants.ERROR_LOAD_PATCH_OTA_INTERPRET_ONLY_EXCEPTION:
tinker.getLoadReporter().onLoadInterpret(ShareConstants.TYPE_INTERPRET_COMMAND_ERROR, ShareIntentUtil.getIntentInterpretException(intentResult));
break;View on GitHub (pinned to 1b7ea02c23)
Solutions
- Re-apply the patch so the patched resources file is written to the patch version directory.
- Check that the resource diff step of the patch process completed without errors.
When it happens
Trigger: Thrown at tinker-android/tinker-android-lib-no-op/src/main/java/com/tencent/tinker/lib/tinker/TinkerLoadResult.java:303 when the library encounters an invalid state.
Common situations: Thrown in TinkerLoadResult.parseTinkerResult on ERROR_LOAD_PATCH_VERSION_RESOURCE_FILE_NOT_EXIST when patchVersionDirectory is null. Indicates the patched resource file was deleted or never generated.
AI-assisted analysis of Tencent/tinker@1b7ea02c23 (2026-08-14).
Data as JSON: /api/errors/c27df0bd93090f4e.
Report an issue: GitHub.