как обновить плагин cordova android @ v6, чтобы он был совместим с android @ v7 +? - PullRequest
0 голосов
/ 24 августа 2018

Существует более старый плагин, который я до сих пор использую, который отлично устанавливается и работает с cordova-android@6.x, но не устанавливается и не работает с cordova-android@7.x (+).

Это проблема с выравниванием путей ... преобразование путей установки, которые были действительны в v6, в новые пути, необходимые для v7.

Я разбудил плагин и пытаюсь обновить все пути, чтобы онбудет установлен правильно с адресом cordova-android@7.x и выше.Я получил его до такой степени, что он отлично устанавливается, но когда приложение компилируется и запускается на устройстве / телефоне - ошибки приложения при запуске с "Class Not Found".

Фактическая ошибка при запуске приложения:

Alert: Error initializing Cordova: class not found
Application Error: The connection to the server was unsuccessful (file:///android_asset/www/index.html)

Файл Orig:

<platform name="android">
<config-file target="res/xml/config.xml" parent="/*">
    <feature name="DialogGPS">
        <param name="android-package" value="cl.rmd.cordova.dialoggps.DialogGPS"/>
    </feature>
</config-file>


<source-file src="src/android/DialogGPS.java" target-dir="src/cl/rmd/cordova/dialoggps" />
<source-file src="www/icon/drawable-hdpi/ic_location.png"  target-dir="res/drawable-hdpi/"/>
<source-file src="www/icon/drawable-mdpi/ic_location.png"  target-dir="res/drawable-mdpi/"/>
<source-file src="www/icon/drawable-xhdpi/ic_location.png"  target-dir="res/drawable-xhdpi/"/>
<source-file src="www/icon/drawable-xxhdpi/ic_location.png"  target-dir="res/drawable-xxhdpi/"/>
<source-file src="www/icon/drawable-xxxhdpi/ic_location.png"  target-dir="res/drawable-xxxhdpi/"/>

<config-file target="AndroidManifest.xml"    parent="/manifest">
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</config-file>
</platform>

Изменено на:

<platform name="android">
<config-file target="/app/src/main/config.xml" parent="/*">  <!-- target path updated -->
    <feature name="DialogGPS">
        <param name="android-package" value="cl.rmd.cordova.dialoggps.DialogGPS"/>
    </feature>
</config-file>


<source-file src="src/android/DialogGPS.java" target-dir="src/cl/rmd/cordova/dialoggps" />  <!-- I think this is the issue -->
<source-file src="www/icon/drawable-hdpi/ic_location.png"  target-dir="/app/src/main/res/drawable-hdpi/"/> <!--  target paths updated -->
<source-file src="www/icon/drawable-mdpi/ic_location.png"  target-dir="/app/src/main/res/drawable-mdpi/"/>
<source-file src="www/icon/drawable-xhdpi/ic_location.png"  target-dir="/app/src/main/res/drawable-xhdpi/"/>
<source-file src="www/icon/drawable-xxhdpi/ic_location.png"  target-dir="/app/src/main/res/drawable-xxhdpi/"/>
<source-file src="www/icon/drawable-xxxhdpi/ic_location.png"  target-dir="/app/src/main/res/drawable-xxxhdpi/"/>

<config-file target="AndroidManifest.xml"    parent="/manifest">
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</config-file>
</platform>

Я думаю, что проблема связана с целевым путем для файла Java, но я незнать, что изменить это тоже.Я думаю, что java-файл может быть нацелен на /app/src/main/java/cl/rmd/cordova/dialoggps, но я не уверен.

...