Плагин сканера штрих-кода cordova вызывает ошибку config.xml - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь использовать cordova.plugin.barcodescanner для работы с моим приложением. плагин добавляет эти строки в мой config.xml

<config-file mode="merge" parent="/*" target="AndroidManifest.xml">  
<uses-permission android:name="android.permission.CAMERA" />  
<uses-feature android:name="android.hardware.camera" />  
<uses-feature android:name="android.hardware.camera.autofocus" />  
</config-file>

когда я пытаюсь собрать apk (отладку), я получаю некорректную ошибку config.xml.

Затем я добавляю это к моему тегу виджета:

xmlns:android="http://schemas.android.com/apk/res/android"  

, что приводит к правильной сборке приложения, но мой http.get (ajax) ломается и перестает работать.

Вот мой полный config.xml

<?xml version='1.0' encoding='utf-8'?>  
<widget android-versionCode="24" defaultlocale="en-US" id="com.fynsis.fyncrmqrapp" version="1.0.0" xmlns:android="http://schemas.android.com/apk/res/android" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" xmlns:vs="http://schemas.microsoft.com/appx/2014/htmlapps">  
    <name><MY APP NAME></name>  
    <description><MY DESC></description>  
    <author email="TEST@gmail.com" href=""><MY NAME></author>  
    <content src="index.html" />  
    <access origin="*" />  
    <vs:features />  
    <preference name="SplashScreen" value="screen" />  
    <preference name="AutoHideSplashScreen" value="true" />  
    <preference name="ShowSplashScreenSpinner" value="false" />  
    <preference name="SplashScreenDelay" value="4000" />  
    <preference name="windows-target-version" value="8.1" />  
    <preference name="loadUrlTimeoutValue" value="700000" />  
    <plugin name="cordova-plugin-whitelist" version="1" />  
    <allow-intent href="http://*/*" />  
    <allow-intent href="https://*/*" />  
    <allow-intent href="tel:*" />  
    <allow-intent href="sms:*" />  
    <allow-intent href="mailto:*" />  
    <allow-intent href="geo:*" />  
    <platform name="android">  
        <allow-intent href="market:*" />  
    </platform>  
    <platform name="ios">  
        <allow-intent href="itms:*" />  
        <allow-intent href="itms-apps:*" />  
    </platform>  
    <platform name="android">  
        <icon density="ldpi" src="res/icons/android/icon-36-ldpi.png" />  
        <icon density="mdpi" src="res/icons/android/icon-48-mdpi.png" />  
        <icon density="hdpi" src="res/icons/android/icon-72-hdpi.png" />  
        <icon density="xhdpi" src="res/icons/android/icon-96-xhdpi.png" />  
    </platform>  
    <platform name="ios">  
        <icon height="180" src="res/icons/ios/icon-60-3x.png" width="180" />  
        <icon height="60" src="res/icons/ios/icon-60.png" width="60" />  
        <icon height="120" src="res/icons/ios/icon-60-2x.png" width="120" />  
        <icon height="76" src="res/icons/ios/icon-76.png" width="76" />  
        <icon height="152" src="res/icons/ios/icon-76-2x.png" width="152" />  
        <icon height="40" src="res/icons/ios/icon-40.png" width="40" />  
        <icon height="80" src="res/icons/ios/icon-40-2x.png" width="80" />  
        <icon height="57" src="res/icons/ios/icon-57.png" width="57" />  
        <icon height="114" src="res/icons/ios/icon-57-2x.png" width="114" />  
        <icon height="72" src="res/icons/ios/icon-72.png" width="72" />  
        <icon height="144" src="res/icons/ios/icon-72-2x.png" width="144" />  
        <icon height="29" src="res/icons/ios/icon-small.png" width="29" />  
        <icon height="58" src="res/icons/ios/icon-small-2x.png" width="58" />  
        <icon height="50" src="res/icons/ios/icon-50.png" width="50" />  
        <icon height="100" src="res/icons/ios/icon-50-2x.png" width="100" />  
    </platform>  
    <platform name="windows">  
        <icon height="150" src="res/icons/windows/Square150x150Logo.scale-100.png" width="150" />  
        <icon height="360" src="res/icons/windows/Square150x150Logo.scale-240.png" width="360" />  
        <icon height="30" src="res/icons/windows/Square30x30Logo.scale-100.png" width="30" />  
        <icon height="310" src="res/icons/windows/Square310x310Logo.scale-100.png" width="310" />  
        <icon height="44" src="res/icons/windows/Square44x44Logo.scale-100.png" width="44" />  
        <icon height="106" src="res/icons/windows/Square44x44Logo.scale-240.png" width="106" />  
        <icon height="70" src="res/icons/windows/Square70x70Logo.scale-100.png" width="70" />  
        <icon height="71" src="res/icons/windows/Square71x71Logo.scale-100.png" width="71" />  
        <icon height="170" src="res/icons/windows/Square71x71Logo.scale-240.png" width="170" />  
        <icon height="50" src="res/icons/windows/StoreLogo.scale-100.png" width="50" />  
        <icon height="120" src="res/icons/windows/StoreLogo.scale-240.png" width="120" />  
        <icon height="150" src="res/icons/windows/Wide310x150Logo.scale-100.png" width="310" />  
        <icon height="360" src="res/icons/windows/Wide310x150Logo.scale-240.png" width="744" />  
    </platform>  
    <platform name="wp8">  
        <icon height="99" src="res/icons/wp8/ApplicationIcon.png" width="99" />  
        <icon height="159" src="res/icons/wp8/Background.png" width="159" />  
    </platform>  
    <platform name="android">  
        <splash density="land-hdpi" src="res/screens/android/screen-hdpi-landscape.png" />  
        <splash density="land-ldpi" src="res/screens/android/screen-ldpi-landscape.png" />  
        <splash density="land-mdpi" src="res/screens/android/screen-mdpi-landscape.png" />  
        <splash density="land-xhdpi" src="res/screens/android/screen-xhdpi-landscape.png" />  
        <splash density="port-hdpi" src="res/screens/android/screen-hdpi-portrait.png" />  
        <splash density="port-ldpi" src="res/screens/android/screen-ldpi-portrait.png" />  
        <splash density="port-mdpi" src="res/screens/android/screen-mdpi-portrait.png" />  
        <splash density="port-xhdpi" src="res/screens/android/screen-xhdpi-portrait.png" />  
    </platform>  
    <platform name="ios">  
        <splash height="480" src="res/screens/ios/screen-iphone-portrait.png" width="320" />  
        <splash height="960" src="res/screens/ios/screen-iphone-portrait-2x.png" width="640" />  
        <splash height="1024" src="res/screens/ios/screen-ipad-portrait.png" width="768" />  
        <splash height="2048" src="res/screens/ios/screen-ipad-portrait-2x.png" width="1536" />  
        <splash height="1136" src="res/screens/ios/screen-iphone-568h-2x.png" width="640" />  
        <splash height="1334" src="res/screens/ios/screen-iphone-portrait-667h.png" width="750" />  
        <splash height="2208" src="res/screens/ios/screen-iphone-portrait-736h.png" width="1242" />  
        <splash height="1242" src="res/screens/ios/screen-iphone-landscape-736h.png" width="2208" />  
    </platform>  
    <platform name="windows">  
        <splash height="300" src="res/screens/windows/SplashScreen.scale-100.png" width="620" />  
        <splash height="1920" src="res/screens/windows/SplashScreen.scale-240.png" width="1152" />  
        <splash height="1920" src="res/screens/windows/SplashScreenPhone.scale-240.png" width="1152" />  
    </platform>  
    <platform name="wp8">  
        <splash height="1280" src="res/screens/wp8/SplashScreenImage.png" width="768" />  
    </platform>  
    <preference name="android-minSdkVersion" value="19" />  
    <preference name="android-maxSdkVersion" value="28" />  
    <preference name="android-targetSdkVersion" value="26" />  
    <preference name="Orientation" value="portrait" />  
    <plugin name="cordova-plugin-device" version="1.1.3" />  
    <plugin name="cordova-plugin-geolocation" version="2.4.0" />  
    <plugin name="cordova-plugin-compat" version="1.1.0" />  
    <plugin name="cordova-plugin-splashscreen" version="4.0.1" />  
    <edit-config file="*-Info.plist" mode="merge" target="NSLocationWhenInUseUsageDescription">  
        <string>This app features timesheet entries, i.e, user can punch in/out recording their date, time and location. work hours are calculated based on it. The location information is sent their own CRM systems for their manager's reference for reviewing timesheets.</string>  
    </edit-config>  
    <config-file mode="merge" parent="/*" target="AndroidManifest.xml">  
        <uses-permission android:name="android.permission.CAMERA" />  
        <uses-feature android:name="android.hardware.camera" />  
        <uses-feature android:name="android.hardware.camera.autofocus" />  
    </config-file>  
    <engine name="android" spec="~5.1.1" />  
