Показаны сообщения с ярлыком Cordova. Показать все сообщения
Показаны сообщения с ярлыком Cordova. Показать все сообщения

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.

How to remove unnecessary cordova permissions?




Cordova - remove unnecessary permissions
How to remove unnecessary cordova permissions?
Remove not needed permissions from cordova config


When building a project, some of the dependencies plugins add unnecessary permissions.


 We throw the file remove_permissions.js in the folder with the plugins

Example:
<ROOT_PROJECT_PATH>\plugins\cordova-plugin-whitelist\remove_permissions.js


Editing the plugin configuration (plugin.xml)

<platform name="android">
        ....
 <hook type="after_prepare" src="remove_permissions.js"/>
    </platform> 




Also we do with the configuration in the project root

###### remove_permissions.js ##########


var permissionsToRemove = [ "RECORD_AUDIO", "RECORD_VIDEO", "RECORD_VIDEO", "INTERNET" ];

var fs = require('fs');
var path = require('path');
var rootdir = "";
var manifestFile = path.join(rootdir, "platforms/android/app/src/main/AndroidManifest.xml");

fs.readFile( manifestFile, "utf8", function( err, data )
{
    if (err)
        return console.log( err );

    var result = data;
    for (var i=0; i<permissionsToRemove.length; i++)
        result = result.replace( "<uses-permission android:name=\"android.permission." + permissionsToRemove[i] + "\" />", "" );

    fs.writeFile( manifestFile, result, "utf8", function( err )
    {
        if (err)
            return console.log( err );
    } );
} );



Buil Project
cordova build --release android -- --versionCode=1



Check tool
https://vaibhavpandey.com/apkstudio/

PHONEGAP


1. node js http://nodejs.org/ INSTALL (npm идет в наборе)
2. GIT http://git-scm.com/download/win

GIT
=======================
;W:\Program Files (x86)\Git\bin;W:\Program Files (x86)\Git\cmd



Добавляем
;C:\Development\android-sdk-windows\platform-tools;C:\Development\android-sdk-windows\tools

Добавляем
C:\Users\combo\AppData\Roaming\npm

npm -v


node -v   CORDOVA


$ sudo npm config set proxy http://proxy:8080
$ sudo npm config set https-proxy http://proxy:8080

$ npm config list

$ npm install -g cordova

$ npm update -g cordova

$ cordova --version
-----------------------------------------
$ git --version
$ git config --global http.proxy http://proxy:8080
$ git config --global https.proxy http://proxy:8080

$ git config --list
--------------------------------------------




  PHONEGAP ***

Сначала устанавливается nodejs.org, после ставиться сам phonegap

Install
-------
npm install -g phonegap

 если ошибки то
npm install -g phonegap@3.4
npm update -g phonegap

Usage
-------
$ phonegap create my-app
$ cd my-app
$ phonegap run android
        




C:\Users\AlexVarboffin\Desktop\phonegap-2.9.1\lib\android\bin>create Zahra com.psyberia.zahra ZahraApp

================================
Устанавливаем cordova
npm install -g cordova

C:\Users\AlexVarboffin\AppData\Roaming\npm\cordova -> C:\Users\AlexVarboffin\AppData\Roaming\npm\node_modules\cordova\bin\cordova

И соответственно запускаем команды в папке приложения
cordova plugin add org.apache.cordova.media 
cordova plugin add org.apache.cordova.globalization
cordova plugin add org.apache.cordova.inappbrowser


C:\Users\AlexVarboffin\Documents\NetBeansProjects\CordovaMapsSample>cordova plugin add org.apache.cordova.inappbrowser



GIT
=======================
;W:\Program Files (x86)\Git\bin;W:\Program Files (x86)\Git\cmd




C:\Users\AlexVarboffin\AppData\Roaming\npm\cordova -> C:\Users\AlexVarboffin\AppData\Roaming\npm\node_modules\cordova\bin\cordova


==========================================
nodejs.org



java -version
javac -version




NETBINS
http://nbandroid.org/updates/updates.xml





Android platform guide:

$ cordova create hello com.example.hello "HelloWorld"

Command Line Interface guide tells:

$ phonegap create hello com.example.hello HelloWorld



ECLIPSE 

ADT PLUGIN (http://developer.android.com/sdk/installing/installing-adt.html)

https://dl-ssl.google.com/android/eclipse/



ADB CONNECT
http://ppareit.github.com/AdbConnect/




STFU★Enjoy =)

----------------------- EMULATOR-------------
npm install -g ripple-emulator


cordova create apl
cd apl
cordova platforms add android

ripple emulate





ECLIPSE PLUGIN
------------------------
https://dl-ssl.google.com/android/eclipse/
https://dl.google.com/alt/


http://svn.codespot.com/a/eclipselabs.org/mobile-web-development-with-phonegap/tags/r1.2.91/download/


If your Eclipse installation doesn't yet include a web page editor for html files. Necessary for new Classic or Java editions.
Install New Software -> Work with: Indigo (or Helios) ->Web, XML Java EE, and OSGi Enterprise Development -> Web Page Editor