Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi Android: Was ist die "richtige" SDK API Version? (https://www.delphipraxis.net/178728-android-ist-die-richtige-sdk-api-version.html)

Mavarik 16. Sep 2014 22:12

AW: Android: Was ist die "richtige" SDK API Version?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1272798)
Ich mache mal einen Schuss ins Blaue ohne Anspruch auf Richtigkeit:

Wenn du nur die Funktionen benutzt, die von Delphi bereitgestellt werden, dann läuft die Anwendung auf allen genannten Versionen.

Importierst du dir zusätzlich noch irgendwelche Klassen/APIs, dann funktioniert die Anwendung nur noch auf den Versionen, die diese API auch anbietet

und was ist hiermit?

Zitat:

Zitat von Mavarik (Beitrag 1272527)
Welchen von den zig Pfaden in den Einstellungen muss ich den jetzt umstellen, um eine App für die unterschiedlichen Versionen zu erzeugen?

Mavarik

Sir Rufo 16. Sep 2014 22:31

AW: Android: Was ist die "richtige" SDK API Version?
 
Wenn meine Vermutung zutrifft, dann keinen :stupid:

Mavarik 17. Sep 2014 09:36

AW: Android: Was ist die "richtige" SDK API Version?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1272839)
Wenn meine Vermutung zutrifft, dann keinen :stupid:

Doch mit Sicherheit... Irgendwie muss ich der IDE ja sagen wo gegen "sie" linken soll.

mkinzler 17. Sep 2014 09:57

AW: Android: Was ist die "richtige" SDK API Version?
 
Das macht das SDK/NDK, nicht Delphi selber

Mavarik 17. Sep 2014 10:47

AW: Android: Was ist die "richtige" SDK API Version?
 
Zitat:

Zitat von mkinzler (Beitrag 1272860)
Das macht das SDK/NDK, nicht Delphi selber

Na Prima... Und wie stelle ich das um, wenn ich gegen Android 2.3 linken möchte?

Union 17. Sep 2014 12:22

AW: Android: Was ist die "richtige" SDK API Version?
 
Dann hast Du ein Problem, denn die Version hat es nie gegeben ;) Den API-Level stellst Du im SDK Manager unter SDK-API-Level Speicherort ein. Übrsicht der Versionen und API-Levels z.b. hier.

Mavarik 17. Sep 2014 12:35

AW: Android: Was ist die "richtige" SDK API Version?
 
Zitat:

Zitat von Union (Beitrag 1272870)
Den API-Level stellst Du im SDK Manager unter SDK-API-Level Speicherort ein. Übrsicht der Versionen und API-Levels z.b. hier.

Das ist mir schon klar...

Nur den?
C:\Users\Public\Documents\Embarcadero\Studio\14.0\ PlatformSDKs\adt-bundle-windows-x86-20131030\sdk\platforms\android-19
oder auch
C:\Users\Public\Documents\Embarcadero\Studio\14.0\ PlatformSDKs\adt-bundle-windows-x86-20131030\sdk\build-tools\android-4.4\Aapt.exe

was ist hiermit?
C:\Users\Public\Documents\Embarcadero\Studio\14.0\ PlatformSDKs\android-ndk-r9c\platforms\android-14
C:\Users\Public\Documents\Embarcadero\Studio\14.0\ PlatformSDKs\android-ndk-r9c\platforms\android-14\arch-arm\usr\lib;
C:\Users\Public\Documents\Embarcadero\Studio\14.0\ PlatformSDKs\android-ndk-r9c\sources\cxx-stl\gnu-libstdc++\4.8\libs\armeabi-v7a


Diese Pfade SDK (19) NDK (14) wird bei mir als SDK 22.3 unter den Android SDK-Versionen gelistet...

Mavarik

Mavarik 18. Sep 2014 13:30

AW: Android: Was ist die "richtige" SDK API Version?
 
Hat den keine mal ne aussagekräftige Antwort für mich,
Welche API & NDK Level man zusammen verwenden muss/kann?

Keine Ahnung woher der SDK-Versionsname kommt...