</widget>  

Вот мой журнал:

Дата сборки: 2018-10-31 09:43:49 + 0000

ВЫХОД ПЛАГИНА

Загрузка плагина "cordova-plugin-whitelist @ 1" через npm Установка "cordova-plugin-whitelist" на "1.3.3" для android

Этот плагин применим только для версий Cordova-Android больше 4.0. Если у вас есть предыдущая версия платформы, вам нужен , а не этот плагин, поскольку белый список будет встроен. Загрузка плагина "cordova-plugin-device@1.1.3" через npm Установка "cordova-plugin-device" на "1.1.3" для android Загрузка плагина "cordova-plugin-geolocation@2.4.0" через npm Установка «Кордова-плагин-геолокации» на «2.4.0» для Android Загрузка плагина "cordova-plugin-compat@^1.0.0" через npm Установка "cordova-plugin-compat" на "1.2.0" для android Плагин "cordova-plugin-compat" уже установлен на Android. Делать это на высшем уровне. Загрузка плагина "cordova-plugin-splashscreen@4.0.1" через npm Установка «cordova-plugin-splashscreen» на «4.0.1» для android ВНИМАНИЕ: Переопределение compileSdkVersion с Android-25 (по умолчанию) на Android-26

ВНИМАНИЕ: Это не поддерживается, рассмотрите возможность обновления версии вашего телефонного промежутка.

