We are developing a C++ core for our mobile app. We would use unqlite DB. We compiled it successfully for iOS and for Android.
http://unqlite.org/downloads.html
When we try to compile it for WinRT, we receive a lot of errors. There is someone who has compiled it for WinRT?
Theoretically Windows Phone is supported (http://www.developereconomics.com/five-popular-databases-for-mobile/).
Thanks
As I know, if you have some C++ Library and want to use in Windows Phone Project you need:
Create Windows Runtime Component (C++ project)
Include your C++ Library into Windows Runtime Component
Establish bridge between your C++ Library and Windows Phone Project
You cannot include an usual C++ Library in Windows Phone (Store) project
Is JNI supported on the BlackBerry 10 Android Runtime? I would like to execute native c code in my android app which I'd like to deploy on the blackberry 10 os. In my android app, I use JNI to handle callbacks from the native c code to the java code. Is this supported on the bb10 android runtime?
All I could find is this thread: Any plans for supporting Android Native Code which doesn't appear to have an official response.
My guess is that 'no' Android NDK won't be supported as Blackberry 10 already has a Native C/C++ SDK for those pure C/C++ apps (games, other performance heavy apps) or if you want UI widgets to use the C++/Qt/Cascades framework.
Edit: Found the official response under the Unsupported Software Features: 'Apps that utilize native code bundled into their APK file'. Blackberry 10 Unsupported Software Features for Android. So its a definite no for the Blackberry 10.1 and lower runtime using Android Gingerbread.
2013-12-05 Update: Looks like Blackberry 10.2 will be supporting Jelly Bean and have general support for Android JNI via the Android NDK with some limitations. See Blackberry Android Native Support
This question already exists:
Closed 10 years ago.
Possible Duplicate:
iPhone development on Windows
Xcode 4 only works on Mac and I am getting project requests for iOS and I need to develop iOS applications without uying a Mac. I have a Windows PC. Is there an IDE which works well with iOS SDK or is developing C++ code which uses iOS SDK libraries the only choice?
If you are familiar with C#, consider monotouch. You will need a mac to register the app in any case.
One newer solution which is open source is called MonoCross.
Here's a link to their site, and here's the Google code site.
From their site:
Monocross is an open source cross-platform mobile framework using C#
.NET and the Mono framework. Monocross lets you create beautiful
applications on iPads, iPhones, Android devices, Windows Phone 7, and
Webkit enabled phones.
It uses C#. No C++ required.
Edit: MonoCross uses MonoTouch.
In your situation, if you have no Mac around, it will be better and easier to use VirtualBox (or VMware) and install MacOS there. And to develop inside the VB.
I'm going to write an application for iOS, Mac OS X and Windows Phone 7.
To minimize the amount of work, I'd like to write the model only once, in C++ (otherwise I'd have to do it twice; in Objective-C and in C#).
Can I use C++ in a Windows Phone 7 application, together with C#?
No you cannot use C++ for WP7 apps. However you might be able to use Monotouch to write some shared code in C# between the 2 platforms.
Taken from here: Windows Mobile 7 and C++
All Windows Mobile 7 (now called Windows Phone 7 ) development, at
least initially, will be in managed code. Development using native
languages like C/C++ is not supported for third parties. You can
develop apps and games for Windows Phone 7 using the Silverlight or
XNA framework, and the initial release supports only C#, VB support is
supposed to be coming out soon.
It's from June 2010.
Can I do Android programming in C++, C? If the answer is "yes" then please tell how? And what's the procedure to set up?
I don't know Obj-C, Java, but well-versed in C, C++, Flash AS3, SDK released by Google.
Please do not tell about NVDIA SDK it's not fully developed :)
PLEASE NOTE: THE ANSWER BELOW IS HORRIBLY OUTDATED, AND MIGHT NOT BE ENTIRELY CORRECT ANYMORE.
You can program in C/C++ using the Android NDK. You'll have to wrap your c++ codebase in a static library and load that through a Java wrapper & JNI.
The standard NDK does not support RTTI and a lot of the functionality of standard c++ is also not available such as std::string, etc. To solve this you can recompile the NDK. Dmitry Moskalchuk supplies a modified version of the NDK that supports this at http://www.crystax.net/android/ndk-r3.php. This modified version works on all Android phones that run on an ARM processor.
Depending on the kind of application you should decide to use Java or C/C++. I'd use C/C++ for anything that requires above average computational power and games -- Java for the rest.
Just pick one language and write the majority of your application in that language; JNI calls can decrease your performance by a lot. Java isn't that hard though -- if you know how to program in C/C++. The advantage of Java is that the application can run on any device running Android, where as NDK applications depend on the architecture it was compiled for.
You should use Android NDK to develop performance-critical portions of your apps in native code. See Android NDK.
Anyway i don't think it is the right way to develop an entire application.
Yes, you can program Android apps in C++ (for the most part), using the Native Development Kit (NDK), although Java is the primary/preferred language for programming Android, and your C++ code will likely have to interface with Java components, and you'll likely need to read and understand the documentation for Java components, as well. Therefore, I'd advise you to use Java unless you have some existing C++ code base that you need to port and that isn't practical to rewrite in Java.
Java is very similar to C++, I don't think you will have any problems picking it up... going from C++ to Java is incredibly easy; going from Java to C++ is a little more difficult, though not terrible. Java for C++ Programmers does a pretty good job at explaining the differences. Writing your Android code in Java will be more idiomatic and will also make the development process easier for you (as the tooling for the Java Android SDK is significantly better than the corresponding NDK tooling)
In terms of setup, Google provides the Android Studio IDE for both Java and C++ Android development (with Gradle as the build system), but you are free to use whatever IDE or build system you want so long as, under the hood, you are using the Android SDK / NDK to produce the final outputs.
You should look at MoSync too, MoSync gives you standard C/C++, easy-to-use well-documented APIs, and a full-featured Eclipse-based IDE. Its now a open sourced IDE still pretty cool but not maintained anymore.
You can take a look also at C++ Builder XE6, and XE7 supports android in c++ code, and with Firemonkey library.
http://www.embarcadero.com/products/cbuilder
Pretty easy way to start, and native code. But the binaries have a big size.
You can use the Android NDK, but answers should note that the Android NDK app is not free to use and there's no clear open source route to programming Android on Android in an increasingly Android-driven market that began as open source, with Android developer support or the extensiveness of the NDK app, meaning you're looking at abandoning Android as any kind of first steps programming platform without payments.
Note: I consider subscription requests as payments under duress and this is a freemium context which continues to go undefeated by the open source community.
There is more than one library for working in C++ in Android programming:
C++ - qt (A Nokia product, also available as LGPL)
C++ - Wxwidget (Available as GPL)