Category: Firemonkey

Delphi Brings ARC to Android

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. Share This | Email this page to a friend
Read More

Monitoring the Monitor

No, not this Monitor, this Monitor. Ever since it’s introduction, it’s been the subject of both scorn and praise… ok, ok, scorn. Recently, during our current field test for the next version of RAD Studio*, one of our long-time field-testers posted a reference to this excellent blog post by Eric Grange […] … Read More

Read More

Sneak Peek: Delphi, Android, ARM Assembler and Extra Awesomeness

Less than two years ago, Delphi was a windows-only development tool. Think about that for a second. In less than 24 months, we’ve added native OSX support and native iOS support, with native Android support currently in beta. Now, I’m as guilty as anyone of being impatient about features and fixes, but when I step […]
Read More

Some XE5 Tour Dates

Enjoy the food on us. Join us for a meal and an exclusive session where you will learn how to move from desktop to mobile development delivering true native Android and iOS apps. Be one of the first to see an exclusive preview of the upcoming release of new Embarcadero Android and iOS mobile development technology and how you can get early access to these tools. At these 90
Read More

Printing from an Android device using FireMonkey

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 […] … Read More

Read More

Getting ready for Android

Android support in Delphi is on the Roadmap and is expected in the fall.   Although I have a Mac and an IPad, I have an Android Phone.   I was not as excited for the XE4 (iOS support) release as I am about Android support. I have some thoughts on Android that I want to share...Market ShareOverall I see a greater number of Android devices, in fact we have 5 Android based devices in my home and only 1 iOS device.  Market studies that I have read vary, but shows in some cases a 50-50 marketand in other it shows that Android has a greater market share.   Regardless the possibility of using Delphi to write a single application that can target both is very exciting. Android VersionsAndroid currently has shipped 7 different, Major product releases. These are separated by different code names.     Unlike iOS where most of the users are using the latest version.   Knowing this code names will make your life easier as they are referenced in documentation, blog posts, articles, etc...The 3 most popular (as of July 8, 2013):Gingerbread  - 34.1%Ice Cream Sandwich - 23.3%Jelly Bean  - 37.9%Full details on the break down of each code name are market share can be found on the developer.android.com site.   Another good tidbit from this site is the various screen resolutions andform factors you will see when targeting android.DistributionDistribution is not locked down like the iOS market.You can distribute you applications in several different ways including-Google Play Store-Amazon App Store-Download from you own siteDesign of your applicationI love to hear customers talk about just moving an existing windows application to Windows.   After talking with them, they quickly realize that the form factor and touch interface requires a redesign to the look and feel of an application.     For example, most VCL Delphi Applications I have seen contain a Grid.   I rarely see such anything like that on mobile platforms.   To help with this mind set switch I would recommend reading a couple of Design Guidelines.iOS Human Interface GuidelinesAndroid Developer Pattern Guidelines. (Check out other sections as well)A bit about the internals of AndroidAt the heart of Android is the Linux Kernel (Version 3.x since Ice Cream Sandwich release).On top of the Kernel sits the Dalvik Virtual Machine which runs Java Byte Code.So when it comes to development you have two targeting options.   Native - Runs at the Linux Kernel LevelJava Byte Code - Runs in the Dalvik Virtual MachineSince Delphi is using LLVM for the Android Compiler, applications running will be targeting native.Java has history of being able to interop between native compiled code, it uses a technology called JNI.I  suspect that Delphi will have some easy way to do JNI since several of the android libraries are based in Dalvik.Now it's time to wait and see what Delphi's Android support will really shape up to be.
Read More

Programatically Disable the Idle Timer on iOS using the ObjectiveC Bridge

If you’ve got an iOS device, you’ve probably noticed that if you stop interacting with your device, after a little while it will turn off the screen and go to sleep. This makes perfect sense for devices that are battery challenged at the best of times, but one side effect of this is that whatever […]
Read More

ITDevCON 2013 – Call 4 Paper

ITDevCon2013 Dear potential ITDevCon speaker, I’m building the agenda for next ITDevCon that will be held next november 14th, 15th in Verona (Italy), the same location of the past year. This will be the 5th edition ( we’re getting conference experts J ) The call for papers are officially open right now, so if you want to propose some speeches, I’ll be glad to see it. As usual, for the Call4Paper I need: Title (for every talk) Abstract (for every talk) Difficulty level (for every talk. Difficulty level is a scale from 1 to 3 with the following mean: introduction, intermediate, advanced) Speaker’s photo Speaker’s profile I’m looking forward to your proposal. The call4papers ends at Aug 31st, 2013 but if you have *VERY* interesting topic to propose, propose it… I’ll try to arrange the schedule and fit it in the agenda. Send your proposal to call4paper(at)itdevcon.it. Proposals will be evaluated and the speakers will be contacted ASAP. This year topics will be the following: TOPICS What’s new in Delphi FireMonkey: component development, hacking styles, best practices, success cases etc. iOS development (iPhone, iPad, iPod Touch) MacOSX development Android clients for Delphi servers Livebindings Windows 8.x Model View View Model (MVVM) Delphi best practices Design Patterns: real world use, success cases DataSnap: intro, success case, tuning, deploing etc “Unusual” Delphi markets Delphi + Arduino Delphi + Embedded Systems Delphi + Raspberry Pi Delphi + WebClient Framework (AngularJS, EmberJS, KnockoutJS etc) Extending Delphi with scripting languages (DWS, Javascript, Lua etc): why? how? TDD and Unit Tests Agile methodologies Dependency Injection ORM FireDAC Software engineering “Hands on” sessions for the most used Delphi frameworks (e.g. Delphi Spring Framework, DORM, TMS Aurelius, OTL etc) Mobile: UI, UX, optimization HTML5/SVG/WebGL and Delphi OOD/OOP LLVM RTTI, Generics and AnonMethods: Real world cases, success cases. Web development with Delphi Real OOP Delphi applications developments Delphi fundamentals/advanced Metaprogramming Games SOA/ROA Architectures Target audience Software architects Software developers Project managers IT managers Trainers The conference web site is http://www.itdevcon.it (2013 version is still under construction). Do you want to see a particular topic or have a suggestion for ITDevCon2013? Let me know Thanks and see you at ITDevCon 2013. P.S. This year, ITDevCon will be even more amazing! Stay tuned!
Read More

