Embarcadero extends congratulations to Apple on shipping iOS 7 today. Now that we have the public shipping bits we are doing some final testing our iOS 7 Style (which should be available to registered XE5 developers shortly). To whet your appetite, here is a screenshot of the FM Controls samples app we built this early afternoon.
~/jtPosted by J T on September 18th, 2013 under Uncategorized | Comment now »
From Marco’s Blog: http://blog.marcocantu.com/blog/delphi_arc_android.html
Delphi mobile compilers use Automatic Reference Counting. While ARC is commonly used on iOS, Android developers generally rely on a Garbage Collector.Posted by J T on August 30th, 2013 under Uncategorized | Comment now »
Or all three?Uncategorized | 1 Comment »
Printing from an Android device requires a little bit more setup than in iOS where you simply connect to an AirPrint capable printer (like my Epson XP-400). However, Android printing appears to work with any Wifi printer (or PC connected printer), so its more flexible. Basically, it consists of three steps.
First, download and install Google CloudPrint onto your device.
Second, setup your Wifi or connected printer with CloudPrint support (simple firmware upgrade on the XP-400).
Lastly, register the printer (and device you wish to print from) with your Google account.
Now that that is setup. I built and deployed FirePhoto and added support for the share intent through a standard (and provided) MediaPlayer action in the ActionList component.
And Voila! Printing from Android using FireMonkey.
Don’t forget to check out the current RAD offers and apply for Android beta access today:
Sign up for Android news/info and apply to be a beta tester: http://embt.co/RADBetaA
Special Offers: http://embt.co/XE4RadOffer
- 6 months maintenance free with new user purchases
- 2009 users get the upgrade price when buying with 1 year maintenance
- bonus pack of extras free
~/jtPosted by J T on August 16th, 2013 under Uncategorized | 4 Comments »
~/jtPosted by J T on August 14th, 2013 under Uncategorized | Comment now »
We’ve been in beta for a while now with Delphi for Android and the progress has been awesome. In particular, I’ve been taking iOS apps written with Delphi/FM and simply retargeting them to Android. It’s really amazing. Since this Android support has been under wraps, I am very excited to share with you some first public peeks.
Here’s an example of one such application, FirePhoto. First built with Delphi for iOS and by retargeting it in the IDE, it’s now running on an iPhone 5 and on my S4 and my Nexus 7 tablet.
Here are few more pics for your enjoyment:
Installing the APK package (and informing the user of requested permissions):
FirePhoto on iOS taking a picture of FirePhoto on Android and vice-versa.
Two different mobile OSs, same app functionality with the exact same source code!
In case you weren’t aware, we have a special offer going right now: 6 Months Support & Maintenance free on select new user products! Not only will you get the next 6 months of updates and major upgrades free, but you’ll also get priority access into our Android beta program!Posted by J T on August 9th, 2013 under Uncategorized | 21 Comments »
I was reading, with great interest, an article on Wired today about LLVM. The author correctly points out that most of his readership will probably not have heard of this technology but he posits it is incredibly important in the world they do know, iOS and Android, and how it is the last bastion of technology that binds Apple and Google together. As such, it is quickly becoming the industry standard.
LLVM is a technology that Embarcadero has been investing in for many years as well. Our first toolchain with LLVM was our 64-bit C++ compiler for Windows back in November. That release, by the way, represents the first commercial LLVM based compiler for Windows. It took many years to get to that point and now the pieces are falling into place for rapid releases. In April, we delivered our first ARM toolchain for iOS with LLVM and later this year it will be available for Android, followed shortly by a C++ version for both platforms.
LLVM is more than just a compiler backend (code generator) these days. It has become the umbrella project for many other of the toolchains from other language front-ends, to linkers, and debuggers, and many other ancillary build tools. For instance, one of the other tools we’ve been investing is in LLDB, the debugger project. While LLDB has quite a bit of work still to make it production ready we’ve been actively brining it to Windows and enabling our debug info within it. You can check out our posted sources for more details.
In addition to international language standards, like ANSI/ISO C++, industry standards like LLVM have tremendous importance - as conveyed in the Wired article and we are very excited to participate in its emergence.Posted by J T on July 25th, 2013 under Uncategorized | 2 Comments »
The FireDAC library we’ve recently released for XE3 and XE4 contains some powerful encryption support that was originally part of AnyDAC. That code was donated to DA-Soft by StreamSec (http://www.streamsec.com/) - a Swedish company focused on developing the security library, StreamSec Tools for Delphi, and on providing consultancy services related to security development in Delphi.
In particular, the StreamSec encryption code is used in the SQLite database driver on the Windows platform. Notice that for export reasons this is the only unit in FireDAC we don’t ship in source code format, but only in the compiled (DCU) version.
So, thank you, specifically to Henrick Wibell Hellström of StreamSec for this contribution to, what is now, our principal database access library.
~/jtPosted by J T on July 3rd, 2013 under Uncategorized | Comment now »
C++ is a multiple platform language and always has been. It’s predecessor, C, can be found on virtually every single device ever created because C is the foundation of every operating system kernel and runtime library. As such, you will find a C/C++ compiler toolchain on every single device as well. So, why is it so challenging to have a single C/C++ source code base for your application across all platforms?
One of the bigger considerations is binary compatibility. By that, I mean the binary format created and used by the actual compiler, linker, and debugger. The short of it is, every single compiler and linker out there use a different binary format from one another. Therefore, it is difficult (and many times impossible) to share object files or libraries created from a different compiler. And just as difficult to have a common debugger although there is seems to be more industry standardization on debug formats these days. This isn’t an easy problem to solve.
But that’s OK if you have all the source code you need, right? Well, sort of. Just like binary formats there can be differences between all of the various compilers such as standards language compliance, library compliance, and finally language extensions. With the ratification of C++11, most compiler vendors, including Embarcadero, are shooting towards full compliance with this new language standard and library standard. This is a good thing and improves source compatibility, however not every compiler front end is at the same level of compliance with all of the same features. And the same is true of standard library support (the other half of the "language").
The majority of our standards compliance efforts will be geared around the recently release BCC64 architecture and this is the same toolchain we will be brining to mobile and eventually back to 32-bit Windows (and any other supported platform). In the meantime, to help you manage your source code across both platforms more effectively we have published the following language compliance table between the two.
We will be doing the same for library compliance and Boost over the coming months. Additionally, I will be discussing more Critical C++ Toolchain Considerations during a webinar this Wednesday, June 5th. Come join us!Posted by J T on June 3rd, 2013 under Uncategorized | 1 Comment »
The macincloud.com hosting service is now pre-installing Platform Assistant Server on all of its user accounts so you can get up and running with it that much quicker. macincloud.com is a great service that complements RAD Studio so that you can build, simulate, debug, and Appstore deploy iOS applications, and build, debug and deploy Mac applications without having a Mac onsite. You can find your PAServer in the top center of the 3rd page of the LaunchPad. Double click on it and off you go.
Then grab the IP in another terminal window with the ifconfig command.
Finally, create a connection in RAD Studio and deploy.
Additionally, we’ve partnered with macincloud to provide a special offer for trial users – if you are currently or about to evaluate RAD Studio with the trial, you can get a special trial period of 24 hours during your 30-day RAD Studio trial. The macincloud trial expires after 24 hours of login time or 30 days, whichever comes first, then you can cancel or kick in to your special priced Embarcadero RAD Studio developer exclusive subscription.
So, go check it out.Uncategorized | 3 Comments »