Cordova build App Sdk 34

 When building, file _PROJECT_\config.xml will be copied to:

_PROJECT_\platforms\android\app\src\main\res\xml\config.xml
 

 

<?xml version='1.0' encoding='utf-8'?>
<widget xmlns:cdv="http://cordova.apache.org/ns/1.0" id="com.example" version="1.0.5"
xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android">
<name>titleTitle</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="dev@cordova.apache.org" href="http://cordova.io">
Apache Cordova Team
</author>
<content src="index.html" />
<access origin="*" />
<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:*" />
<preference name="android-targetSdkVersion" value="34" />
<preference name="android-minSdkVersion" value="23" />


<icon density="ldpi" src="resources/android/icon/drawable-ldpi-icon.png" />
<icon density="mdpi" src="resources/android/icon/drawable-mdpi-icon.png" />
<icon density="hdpi" src="resources/android/icon/drawable-hdpi-icon.png" />
<icon density="xhdpi" src="resources/android/icon/drawable-xhdpi-icon.png" />
<icon density="xxhdpi" src="resources/android/icon/drawable-xxhdpi-icon.png" />
<icon density="xxxhdpi" src="resources/android/icon/drawable-xxxhdpi-icon.png" />
<splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png" />
<splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png" />
<splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png" />
<splash density="land-xhdpi"
src="resources/android/splash/drawable-land-xhdpi-screen.png" />
<splash density="land-xxhdpi"
src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
<splash density="land-xxxhdpi"
src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
<splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png" />
<splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png" />
<splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png" />
<splash density="port-xhdpi"
src="resources/android/splash/drawable-port-xhdpi-screen.png" />
<splash density="port-xxhdpi"
src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
<splash density="port-xxxhdpi"
src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />


</platform>

<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>


<edit-config file="app/src/main/AndroidManifest.xml" mode="merge"
target="/manifest/application/activity">
<activity android:exported="true" />
</edit-config>



</widget>


=====================
Optional
=====================
<edit-config file="app/src/main/AndroidManifest.xml" target="/manifest/application/service" mode="merge">
<service android:exported="true" />
</edit-config>
<edit-config file="app/src/main/AndroidManifest.xml" target="/manifest/application/receiver" mode="merge">
<receiver android:exported="true" />
</edit-config>
<edit-config file="app/src/main/AndroidManifest.xml" target="/manifest/application/provider" mode="merge">
<provider android:exported="true" />
</edit-config>


НЕ ИСПОЛЬЗОВАТЬ
<edit-config file="app/src/main/AndroidManifest.xml" target="/manifest/application/provider" mode="merge">
<provider android:exported="true" />
</edit-config>


Caused by: java.lang.SecurityException: Provider must not be exported
at android.support.v4.content.FileProvider.attachInfo(FileProvider.java:385)



<edit-config file="app/src/main/AndroidManifest.xml" target="/manifest/application/provider" mode="merge">
<provider android:exported="false" />
</edit-config>


C:\Program Files (x86)\Common Files\Oracle\Java\javapath

 `C:\Program Files (x86)\Common Files\Oracle\Java\javapath` - это путь к каталогу, который содержит символические ссылки на исполняемые файлы Java (например, `java.exe`, `javac.exe`, и т. д.). Этот путь обычно добавляется в переменную среды `PATH` при установке Java на компьютер.
Использование символических ссылок позволяет разработчикам и пользователям использовать Java без явного указания пути к исполняемым файлам. Вместо этого они могут вызывать команды Java, такие как `java` или `javac`, прямо из командной строки или сценария, и операционная система будет знать, где найти соответствующие исполняемые файлы.
Кроме того, путь `javapath` обычно указывает на каталог установки Java Runtime Environment (JRE) или Java Development Kit (JDK), которые могут использоваться различными приложениями или разработчиками для выполнения Java-кода.

 

 ========================================

 two files missing in SDK build tool 31(and 34) that are:

  1. dx.bat
  2. dx.jar

The solution is that these files are named d8 in the file location so changing their name to dx will solve the error.

The steps are below.

For Windows

  1. go to the location

     "C:\Users\user\AppData\Local\Android\Sdk\build-tools\31.0.0"
    
  2. find a file named d8.bat. This is a Windows batch file.

  3. rename d8.bat to dx.bat.

  4. in the folder lib ("C:\Users\user\AppData\Local\Android\Sdk\build-tools\31.0.0\lib")

  5. rename d8.jar to dx.jar

Remember AppData is a hidden folder. Turn on hidden items to see the AppData folder.

Windows Tweaks. Android Mobile Reverse Engineering

 Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Decompile with apktool]
@="Decompile with apktool"

[HKEY_CLASSES_ROOT\*\shell\Decompile with apktool\command]
@="\"D:\\bin\\apktool.bat\" d \"%1\""