Using the FM Messaging System for In-process Publish and Subscribe on Windows, OSX and iOS.

For quite awhile I’ve been using a messaging bus within my apps to de-couple different sub-systems from each other. I use this heavily in my MVVM-based apps to minimise the dependencies between my Views and ViewModels, but it applies to non-MVVM apps of reasonable complexity as well. For example, I have one app that is […]
Read More

Getting wget on a Mac

wget is a standard tool for issuing HTTP requests from a command line. Even with having Indy’s TIdHttp on a Mac now, it might be handy for some tests or scripts to use wget. The equivalent of IdHttp.get('http://google.com'); is wget http://google.com Unfortunately though wget is not installed by default on MacOSX (only curl is, which is a similar command, with quite a different syntax), but there is an easy way to get wget: As Delphi developer, using Delphi XE 4′s mobile compiler, you probably already have Xcode (including command line tools) installed – which would be the only requirement for the following. Open a terminal window on your Mac and run the script below. It may take a minute or two and when done wget will be ready to use (it will automatically be copied into one of your bin directories) curl -O http://ftp.gnu.org/gnu/wget/wget-1.14.tar.gz tar xvzf wget-1.14.tar.gz cd wget-1.14 ./configure --with-ssl=openssl make sudo make install There might be newer versions than 1.14, but I didn’t check, 1.14 works just fine for me. Credits: Mike Beach Tweet This! Share this on del.icio.us Digg this! Share this on Reddit Get Shareaholic
Read More

David I to Discuss Mobile & Mac at the 2013 ISVCon

The 2013 Independent Software Vendor Conference (ISVCon), scheduled for September 27-29, 2013 at the Atlantis Casino Resort in Reno, Nevada, has released information about the panel discussions and seminars that will be presented. Designed to deliver the latest marketing ideas to small software development firms, this year’s conference includes: “Sell Software on Facebook” by Nico Westerdale of BitsDuJour – Can independent software vendors (ISVs) make money selling software on Facebook? Yes. More than half of the people in the US have Facebook accounts. Learn practical ways to build your fanbase, and create posts that generate traffic.“Conversations to Create More Customers” by Jessica Dewell of Red Direction – Move more software customers through your company’s sales cycle by changing from reactive conversations (such as answering email inquiries) to proactive conversations (such as listening and starting conversations.)“Growing your ISV business to Multi-Device with Mobile and Mac” by David Interstimone (David I) of Embarcadero – Discover how to increase software sales by supporting a mix of client devices, UI approaches, OS versions, and emerging form factors.“Connected Apps: The New Normal” by Leyla Seka of Salesforce.com – Learn to build and deploy connected apps as your software development business evolves from the desktop/laptop world to the cloud and mobile environments.“33 High Tech Business Myths, and How They Can Hurt Your Company” by Gary Elfring of Elfring Fonts Inc. – Gain insights into distinguishing between valid business ideas and the myths, folklore, and misinformation that can hurt your company.“Google AdWords – Winning the War and Making It Work” by Aaron Weiner of Software Promotions – Learn how recent AdWords changes will impact your account’s performance, and how you can overcome any problems.Other seminar titles include:Practical Roadmap to High Performing WebsitesSecondary Offer NetworksThe Cloud for ISVsAvoiding Problems When Hiring and Working with FreelancersVisit http://www.isvcon.org/speakers.php to read about new seminars that will be added during the summer.Sign up for the conference by September 22 to take advantage of ISVCon’s $820.50(US) registration fee. Registration includes three days of intense education and networking opportunities plus a Thursday evening reception, and break rooms full of snacks and helpful representatives from the conference’s sponsors.Previously known as the Software Industry Conference (SIC), ISVCon carries on a 22 year tradition of supporting independent software developers’ business and marketing efforts with seminars, presentations, and networking opportunities.ISVCon is owned and presented by The Association of Software Professionals. Sponsors for ISVCon 2013 include FastSpring, Avangate, Tightrope Interactive, Software Promotions, Greentram Software, and The Association of Software Professionals. Visit http://www.isvcon.org/ for more information about attending ISVCon 2013. Or visit http://www.isvcon.org/sponsors.php for information about sponsoring the conference.Semper FiGunny Mikeend.
Read More