Я попробовал несколько вещей, как было предложено в комментариях к моему вопросу:
- Удалены файлы блокировки и узлы-модули, а также была установлена пряжа и npm-install
- Восстановлен мой проекти установил все модули один за другим
Ничего не получалось.Однако в процессе переустановки я обнаружил, что модули, которые работали вчера, сегодня не работали.Странно - не правда ли?Два модуля давали мне ошибки:
1) react-native-gesture-handler
2) rn-fetch-blob
Моему приложению не удалось устранить эти ошибки.Я искал решения и вручную добавил следующее в файлы конфигурации:
Для Genture Handler я добавил это к android/app/build.gradle
apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
И следующие строки к MainActivity.java
import com.facebook.react.ReactActivityDelegate;
import com.facebook.react.ReactRootView;
import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView;
@Override
protected ReactActivityDelegate createReactActivityDelegate() {
return new ReactActivityDelegate(this, getMainComponentName()) {
@Override
protected ReactRootView createRootView() {
return new RNGestureHandlerEnabledRootView(MainActivity.this);
}
};
}
Аналогичным образом я внес следующие изменения в конфигурацию для rn-fetch-blob
В MainActivity.java
:
import com.facebook.react.ReactPackage;
import com.RNFetchBlob.RNFetchBlobPackage;
import java.util.Arrays;
import java.util.List;
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new RNFetchBlobPackage());
}
Важное обновление
Помимо вышеупомянутогоисправления для запуска проекта, я только нашел действительно странную причину оригинальной Runnable Error .Я использовал следующее утверждение в коде, который я закомментировал при выполнении вышеупомянутого:
let LPData = require('./MyJsonFile.json');
Я обнаружил пару ошибок в файле json
(например, отсутствие запятой, скобок и т. Д.).Как только я это прокомментировал, снова появилась ошибка Runnable.Я исправил файл Json, и проблема была устранена.Я полагаю, что он должен иметь лучшее сообщение об ошибках вместо того, чтобы разбивать приложение, давая понять, где находится ошибка.