I just saw today application called SysCheck for Android by Christopher Moeller .
It will give you detail info about the device. For your Delphi XE you need ARM 7 CPU with NEON support.
That’s really useful, especially if you want to close deal with customer and you want to check if your app in Delphi XE will actually work at his devices.
I was already facing that with one customer of mine who has Samsung LaFleur.
Such mobile is not compatible with Delphi XE at all and I have to rewrite the app into Java.
But it would be nice if Embarcadero would supply similar app it self. It would just open the screen and tell – compatible with Delphi XE or not.
My customer found another but at Delphi application:
If you click at TListView on the empty are, last item get automatically selected and events as OnClick and OnItemClick are called.
Well it can be nice feature for someone, but it’s not really logical .. for example if you have open keyboard and you want to hide it, by clicking at the empty area.
There is no settings to tun this behavior off as it’s hard coded.
The problem is at FMX.ListView.pas unit at FindItemAbsoluteAt procedure, line 4060.
if ViewAt >= HeightSums[HeightSums.Count - 1] then
Exit(HeightSums.Count - 1);
Replace with this code:
if ViewAt >= HeightSums[HeightSums.Count - 1]+GetItemHeight(HeightSums.Count-1) then
And the system will start to work logically.
You can download modified unit here, just include into your project.
One of my customer reported falling of the Delphi XE5 Application at his Samsung Android device.
When he was quickly typing multiple lines after while the app crashed.
It took me while to get the problem replicated, but eventually I found the bug.
It’s at the FMX.Platform.Android unit at TTextServiceAndroid.DrawSingleLine procedure.
From some reason the FCaredPosition is out of the range of the FLines StringList.
Replace this code:
if (FLines.Count > 0) then
if (FLines.Count > 0) and (FCaretPosition.Y>=0) and (FCaretPosition.Y<Flines.Count) then
Or you can download fixed unit here and simply included it into your project.
Embarcadero recently released new version of Delphi – XE6. Well I would suggest them to focus on fixing bugs at existing XE5 for people who already purchased their product, rather then release new version ever few months.
At the games development if you paint animations at the screen or you are scrolling the scene, you want it to look smooth. To do that you need paint certain amount of pictures at the screen per second. This is called Frames per Second (FPS).
When you have a PC/Mac game you usually have to buy better hardware or decrease detail quality to raise the FPS to level that it will be nice.
But if you have the iPhone it’s up to the developer to create the game in such quality to look and works nicely. (if you have Android you have more choices to buy so you can still upgrade).
But what is the optimal FPS? Well let’s put little of the technical details.
I’m using Delphi XE-5 for development and they are contradictory.
I think that person who is responsible for whole product is truly visionary and he actually saved future of whole product.
The fact that you can by one code develop under Windows (32 or 64bit), Mac, Android and iOS is just amazing.
And it’s really working.
Well the Android app take long time until it starts because the app is not a Java but it’s a native application. Benefit is that any component will work there. It’s really great.
But there are also bad things. There are some decisions that was made and that makes me crazy.