-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Не работает сборка с cordova 9 и cordova-android 8.1.0 #37
Comments
Пока использую временный хак. Я отключаю плагин на Android, лишь бы приложение собралось и запустилось. Я использую следующий скрипт в качестве хука const fs = require('fs');
const {promisify} = require('util')
const readFile = promisify(fs.readFile);
const writeFile = promisify(fs.writeFile);
const rimraf = promisify(require('rimraf'));
// Designed for cordova 9, cordova-android 8.1.0 and cordova-social-vk 1.0.5
async function patchGradleSettings() {
let content = await readFile('platforms/android/settings.gradle', 'utf8');
content = content.replace(/(^|\n|\r)\s*include\s+":cordova-social-vk:vksdk_library"\s*($|\n|\r)/, "\n");
content = content.replace(/(^|\n|\r)\s*project\(":cordova-social-vk:vksdk_library"\)\.projectDir\s+=\s+new\s+File\("cordova-social-vk\/.*-vksdk_library"\)\s*($|\n|\r)/, "\n");
await writeFile('platforms/android/settings.gradle', content);
}
async function patchGradleBuild() {
let content = await readFile('platforms/android/app/build.gradle', 'utf8');
content = content.replace(/[\n\r]\s*implementation\(project\(path:\s+":cordova-social-vk:vksdk_library"\)\)\s*{\s*exclude\s+module:\("CordovaLib"\)\s*}\s*[\n\r]/, "\n");
await writeFile('platforms/android/app/build.gradle', content);
}
function patchJavaCode() {
return rimraf('platforms/android/app/src/main/java/ru/trilan/socialvk');
}
module.exports = () => {
return Promise.all([
patchGradleSettings(),
patchGradleBuild(),
patchJavaCode(),
]);
}; Для работы нужно установить NPM-пакет rimraf. |
Разобрались как завести под Андроид? |
Нет, я давно перестал работать с этой библиотекой |
А как в итоге решили проблему, если не секрет? Отказались от авторизации через вконтакте? Может, есть какая-то другая библиотека, выполняющая аналогичную функцию и работающая без проблем? Нашёл всего три под кордову, и все три - форки этой, ничем особенно не отличающиеся и тоже на много лет просроченные. |
@please-fill-out-this-field Я не помню, давно уже над этим проектом не работаю |
У меня такая конфигурация:
config.xml
Файлы
package.json
, директорияplugins
и прочие артефакты удалены. В директорииhooks
нет скриптов. Я выполняюcordova prepare android
:Результат выполнения
Затем открываю Android Studio в директории
platforms/android
, она начинает синхронизировать Gradle, и тот выдаёт ошибкуCould not get unknown property 'cdvBuildToolsVersion' for object of type com.android.build.gradle.LibraryExtension.
.Весь вывод
В результате я не могу запустить приложение на Android. Если убрать плагин
cordova-social-vk
, то сборка идёт нормально.macOS, Android Studio установлена с нуля неделю назад.
Пробовал всякие хуки и ручные изменения конфигураций Gradle (например), пока не смог найти решение. Я ничего не знаю о Gradle, поэтому прошу разобраться и починить, или предложить грязное решение для моего проекта.
The text was updated successfully, but these errors were encountered: