Blackberry UI components look so poor after seeing the iPhone, Android and Windows Phone 7 platforms.
Are there any third-party UI component libraries for BlackBerry?
Article How to implement advanced BB UI contains many ready-to-use components!
Related
Testing the different options of platform targets i have found this information on the delphi xe5 help:
Note: You cannot set OS X as the target platform for a Metropolis UI application.
FireMonkey Metropolis UI Application
I have searched for more answers on that and could not find what is the real reason it is not permited.
I would like to have the same looking of the application on windows and android tablet. (I know that I can use a "regular" FMX app and make that other way, however I have no idea what are the restrictions, since I believed FMX should be always crossplatform, considering just plain FMX app)
EDIT: My final objective for my current project is to create an application with the look and feel of Win Metro, but not WinRT compatible, and use this app on Win32(XP/7/8) and Android Tablets. I dont want to follow ANY platform specific rules, only have the closest possible working behavior as the Delphi generated win32 application.
Different platforms use different backend frameworks and have different UI requirements. That is why you cannot add OSX to a Metro project (OSX is not a Metro platform), just like you cannot add OSX to a Mobile project (OSX is not a mobile platform) or a Mobile platform (iOS/Android) to a Desktop project (they are not desktop platforms). Do not try to create a single application project that supports every UI platform that Delphi supports (a package project is a different matter - you can create multi-platform packages). You will need to create separate projects - a Metro project for Metro UIs, a desktop project for desktop UIs, and a mobile project for mobile UIs. You can share source files between them, but you should not share UI Forms between them. Use platform-appropriate UIs instead.
Metropolis UI is a hybrid system that uses IPC with a WinRT process. The WinRT process is used to display tiles and whatever else is needed over in WinRT land. This can only exist on a system that runs WinRT. Which means Windows 8 and not Mac or the mobile platforms.
It is true that you can build and run Metropolis UI apps on Windows 7 so clearly they can exist without the WinRT part. But the entire purpose on Metropolis UI is to be able to launch fake WinRT lookalike Delphi apps from the WinRT subsystem. So they don't really make sense anywhere else. I don't see any reason why Embarcadero would have invested effort making Metropolis UI apps work anywhere that does not have WinRT.
What you could do is use the style part of an FMX Metropolis UI project. That would give you the visual look that you are after. It would not be a Metropolis UI project, but would look as you wish. So you make a standard FMX desktop application targeting OSX. Then apply your chosen Metropolis style. This certainly works for desktop applications and I see no reason why it won't work for an Android tablet application.
Just open the style(*.style) file in a text editor. And you will see some thing like :
PlatformTarget = '[MSWINDOWS][MODERN][DEFINEFONTSTYLES]'
And then just add the Platform you need.
I was intrigued to discover that Delphi XE4 now targets iOS. What are the main differences between the way Monotouch and Delphi XE-4 target the iOS platform?
If I understand correctly, Xamarin Monotouch targets iOS development by providing C# wrappers for the iPhone Cocoa Touch libraries. You still use the XCode Interface Builder to generate the user interface and therefore you need some understanding of iOS concepts like UIViews or Outlets and Actions which are quite different from say, using C# to develop for WinForms or WPF.
Does the Delphi-XE4 approach work the same way? Does it provide Delphi wrappers for the iPhone libraries?
Also, from an interface building perspective, does its interface builder work similar to the XCode interface builder along with the identical native controls and concepts? How different is it for a Delphi developer to target iOS rather than Windows?
The Embarcadero approach is quite different from what you describe for Xamarin.
The Xamarin approach, as you describe it, uses the platform native framework. In contrast, the Delphi iOS solution is based on the FireMonkey cross-platform framework, FMX. The FMX framework does not use native controls. Instead the framework emulates the look and feel of the native controls.
When you develop an FMX mobile app for iOS, it's a straight-forward re-compile to make that app run on Android, the up-coming mobile platform that is coming with XE5. Embarcadero view this as a significant benefit to their approach. It's up to the developer to decide whether or not the common source benefit of the FMX approach outweighs the non-native UI widgets.
All that said, it is perfectly feasible to use the Delphi iOS compiler to generate Cocoa applications. But that would require extra effort and most likely third party components.
The FMX platform is also available on Windows and Mac. So you can develop for those platforms using the same framework as your mobile apps. Obviously the mobile apps will be quite different, but if you master the concepts of FMX on one platform then they transfer easily to other platforms.
I want to develop some modules with BlackBerry Java SDK in my application, and develop other modules with BlackBerry WebWorks. That I could take the advantage of both Java SDK & WebWorks. I don't know how to integrate them in one application.
I would seriously consider choosing one or the other. All the major APIs are accessible via WebWorks, and if you need a Java component you can build an extension.
The other way around, I suppose you could use some kind of webview that uses local html/css/js assets alongside a Java app, but that's a mess. You're better off just going with WebWorks.
You can use WebWorks to create your UI and then, what ever Java code you have you would have to import the Extension (.jar file) to your WebWorks project.
https://bdsc.webapps.blackberry.com/html5/documentation/ww_developing/using_javascript_extensions_1866976_11.html
I would like to develop a library (like a dll or jar) with Monodroid that can be called by Java applications on Android.
Is this possible?
If not, is there another possibility? (IPC...)
There is a solution for iOS, is there a similar solution for Android?
http://www.guidebee.biz/forum/viewthread.php?tid=172
Thank you!
A DLL compiled for Mono for Android will need the Mono runtime in order to run it, so it wouldn't be very useful for a standard Java app. Xamarin has some good documentation on the architecture available here. It is possible to go the other way around, though, and use Java libraries from within a Mono for Android application.
A client wants a blackberry application for listening live radio for his radio station. We focused on iPhone development. I know Java language have done several projects. However haven't tried yet J2ME. Which do you recommend J2ME or HTML Javascript framework like PhoneGap or any other cross platform framework? What are the advantages and disadvantages of them? Thanks.
If you are comfortable with Java Swing or other Java UI programming then going with native is probably a great idea.
If you are more comfortable with HTML, JavaScript and CSS then use PhoneGap. If you are planning on deploying your application to more than one platform then definitely use PhoneGap. PhoneGap also allows you to write native BlackBerry Java code and integrate that with the HTML / JS code in case the specific APIs you need are not exposed.
With the imminent release of BlackBerry OS 6 things should get a lot better on that platform for both PhoneGap (since the browser is now WebKit based) and for native Java programming.
There are many other comparisons between PhoneGap and X on stackoverflow, though most other cross platform frameworks don't support BlackBerry.
J2ME: Blackberry supports this (and is fact still the BB's core), however it's a rapidly aging platform. You can't do many interesting things in BB without the proprietary APIs.
Phonegap: Haven't used it myself but I've heard so-so things about it. High footprint, lowest-common-denominator etc.