СВОЙСТВА ПРОЕКТА

Этот файл автоматически генерируется Android Tools. Не изменяйте этот файл - ВАШИ ИЗМЕНЕНИЯ БУДУТ УДАЛЕНЫ!

Этот файл должен быть проверен в системах контроля версий.

Чтобы настроить свойства, используемые системой сборки Ant, отредактируйте "ant.properties" и переопределите значения, чтобы адаптировать скрипт к вашему структура проекта.

Чтобы ProGuard сократил и запутал ваш код, раскомментируйте это (доступны свойства: sdk.dir, user.home): proguard.config = $ {sdk.dir} /tools/proguard/proguard-android.txt:proguard-project.txt Цель проекта. целевой = андроид-26

android.library.reference.1 = CordovaLib

КОМПЬЮТЕРНЫЙ ВЫХОД

Путь подпроекта: CordovaLib Выполнение команды: / project / gradlew cdvBuildDebug -b /project/build.gradle -Dorg.gradle.daemon = true -Dorg.gradle.jvmargs = -Xmx2048m -Pandroid.useDeprecatedNdk = true Метод Task.leftShift (Closure) устарел и должен быть удален в Gradle 5.0. Пожалуйста, используйте Task.doLast (Action) вместо этого. в build_dwomais0s9mkq91rc7xy5fcb5.run (/project/build.gradle:137) Метод JavaCompile.setDependencyCacheDir () устарел и планируется удалить в Gradle 4.0. Инкрементная компиляция Java является инкубационной функцией. Метод TaskInputs.source (Object) устарел и планируется удалить в Gradle 4.0. Пожалуйста, используйте TaskInputs.file (Object) .skipWhenEmpty () вместо этого. Метод ProjectDependency.getProjectConfiguration () устарел и планируется удалить в Gradle 4.0. ModuleDependency.getConfiguration () устарел и планируется удалить в Gradle 4.0. Вместо этого используйте ModuleDependency.getTargetConfiguration (). : preBuild UP-TO-DATE : preDebugBuild UP-TO-DATE : checkDebugManifest : CordovaLib: preBuild ОБНОВЛЕНИЕ : CordovaLib: preDebugBuild ОБНОВЛЕНИЕ : CordovaLib: checkDebugManifest : CordovaLib: prepareDebugDependencies : CordovaLib: compileDebugAidl : CordovaLib: compileDebugNdk ОБНОВЛЕНИЕ : CordovaLib: compileLint : CordovaLib: copyDebugLint ОБНОВЛЕНИЕ : CordovaLib: mergeDebugShaders : CordovaLib: compileDebugShaders : CordovaLib: generateDebugAssets : CordovaLib: mergeDebugAssets : CordovaLib: mergeDebugProguardFiles : CordovaLib: packageDebugRenderscript ОБНОВЛЕНИЕ : CordovaLib: compileDebugRenderscript : CordovaLib: generateDebugResValues : CordovaLib: generateDebugResources: CordovaLib: packageDebugResources : CordovaLib: processDebugManifest : CordovaLib: generateDebugBuildConfig : CordovaLib: processDebugResources : CordovaLib: generateDebugSources : CordovaLib: incrementalDebugJavaCompilationSafeguard : CordovaLib: compileDebugJavaWithJavac : CordovaLib: compileDebugJavaWithJavac - не является инкрементным (например, выходные данные изменились, без предыдущего выполнения и т. Д.). Примечание. Некоторые входные файлы используют или отменяют устаревший API. Примечание: Перекомпилируйте с -Xlint: не рекомендуется для деталей. : CordovaLib: processDebugJavaRes ОБНОВЛЕНИЕ : CordovaLib: transformResourcesWithMergeJavaResForDebug : CordovaLib: transformClassesAndResourcesWithSyncLibJarsForDebug : CordovaLib: mergeDebugJniLibFolders : CordovaLib: transformNative_libsWithMergeJniLibsForDebug : CordovaLib: transformNative_libsWithSyncJniLibsForDebug : CordovaLib: bundleDebug : prepareProjectCordovaLibUnspecifiedDebugLibrary : prepareDebugDependencies : compileDebugAidl : compileDebugRenderscript : generateDebugBuildConfig : generateDebugResValues : generateDebugResources : mergeDebugResources : processDebugManifest : processDebugResources : generateDebugSources : incrementalDebugJavaCompilationSafeguard : compileDebugJavaWithJavac : compileDebugJavaWithJavac - не является инкрементным (например, выходные данные изменились, без предыдущего выполнения и т. д.). Примечание. Некоторые входные файлы используют или отменяют устаревший API. Примечание: Перекомпилируйте с -Xlint: не рекомендуется для деталей. : compileDebugNdk ОБНОВЛЕНИЕ : compileDebugSources : mergeDebugShaders : compileDebugShaders : generateDebugAssets : mergeDebugAssets : transformClassesWithDexForDebug : mergeDebugJniLibFolders : transformNative_libsWithMergeJniLibsForDebug : processDebugJavaRes UP-TO-DATE : transformResourcesWithMergeJavaResForDebug : validateSigningDebug : packageDebug : assembleDebug : CdvBuildDebug

СТРОИТЬ УСПЕШНО Общее время: 2.007 сек. Команда завершилась с кодом ошибки 0: / project / gradlew cdvBuildDebug, -b, / project / build.gradle, -Dorg.gradle.daemon = true, -Dorg.gradle.jvmargs = -Xmx2048m, -Pandroid.useDeprecatedNdk = true Построил следующие apk (s): /project/build/outputs/apk/project-debug.apk

1 Ответ

0 голосов
/ 30 октября 2018

Вы должны добавить строки в тег <platform name="android">

И я думаю, что вы должны сделать то же самое (<platform name="ios"> ) для этих строк:

<edit-config file="*-Info.plist" mode="merge" target="NSLocationWhenInUseUsageDescription">  
    <string>This app features timesheet entries, i.e, user can punch in/out recording their date, time and location. work hours are calculated based on it. The location information is sent their own CRM systems for their manager's reference for reviewing timesheets.</string>  
</edit-config>
...