Im not strong developer in android development.
So.. Old application uses HERE SDK for Android (Starter Edition) 3.12
But it doesnt work with android 10+ (because of scoped storage)
How to upgrade version to 3.13 ?
The Starter Edition is no longer maintained. Using this legacy edition is not future proof. In the long run, consider to move to the HERE SDK for Android (Explore Edition). Even if your project contains a lot of code, this not so difficult to do as it sounds. Here is a link to a migration guide that may be of some help.
Scroll to the end of this guide and look for the example app tables, they contain links to old code versus new code.
Related
Is it possible to create a new iOS app with exsisting sources?
I am working with xamarin in Visual-Studio. I've got a project, an app that runs on Android devices. But can I make a new project for an iOS app with those existing sources? I have a Macbook that I can use to do this. I also have a PC with windows 10 on it. So the hardware/software requierments shouldn't be a problem.
Getting to the point..
Is it possible to transform the project from an Android app to an iOS app without writing any code extra? And how can I accomplish this, any tutorials that I can watch/read?
The code language is C#. The programs that I am using are Visual studio and the xamarin extention.
I've read something about Platform Abstraction and Divergent Implementation on the xamarin ducomentation page, but this couldn't fully answer my question.
Short answer: NO.
Long answer:
There are a quite a few cross platform developing tools out there. Xamarin, like the one you are using, or Cordova. They simplifies the development by "A LOT" but you can't just convert one app to another without writing 0 code. Some of the libraries in one platform do not exist in the other. So, the long answer is that cross platform shortens the development cycle as you do not need to start from scratch on other platform, that does not mean it can completely convert.
P.S. Youtube is your friend, but the difficulty of the transformation solely depends on the scope of your project, as they vary a lot.
I second the other answers.
Furthermore, I'd like to propose to have a look at Flutter.
Flutter is based on Dart language . The framework and your application get compiled from Dart to the Android and the iOS target platform.
Flutter is a product of Google and likely to get the base development environment for Fuchsia, a new OS from Google.
My own experiments with Xaramin ended up kind of frustrating. The development was slow, several times problems with Xamarin itself or plugins made me stop the effort.
At the other side, I created an app with Flutter quite fast. While Dart and Futures might seem at first quite different compared to other concepts/languages, after some time things turn out to be very natural and well designed.
While Flutter originally was based on Material design, Google added an iOS theme using CupertinoWidget.
A simply great feature is the enormous quick development turnaround time: The app under development very ofter adopts within just a second your source-code changes. Flutter/Dart hot reloads changed classes often instantly.
Android Studio is a great and free IDE for Flutter development. Plugins enhance to IDE with Flutter development tasks.
If you have android application written in Java you can use Migeran Analyzer to understand how much % of the code could be reused between android and iOS: https://analyzer.migeran.com/
Once you have the % you can use Intel Multi-OS Engine (free product) to create cross-platform application in Java: https://software.intel.com/en-us/multi-os-engine. It will have module with cross-platform shared code, android specific code module and iOS specific code module
My Android app has a android:minSdkVersion="8" which I want to keep, but at the same time, for users running Android 3.0 and above, I want to create a widget backed up by a collection.
Following the steps here http://developer.android.com/guide/topics/appwidgets/index.html#collections
I run into a compilation error, because I need to use classes from API level 11 (RemoteViewsService).
So is there a way to do this? To keep the app available for people with Android 2.2+ but in it build a widget for people with Android 3.0+? It should be possible.
GMail does it, it's available for earlier versions of Android but also provides this kind of widgets for Android 3.0+ users.
Thanks
I think perhaps the following answer on SO can provide some insight:
Android Min SDK Version vs. Target SDK Version
In essence, you have two variables you can define: Min SDK and Target SDK. The above link will explain in great clarity how to use them.
First time developing for Android.
I've noticed that the latest SDK is v4.x but I've noticed informally that most people are running v2.3
If I develop an app using the 4.x SDK. will it refuse to run on 2.3 phones? Or will certain features be disabled?
Should I develop using the 2.3 SDK instead?
Before answering the question, something should be cleared up: There's a difference between the version of Android (2.3, 4.x, etc) and the version of the API it runs on (which is ALWAYS an integer: 10,11,12, etc). The relationship between Android platforms and their respective API versions can be found on this page. By way of example, Android 2.3 uses API 10, and Android 4.0 uses API 15.
Furthermore, there's only one SDK, which has downloadable modules for coding against various versions of the API. So it's not that you're using v4.x of the SDK, it's that you're using the SDK, period, and coding against version 15 of the API :).
That said: The best thing to do is set minSdkVersion to the minimum version of Android your application will run on, and set targetSdkVersion to the most current version of Android. Then you can use Build.VERSION_CODES to check for new versions of the platform at runtime, and activate new platform features as necessary. A good tutorial on how to do this is on the Android Developer blog, titled How to have your cupcake, and eat it too.
I would even recommend targeting 2.2 as I still have a large number of users (16%) running Android 2.2. Here is a break down of on one of my apps that shows what version users are currently running. (See attached picture). Like J. Maes said the lower you can build it the more users you can capture. Although there are trade-offs that you will have to make by using an older SDK. For most purposes I haven't had much of an issue targeting 2.2. It allows me access to a larger customer base.
You should use the lowest version that supports all the features you want to use in your app. If you think a 4.x feature is absolutely necessary in you app, then you should use it. If not, use 2.3, so more people can run it as Android is backwards compatible.
I've finished setting up the Android SDK in Eclipse and now I have to wonder, what are some popular methods for developing a game on Android? My Java knowledge is pretty limited to be honest so I don't know much about the included graphics library or even if it works with Android, most of my experience is in C++ with Ogre or SFML. I understand SDL is pretty similar to SFML so I might give that a try. Also, should I use the newest version of the SDK (Android 4.0.3 API level 15 is what my AVD is) or an older version to support the most devices?
There are a lot of methods to develop a game on Android. It depends on a specificity of the game you are going to create and your personal expirience.
In my projects I use libgx http://code.google.com/p/libgdx/. It's enough good to satisfy my expectations.
There are some cross-platform frameworks that make it possible to create games for Android and iOS (CoronaSDK, Marmalade).
I heard Ogre code is able to be compiled on Android. I think you should investigate this question :).
Please, let me know if it's possible.
What target version of SDK you should use you can see here:
http://developer.android.com/resources/dashboard/platform-versions.html
Best regards
Some links to help you further:
Getting started in Android game development
Playing with graphics in Android
The Game Loop
Writing real-time games for Android (Google I/O 2009)
About the SDK - start off low, say Android 1.5. If you encounter things that are not available in this version, increase the build target. This way you can reach the most users.
If I'd want to develope for Android as a starter, I'd:
1) Learn Java. It won't be tough if you're used to other languages like C++
2) Make some tutorials (Internet is full of them)
3) Develope for an older version of Android such as 2.2 or 2.3 (There's no need to develope for even older versions, as almost all cellphone's have been updated to at least 2.2). In my opinion, developing now for Ice Cream Sandwich is worthless as nobody will be able to use your application (Ok there are some people, but they're not a lot actually). I think developing for 4.0 is atractive for big companies, with projects that can last for months, so when it's time for their app to be published, the market will be ready. Doing it before that is just closing your market -I assume you're not going to enter with a giant application yet-
And that's kind of everything you should know :)
Was wondering if anyone knew of some third party android development toolkits.
I have found Basic4Android.
Was wondering what other options are available.Language does not matter.
Thanks
Qt for Android (Alpha version) got launched last week.
Motorola has a custom dev environment built on top of eclipse (MOTODEV). It is not Motorola specific and you can use it for regular development. I have been playing around with it for a week and it is much more convenient than the standard Android Eclipse plugin.
EDIT: Forgot to mention there is AppInventor (currently in Beta) which is a drag and drop development environment from Google. It is a useful tool if you want to get a feel for development or you are developing just for your phone. It does not generate Java code (as yet) and there some restrictions on it like only single screen apps are supported. It has got a healthy community and lot of college students (in the U.S) seem to be using it.
MonoDroid is also another development stack for Android using C# and .NET API's. You can use Microsoft Visual Studio IDE to develop applications using MonoDroid.