I am using Delphi 10.4 and I would like to install Android 31 API SDK. Delphi has its own SDK manager, available e.g. from 'Options - Deployment - SDK Manager'. And this SDK Manager has option 'Add...' 'Add a New SDK' - 'Select an SDK version' - 'Add New...'.
So far everything is fine. But 'Add New...' opens 'Create a new Android SDK' which does not provide options for downloading and installing SDKs, it just requires to the directories to an already installed SDK. It also suggests, that 'Android SDK Base path' could be '/Documents/Embarcader/Studio/21.0/CatalogRepository/AndroidSDK-2525'.
So, this suggests, that I should manually downaload Android SDK (specific API level) in unzip/install into the CatalogRepository for the specific Delphi version.
The strange thing is that Google/Android does not provide the option to download specific, standalone SDK. Android, instead, suggests to download its own SDK Manager tools https://developer.android.com/studio/#command-tools and then do all the SDK management from that tool. While I can expect that this command line tool smoothly integrates with Android Studio, there is not suggestion that it integrates with Delphi SDK Manager.
I am aware of Target Android API 29 on Delphi 10.3.3 and https://docwiki.embarcadero.com/RADStudio/Rio/en/Adding_an_Android_SDK, there is no suggestion how can I get SDK of specific API level to my computer.
So - how to get SDK of specific API level to my computer ready to be used by Delphi SDK manager.
Additional Information: I am reading https://delphiworlds.com/2020/09/manual-android-sdk-ndk-install-delphi/ and http://delphi.org/2019/06/manually-installing-android-sdk-ndk-and-java-for-firemonkey-development/ and they may give the answers. Delphi has it own peculiarities.
Related
Delphi comes with pre-installated Android SDKs that are installed during the installation time of the Delphi Development Studio. E.g. Delphi 10.2 (AKA 19.0) comes with Android SDK 24.3.3 with paths (Tools - Options - Environment Options - SDK Manager):
SDK base path:
C:\Users\Public\Documents\Embarcadero\Studio\19.0\CatalogRepository\AndroidSDK-2433_19.0.29039.2004
NDK base path:
C:\Users\Public\Documents\Embarcadero\Studio\19.0\CatalogRepository\AndroidNDK-9c_19.0.29039.2004
And Delphi 10.4 (AKA 21.0) comes with Android SDK 25.2.5 with paths:
SDK base path:
C:\Users\Public\Documents\Embarcadero\Studio\21.0\CatalogRepository\AndroidSDK-2525-21.0.38860.1461
NDK base path:
C:\Users\Public\Documents\Embarcadero\Studio\21.0\CatalogRepository\AndroidNDK-21-21.0.38860.1461\android-ndk-r21
My question is - what should I do to install Android SDK 24.3.3. in Delphi 10.4. This may be no the best thing to do, this may be even the incompatible thing to do, but, however, this is very good example of the situation when one SDK is shared by several Delphi versions.
https://www.embarcadero.com/starthere/xe5/mobdevsetup/android/en/adding_an_android_sdk.html (and partially https://www.embarcadero.com/starthere/seattle/mobdevsetup/android/en/adding_an_android_sdk.html) suggests that I can download the Android-provided SDK, unzip it in some custom directory and simply add those paths in the new-SDK fields for the paths.
But I am confused - where to get e.g. Android SDK 24.3.3? There are many 3rd party sites which may be unreliable. And will such simple installation work? E.g. I provided the examples of installation-time-installed SDKs and all of the contains the additional directories that depend on the verions of the Delphi - e.g. Android SDK 24.3.3 for Delphi 10.2 (19.0) has directories with the number 19 and Android SDK 25.2.5 for Delphi 10.3 (21.0) has directories with the number 21. So - Delphi may take some additional steps during installation and create those directories?
Or maybe Delphi is very conservative regarding the SDKs that can be used for the particular version of Delphi? It may be so, but it overexcessively limits the versions of devices that can be supported by the apps developer with particular version of Delphi. This paragraph (note) is not the additional question, it just makes suggestion that my main question can be irrelevant wrt how Delphi versining has been inteded?
You can install additional SDK's using SDK Manager tool of Android Studio. SDK Manager install Android SDK's by default to C:\Users<WindowsUser>\AppData\Local\Android\Sdk.
After installing Android SDK, should define it to Delphi IDE by using Tools -> Options form.
In Options form under Deployment - SDK Manager section, you can add new SDK for Android 64 or Android 32 platforms. During addition of new SDK, you should enter Android SDK install location of Adroid Studio for Android SDK base path. Again it is by default, C:\Users<WindowsUser>\AppData\Local\Android\Sdk.
For Android NDK base path, you have two options.
Option 1 is to use the NDK folder path of Delphi NDK installation.
For Delphi 11.2, it is C:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\AndroidNDK-21-22.0.46141.0937\android-ndk-r21.
Option 2 is to download another NDK from https://developer.android.com/ndk/downloads, extract the NDK to a folder and use this folder as NDK base path. You should be careful, since not all new versions of NDKs are supported by Delphi.
After adding new SDK to Delphi IDE, It is listed in SDK Versions list as "Android 32-bit" or "Android 64-bit". For example, it is listed as Android 33.0.3 64-bit.
In addition, you can upgrade Android SDK which Delphi installed. To upgrade your installation, the procedure given in the following link must be applied.
https://blogs.embarcadero.com/developing-for-android-11-12-with-delphi-11-alexandria/#updating-your-android-tools
as far as I know, you need to download new SDKs with SDK manager. Search for it.
Where can I find information about all listed Android SDK Tools, what they mean and (maybe) how to use.
The best place to visit is Android Developers site.
Android SDK Tools is a component of the Android SDK. It includes the complete set of development and debugging tools for Android. It comes as a part of Android Studio. So if you install Android Studio, Android SDK tools will also get installed. You can also install it separately if you are using any other IDE like Eclipse for development.
Please refer the links below to get a better understanding of,
Android SDK Tools released so far.
Android SDK Platform Tools
Android SDK Build Tools
Android Support Library Packages
Android SDK Platform-Tools is a component for the Android SDK. It includes tools that interface with the Android platform, such as adb, fastboot, and systrace. These tools are required for Android app development. They're also needed if you want to unlock your device bootloader and flash it with a new system image.
Although some new features in these tools are available only for recent versions of Android, the tools are backward compatible, so you need only one version of the SDK Platform-Tools.
Check it:
https://developer.android.com/studio/releases/platform-tools
I hope It helps!
I am new to Xamarin and Android development. I have installed VS 2017. I have installed Google APIs ARM under Android 7.1 API 25. But I am not able to create the emulator. It says "no cpu abi image available for this target". What I might be missing in it?
After googling further i came across a helpful link
The screenshots you have included appear to show the GUI interface for the Google AVD Manager included with Android SDK Tools <= 25.x. Google made the decision to remove the GUI interface for many of their tools in Android SDK Tools 26.
We have been working on creating our own GUI interfaces to replace the ones removed by Google in their SDK Tools. You'll notice that we have our own interface for the Android SDK Manager built right into Visual Studio for Mac. We are working on a similar solution for the AVD Manager.
Until we have published our own solution I would strongly recommend the following:
Update the Android SDK Tools to >= 26.X.
Remove any AVDs that you have already created with the old tooling (they will not work).
Create new AVDs using the avdmanager CLI tools included with v. 26 of the Android SDK Tools
https://developercommunity.visualstudio.com/content/problem/124590/no-cpuabi-system-images-available-for-this-target.html
i was installing android studio
and when i went to sdk manager it told me to install 10 packages by default .. while these packages were installing i lost my internet connection so i cancelled the whole process. now when i opened the android studio again on the home screen it says rendering fail and the phone which shows up in the middle of the screen (design view ) doesn't show up. i guess this happened due to some packages where not installed .. so i want to know what the the basic packages that i need to install. could someone post a list or a screen shot of your installed packages
You need
Android SDK tools
Android SDK platform-tools
Android SDK build-tools
Install everything in Android 5.0.1 (API 21) - or whatever the version you want
From Extras: Android Support Repository, Android Support Library, Google Play Services, Google Repository, Android Auto API Simulators, Intel x86 Emulator Accelerator(HAXM installer)
FYI, I'm using Eclipse IDE, so the names can be different. But these will be there in Android Studio too
Recommended packages by android developers
Android SDK Build Tools - Includes tools to build Android apps.
Android SDK Platform-tools - Includes various tools required by the Android platform, including the adb tool.
Android SDK Tools - Includes essential tools such as the Android Emulator and ProGuard.
Android Support Repository - Includes local Maven repository for Support libraries, which provide an extended set of APIs that are compatible with most versions of Android. It's required for products such as Android Wear, Android TV, and Google Cast.
Google Repository - Includes local Maven repository for Google libraries, which provide a variety of features and services for your apps, such as Google sign-in, Google Maps, Games achievements and leader boards, and much more.
In the SDK Platforms tab, you must also install at least one version of the Android platform. Required. At least one platform is required in your environment so you're able to compile your application. In order to provide the best user experience on the latest devices, use the latest platform version as your build target.
Why my target option in eclipse is disabled? I cant select the target platform.
On the other hand the platform folder and adds-on are empty.
Plz any ideas?
After you have installed your SDK, you need to download all the platforms you need (like Android 1.5, Google API's, so on...)
Then you should create some virtual devices with some parameters (like screen size, sd card...). Then you should run the app over the platform you like.
I guess you need to install required platforms.
Eclipse > Window > Android SDK and AVD Manager > Available Packages ....
Encountered the same problem. The Android SDK archive does not come populated with a specific Android platform or Google add-on. We can use the SDK Manager to install or update SDK components such as platforms,tools, add-ons, and documentation. I used the eclipse tooling option path provided by the first answer. There is also a "SDK Manager.exe" file that can be used to download outside eclipse.
You need to install the complete API that you're working on.
Suppose, In my case I am working on Android 5.0 SDK Tools and I Froyo 2.2 for minimum SDK Verison support. So Now I have 2 SDK Tools Installed, Android 5.0 and Android 2.2.
To make them support as Target SDK, I need to install the complete package from Android SDK Manager.
In your case install the complete package of the respective API you're using. After installing, restart eclipse and then your Target Option will be enabled.