Aber: SDK-API-Level 10 (GINGERBREAD_MR1 Plattform Version 2.3.3 & 2.3.4
Funktioniert nicht...
Ich habe mittlerweile rausgefunden woran es liegt: (Das Attribut "largeheap" aus der AndroidManifest.xml existiert nicht.)
ohne das geht es dann... (Extern per Batch)

SDK-API-Level 11 geht, obwohl das ja eigentlich nicht unterstützt wird, laut DocWiki.
Dazu habe ich mal "blind" NDK-Level 12 genommen...
Das läuft auf meinen Nexus 10... schon mal... :wall:
(Eigentlich sollte das doch nicht unterstützt sein...)

Mavarik

Sir Rufo 19. Sep 2014 08:31

AW: Android: Was ist die "richtige" SDK API Version?
 
Warum stellst du das per Batch ein?

Hier steht es doch was du machen sollst:
http://docwiki.embarcadero.com/RADSt...Bereitstellung
Zitat:

Um die Ausgabedatei AndroidManifest.xml eines einzelnen Projekts anzupassen, bearbeiten Sie den Inhalt von AndroidManifest.template.xml.
Das ist diese Datei mit den Platzhaltern - und die kann man überschreiben oder auch entfernen ;)
XML-Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- BEGIN_INCLUDE(manifest) -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="%package%"
        android:versionCode="%versionCode%"
        android:versionName="%versionName%">

    <!-- This is the platform API where NativeActivity was introduced. -->
    <uses-sdk android:minSdkVersion="%minSdkVersion%" android:targetSdkVersion="%targetSdkVersion%" />
<%uses-permission%>
    <application android:persistent="%persistent%"
        android:restoreAnyVersion="%restoreAnyVersion%"
        android:label="%label%"
        android:installLocation="%installLocation%"
        android:debuggable="%debuggable%"
        android:largeHeap="%largeHeap%"
        android:icon="%icon%"
        android:theme="%theme%"
        android:hardwareAccelerated="%hardwareAccelerated%">
        <!-- Our activity is a subclass of the built-in NativeActivity framework class.
             This will take care of integrating with our NDK code. -->
        <activity android:name="com.embarcadero.firemonkey.FMXNativeActivity"
                android:label="%activityLabel%"
                android:configChanges="orientation|keyboardHidden"
                android:launchMode="singleTask">
            <!-- Tell NativeActivity the name of our .so -->
            <meta-data android:name="android.app.lib_name"
                android:value="%libNameValue%" />
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <%activity%>
        <receiver android:name="com.embarcadero.firemonkey.notifications.FMXNotificationAlarm" />
        <%receivers%>
    </application>
</manifest>
<!-- END_INCLUDE(manifest) -->
BTW: Default wird
Delphi-Quellcode:
%minSdkVersion%
mit
Delphi-Quellcode:
9
ersetzt und
Delphi-Quellcode:
%targetSdkVersion%
mit
Delphi-Quellcode:
11
. Eine Einstellung in der IDE habe ich dafür nicht gefunden :roll: aber man kann das ja auch im Template einfach fest überschreiben

Mavarik 21. Sep 2014 14:52

AW: Android: Was ist die "richtige" SDK API Version?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1273088)
Warum stellst du das per Batch ein?

Ich stelle das nicht im Batch ein, sondern überprüfe im Batch die Fehlermeldungen.

PAClient Error Code 1 ist nicht so aussagekräftig.

Zitat:

Zitat von Sir Rufo (Beitrag 1273088)
BTW: Default wird
Delphi-Quellcode:
%minSdkVersion%
mit
Delphi-Quellcode:
9
ersetzt und
Delphi-Quellcode:
%targetSdkVersion%
mit
Delphi-Quellcode:
11
. Eine Einstellung in der IDE habe ich dafür nicht gefunden :roll: aber man kann das ja auch im Template einfach fest überschreiben

Genau und Schwup die Wup laufen alle Android Programme nicht mehr, wenn man die targetSdkVersion wie beschrieben setzt.
Dazu gibt es auch einen QC... Fehler behoben mit XE7...


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:15 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz