Show: Delphi C++
What's New in Delphi and C++Builder XE7
From RAD Studio
Go Up to What's New
The XE7 release contains many new and improved features.
1 FireMonkey Changes for XE7
1.1 FireMonkey Multi-Device Applications Support Both Desktop and Mobile Platforms
1.2 FireMonkey Uses the New Google Mobile Ads API for Android
1.3 New TMultiView Control
1.4 Native Presentation of TEdit and TCalendar on iOS
1.5 Multi-Monitor Support
1.6 Multi-Touch Support and Gestures Changes
1.7 Full-Screen Immersive Mode for Android
1.8 Size Property and PlatformDefault in TControl
1.9 PlatformDefault Setting for TTabPosition on Mobile Apps
1.10 FireMonkey Supports the Pull-to-Refresh Feature for TListView on iOS and Android
1.11 FireMonkey Save State Feature
1.12 Touch-Optimized MetropolisUI Styles Available
1.13 DesignVisible Property Was Eliminated
1.14 Refactoring of FireMonkey Libraries
2 Platform Assistant Changes for XE7
2.1 Two New Commands in PAServer
2.2 New PAServer Manager App
3 IDE Changes for XE7
3.1 RAD Studio Guided Tours
3.2 Changes in the Form Designer for Multi-Device Applications
3.3 Project Files Are Automatically Added to the Deployment Manager
3.4 Entitlement List Added for Android
3.5 Splash Screen Support for Android
3.6 Git Version Control System Integrated in the IDE
3.7 Delphi Personality Now Requires SDK for OS X and iOS Simulator
3.8 Add Java Libraries to Your Applications for Android from the Project Manager
3.9 Creating Metropolis UI Applications
4 Run-Time Library (RTL) Changes for XE7
4.1 RTL API for Bluetooth
4.2 App Tethering Supports Classic Bluetooth
4.3 App Tethering Supports Connections Outside Your Subnet
4.4 Parallel Programming Library
4.5 XML Improvements
4.5.1 New Cross-Platform XML Vendor that Improves Performance
4.5.2 New System to Select XML Vendors
4.6 New Unit for Web Encoding and Decoding
4.7 PCRE 8.35 for Windows and Mobile Platforms
4.7.1 PCRE 8.35 Does Not Accept Group Names Starting with Digits
4.8 zlib 1.2.8
5 VCL Changes for XE7
5.1 New Component for Windows Taskbar Jump Lists
6 C++ Compiler Changes for XE7
6.1 New Versions of Boost and Dinkumware Libraries for Win64
6.2 New iOS Headers Added (libcplusplus)
6.3 Navigate To command
6.4 Delphi Packages No Longer Allow Namespace Selection in Output - C/C++ Options
7 Delphi Compiler Changes for XE7
7.1 String-Like Operations Supported on Dynamic Arrays
8 Database and Connectivity Changes for XE7
8.1 FireDAC Changes
8.2 Enterprise Mobility Service
8.3 Parse Provider Support for Your Android Push Notification Applications
8.4 BDE Removed
8.5 Enhancements to the Data Explorer
8.6 Online Help Changes for Database
9 Debugger Changes for XE7
9.1 New PAServer Manager App on the Mac
9.2 MultiByte Support for Mobile Debuggers
9.3 Binary info.plist File Deployed
10 Command-Line Utility Changes for XE7
10.1 Java2OP.exe: New Native Bridge File Generator for Android
11 Application Samples Changes for XE7
12 See Also
FireMonkey Changes for XE7
FireMonkey Multi-Device Applications Support Both Desktop and Mobile Platforms
You no longer have to choose between creating a desktop application or a mobile application. FireMonkey applications are now called multi-device applications, and by default they support all the available target platforms.
FireMonkey Uses the New Google Mobile Ads API for Android
FireMonkey now uses the new Google Mobile Ads SDK to provide advertising features on Android devices.
Previously, FireMonkey used the Google AdMob SDK, which is now deprecated. Google announced that on August 1, 2014, the Play Store will stop accepting applications built with the Google AdMob SDK. Please update your existing Android apps to use Google Mobile Ads instead of AdMob. See Adding Advertising to Your Mobile Apps.
New TMultiView Control
FireMonkey supports the new TMultiView component, which allows you to implement a master-detail interface that can be used for any supported target platform.
The master pane can display a collection of any visual controls, such as edit boxes, labels, lists, and so forth.
The detail pane typically displays information based on the properties of the controls in the master pane.
For more information about this component and a sample application, see Mobile Tutorial: Using a Multi View Component to Display Alternate Views of Information (iOS and Android).
Native Presentation of TEdit and TCalendar on iOS
On the iOS target platform, FireMonkey now supports both styled and native presentations for the TEdit and TCalendar components.
By default, when you add any of these components to the Form Designer, RAD Studio uses the styled presentation.
To use the native presentation on the iOS target platform, set the new TPresentedControl.ControlType property to Platform.
For more information, see TPresentedControl.ControlType.
Note: The FMX.DateTimeCtrls.TCalendar class has been moved to its own unit, FMX.Calendar. If your pre-existing apps use TCalendar, make sure that FMX.Calendar is in the uses/includes.
If your FireMonkey application runs on multiple monitors, TScreen maintains a list of monitors and their dimensions, and provides methods to obtain the monitor containing a form or a point so that you can effectively manage the layout of your user interface on several active monitors.
Multi-Touch Support and Gestures Changes
The new FMX.MultiTouch unit contains a TMultiTouchManager.
The new OnTouch event handles gestures that are purely gestures (never interpreted as mouse events).
TForm and TControl now have an OnTap event for when the user taps using a finger or similar device (not a mouse).
Full-Screen Immersive Mode for Android
You can enable immersive full-screen mode in your Android 4.4 apps (KitKat). To enable immersive mode, FMX.Forms.TForm.FullScreen must be set to True.
Note that Google Glass apps by definition are immersive full-screen.
Size Property and PlatformDefault in TControl
A new property, Size, has been added to TControl to provide for managing and storing the size of a control. The Size property is an object type (TControlSize) that introduces a new field, PlatformDefault, which is set to True by default. PlatformDefault allows controls to automatically resize themselves to the correct, pre-defined size for the run-time platform. The Width and Height properties of TControl remain, but their values are now saved inside the TControlSize object, instead of as separate width and height fields.
PlatformDefault Setting for TTabPosition on Mobile Apps
The FMX.TabControl.TTabPosition enum contains a new value, PlatformDefault, which sets the tab position according to the default behavior of the target platform, as follows.
TTabPosition = Bottom for iOS apps
TTabPosition = Top for Android apps
See Mobile Tutorial: Using Tab Components to Display Pages (iOS and Android).
FireMonkey Supports the Pull-to-Refresh Feature for TListView on iOS and Android
XE7 provides the Pull-to-Refresh feature for TListView that allows you to pull down the list to refresh the contents. For information on how to enable and use this feature, see PullToRefresh.
FireMonkey Save State Feature
The new FireMonkey Save State feature allows you to save the state of an application before it closes so this state can be recovered once the application is restarted.
To manage this new feature, the form has a new property called SaveState that handles the saving and recovering of this state. This Save State data can be written to or read from at any time, but ideally, the saving of this state should be during the new OnSaveState event and the recovering of this state should be during the OnCreate event.
The Save State of the form can include information such as active tab, text contained in edit controls, checkbox selection, calendar date, current selected item, etc. along with user data. This feature can be used on mobile platforms as well as on desktop platforms.
For further information about this feature, see FireMonkey Save State.
Touch-Optimized MetropolisUI Styles Available
Four newly updated MetropolisUI styles are available for FireMonkey (.style files):
These styles have all the UI elements of mobile apps and are touch-optimized. You can access the styles at C:\Users\Public\Documents\Embarcadero\Studio\15.0\Styles.
DesignVisible Property Was Eliminated
FMX.Controls.TControl.DesignVisible property has been removed. Now the Visible property applies to both run time and design time, and the Structure View always allows access to any component at design time.
Refactoring of FireMonkey Libraries
TAnimation has been moved from the FMX.Types unit to the FMX.Ani unit.
FMX.Controls: If you are creating a FireMonkey forms application, the following refactorings should require no code changes on your part, since the FMX.Controls unit is automatically included in FireMonkey forms apps:
These trigger-related API have been moved from the FMX.Types unit to the FMX.Controls:
FMX.Types.TFmxObject.StartTriggerAnimation (previous name) is now FMX.Ani.TAnimator.StartTriggerAnimation.
FMX.Types.TFmxObject.ApplyTriggerEffect (previous name) is now FMX.Controls.TControl.ApplyTriggerEffect.
The FMX.Edit.TNumberBox class has been moved to its own unit, FMX.NumberBox.TNumberBox. If your pre-existing apps use TNumberBox, make sure that FMX.NumberBox is in the uses/includes.
FMX.DateTimeCtrls.TCalendar has been moved to its own unit, FMX.Calendar. If your apps use TCalendar, make sure to add FMX.Calendar to the uses/includes.
TPopup has the new Size, PopupForm and VisibleStored properties.
MessageDlg, InputQuery, and InputBox have new overloads containing an anonymous method reference. This change removes previous precautions about using these methods in Android apps.
Platform Assistant Changes for XE7
Two New Commands in PAServer
v - Toggle verbose mode (verbose mode displays the command-line parameters whenever you issue a command)
r - Reset, terminate all child processes
For more information, see PAServer, the Platform Assistant Server Application.
New PAServer Manager App
We have added a new GUI app that runs on the Mac. The PAServer Manager enables you to create and manage multiple PAServer processes for Mac and iOS apps:
For more information, see:
Installing the PAServer Manager on a Mac
Running the PAServer Manager on a Mac
IDE Changes for XE7
RAD Studio Guided Tours
This release includes a new technology to provide Guided Tours to facilitate learning about RAD Studio. The Guided Tours consist of a step-by-step walk-through to show specific features and functionality.
These interactive tours display a bubble on each step explaining what you have to do in the step. You must read the instructions and follow all the steps to complete the Guided Tour successfully. You can access a Guided Tour by clicking the appropriate link in the Welcome Page. For further information, see RAD Studio Guided Tours.
Changes in the Form Designer for Multi-Device Applications
The new Multi-Device form is a common designer for all platforms (desktop and mobile), with a styled Master form and multiple available views for different form factor and layouts. See Form Designer.
The Designer opens with the default style, the Win32 Master style. The Style drop-down menu allows you to change the Master Form style; you can choose Windows, OS X, iOS and Android. The available components and their properties change depending on the style.
The Master Form is where all the components should be placed and appropriately edited. To design mobile applications, we recommend that you use the steps in the following tutorial: Mobile Tutorial: Using Layout to Adjust Different Form Sizes or Orientations (iOS and Android).
The Views drop-down menu enables you to add predefined forms to your project, such as Android 7 Tablet or iPhone 4. After selecting an available view, the corresponding form is added to your project folder, and a reference clause to the code page. All the views inherit from the Master Form. See Adding Views to Your Multi-Device Project.
The Views allow you to personalize your project for a specific predefined layout. The available views take into account the display resolution of the target device. If you want to personalize your project for a particular resolution, you can add a customized view. See Adding a Customized View to the View Selector for more information.
When you run your project for a particular target, only the corresponding views are included in your application.
Project Files Are Automatically Added to the Deployment Manager
If you add a file to or remove a file from a project using the Project Manager, the Deployment Manager now automatically adds or removes this file. You can add media files, text files or any resource file you want to deploy with your application.
Some files, like database files, require a special treatment because they need database drivers or license files (Featured Files). In this case, the Featured Files dialog box opens automatically so you can choose the necessary files to add to the deployment list.
The Featured Files dialog box includes a new option (Show automatically when required check box) that allows you to disable the automatic adding/deleting of files in the Deployment Manager. If you deactivate this option, RAD Studio does not show the Featured Files dialog box automatically anymore; instead, you must open the Featured Files dialog box manually to add or remove featured files.
Entitlement List Added for Android
An Entitlement List page has been added for Android (iOS and Mac OS X already supported the Entitlement List). You can access the Entitlement List through Project > Options > Entitlement List.
You can set entitlements for your Android apps. For example, you can add advertising to your mobile application or allow your application to receive data from remote servers by using the remote push notification support.
See Entitlement List for more information.
Splash Screen Support for Android
You can now configure a splash screen for your Android applications. Select Project > Options > Application, enable your splash screen, enter the path to your splash screen image, and configure the alignment of your splash screen.
For more information, see Splash Images.
Git Version Control System Integrated in the IDE
RAD Studio now supports the Git version control system for your version controlled projects, and some new Subversion features have been added in the IDE.
The History Manager now presents integrated Git version control information from your local repository. After you open a project that is under version control by either Git or Subversion, you can find more information in the Contents, Information and Differences tab.
Now you can use Git Integration in the IDE to:
Clone a copy of your remote Git repository and start working with it.
Commit your changes to your local Git repository (send them)
Show the Git repository log for your version controlled projects.
When using Subversion support, now you can:
Use the new Subversion ChangeList labels to group your changed files before committing them to your remote repository.
Use the new SVN merge dialog box to start merging your changes from the IDE
Use the new Subversion switching branches feature to point your local repository changes to a new branch of your remote repository.
For more information, see:
Subversion Integration in the IDE
Git Integration in the IDE
Delphi Personality Now Requires SDK for OS X and iOS Simulator
An SDK (Software Development Kit) is required now to develop Delphi applications for OS X and iOS.
A software development kit (SDK) provides a set of files to build applications for a target platform, and defines the actual location of those files on the target platform or an intermediate platform that supports the target platform (for example, Mac OS X provides SDKs for iOS).
For steps to add a new Mac OS X or iOS (Device or Simulator) SDK to your development system from a Mac, see Adding a Mac OS X, iOS Device or iOS Simulator SDK.
Add Java Libraries to Your Applications for Android from the Project Manager
In XE6, to add a custom Java library to your application, you had to manually create and deploy a classes.dex file.
In XE7, you can simply add your custom Java libraries from the Project Manager, using the new Libraries node that you can find within the Android platform node. See Adding A Java Library to Your Application Using the Project Manager.
Creating Metropolis UI Applications
In XE7 you can no longer create Metropolis UI applications directly from the File > New menu. Instead, select either of the following to create a new Metropolis UI application:
File > New > Other > Delphi Projects > FireMonkey Metropolis UI Application
File > New > Other > Delphi Projects > VCL Metropolis UI Application
File > New > Other > C++Builder Projects > FireMonkey Metropolis UI Application
File > New > Other > C++Builder Projects > VCL Metropolis UI Application
Run-Time Library (RTL) Changes for XE7
RTL API for Bluetooth
The RTL has a new unit, System.Bluetooth, that provides a multi-device API to access the Bluetooth features of the device that is running your application. This new unit provides support for both Classic Bluetooth and Bluetooth Low Energy. See Using Bluetooth.
App Tethering Supports Classic Bluetooth
You can now use app tethering to connect your application using not only the TCP/IP network protocol, but also the Classic Bluetooth protocol.
App Tethering Supports Connections Outside Your Subnet
In XE6, the methods to discover remote devices to connect, AutoConnect and DiscoverManagers, used to look for devices in the subnet of the local area network (LAN) where the device running your application was. As a result, you could not use app tethering to connect devices in different subnets of the same LAN, or devices with completely different IP addresses.
In XE7, both of these methods provide an optional parameter, <Target>, that you can use to override this behavior, and specify a target IP address or subnet to search for remote managers. See Connecting to Applications Outside Your Subnet.
Parallel Programming Library
By including the new System.Threading unit in your apps, you can use the new Parallel Programming Library.
New Cross-Platform XML Vendor that Improves Performance
In addition to MSXML and ADOM, RAD Studio now provides a new XML vendor: OmniXML. The OmniXML cross-platform XML vendor shows much better performance results than the alternative cross-platform XML vendor: ADOM. The OmniXML XML vendor in RAD Studio is based on OmniXML, but it includes additional features, such as namespace support, and it is compatible with SOAP.
New System to Select XML Vendors
The RTL provides a new system to define the XML vendor to use, as described in Using the Document Object Model.
The new XML vendor selection system provides MSXML as the default XML vendor. MSXML only supports the Windows platform; if you do not specify a different XML vendor, your application does not have XML support in platforms other than Windows, and you see a run-time exception when you run your application in other platforms.
To choose a different XML vendor, add a reference to the unit of the vendor into the unit where you use the RTL XML features, such as the TXMLDocument class. If you add more than one XML vendor unit, the first unit referenced is used as XML vendor. To override this behavior, you can change the value of the DefaultDOMVendor global variable to the global variable of the target XML vendor.
Note: You can look up the unit and the global variable of each XML vendor in the List of Built-in XML Vendors.
When you use the TXMLDocument component, you can choose an XML vendor using its DOMVendor property. When you change the value of DOMVendor, the unit that uses the component is configured to use the specified XML vendor, so that you do not need to change unit references or the DefaultDOMVendor global variable manually.
To use a different XML vendor for each platform (such as MSXML in Windows and OmniXML in other platforms), use conditional compilation:
Conditional Compilation (Delphi)
Conditional Compilation (C++)
New Unit for Web Encoding and Decoding
The RTL provides a new unit, System.NetEncoding, that provides encoding and decoding features for Base64, HTML, and URL.
The following table shows how methods from previous versions of RAD Studio map to methods in System.NetEncoding:
Some previously supported methods either support both AnsiString and UnicodeString or only support AnsiString. The new XE7 methods support only UnicodeString. To use the new methods with AnsiString in XE7, you must cast your input string and the method result as follows:
AnsiStringResult := AnsiString(NewMethod(string(AnsiStringInput)));
AnsiStringResult = AnsiString(NewMethod(UnicodeString(AnsiStringInput)));
PCRE 8.35 for Windows and Mobile Platforms
The PCRE library, which provides support for Perl-compatible regular expressions, has been upgraded in XE7:
Platform XE6 XE7
Mac OS X
These platforms use the PCRE version available in the system.
To check the changes since previous versions of PCRE, see the official changelog.
To use PCRE, see the documentation of the System.RegularExpressions unit.
PCRE 8.35 Does Not Accept Group Names Starting with Digits
In XE6, you could define named groups with names that contained any combination of digits and letters, such as "1" or "2nd". For example: "(?<1>\w+)\s+(?<2>fish)\s*".
In XE7, which includes the latest version of the PCRE library, it is no longer possible to use group names that start with a digit. That is, you cannot use group names such as "1" or "2nd" anymore. However, you can still use digits in the name as long as they are not the first character of the name, such as "g1" or "my2cents".
RAD Studio includes a new version of the zlib compression library: 1.2.8.
To check the changes since zlib 1.2.7, see the official changelog.
To use zlib, see the documentation of the System.ZLib unit.
VCL Changes for XE7
New Component for Windows Taskbar Jump Lists
Windows 7 and later versions of Windows provide a context menu for items in the taskbar, which gives users quick access to recent files to open with your application. In XE7, the TJumpList component allows you to customize the information that the jump lists show for your application.
You can hide or show recent and frequent files, provide task entries to give your users quick access to common tasks of your application, or add completely custom categories and items to the jump lists of your application.
For information about related features, see VCL Taskbars.
C++ Compiler Changes for XE7
New Versions of Boost and Dinkumware Libraries for Win64
New versions of Boost and Dinkumware libraries are now installed (both are for Win64 only).
Dinkumware STL version 6.40 for Win64
See Dinkumware Standard C++ Library.
Boost Libraries version 1.55 for Win64
See Boost Libraries.
New iOS Headers Added (libcplusplus)
The libcplusplus iOS headers are now being used in RAD Studio. These updated headers provide more C++11 features, such as atomics, and default initialization of vectors.
Navigate To command
RAD Studio now supports the Navigate To command, which was added to the Find (C++) commands previously available on the context menu in the Code Editor. The Navigate To command searches the entire active project for identifiers and constants that meet the specified search criteria. For more information, see:
Navigate To (C++)
Find Definitions and References (C++) (overview)
Delphi Packages No Longer Allow Namespace Selection in Output - C/C++ Options
For C++ Output file generation, options are different for Delphi packages vs. executables. For packages, there are two choices (instead of 11 for .exe files):
Generate DCUs (when you do not plan to use the package from C++)
Generate all C++Builder files (including package libs)
This change eliminates potential namespace issues when the Delphi package is used in C++ applications.
Delphi Compiler Changes for XE7
String-Like Operations Supported on Dynamic Arrays
Dynamic arrays can be manipulated similarly to strings. For example:
A: array of integer;
B: TBytes = [1,2,3,4]; //Initialization can be done from declaration
A:=[1,2,3]; // assignation using constant array
A:=A+[4,5]; // addition - A will become [1,2,3,4,5]
String-like support routines added:
I. The Insert function inserts a dynamic array at the beginning at the position index. It returns the modified array.
A: array of integer;
Insert(5,A,2); // A will become [1,2,5,3,4]
II. The Delete function eliminates elements from a dynamic array and returns the modifed array:
A: array of integer;
Delete(A,1,2); //A will become [1,4]
III. The Concat function can be used to put together two different dynamic arrays:
A := Concat([1,2,3],[4,5,6]); //A will become [1,2,3,4,5,6]
Database and Connectivity Changes for XE7
FireDAC streaming support for blob parameters and support for MSSQL file streams
New TFDParam properties : AsStream, AsStreams, IsDataSet, IsDatasets, IsObject, IsObjects, IsStream, IsStreams, IsUnicode, and StreamMode
New TFDParam methods: GetDataReader and SetStream
New TFDParams methods: Close and Unprepare.
New TFDAdapterDataSet methods: CloseStreams.
New IBLite driver for desktop and mobile, based on existing IB driver
New DriverID = 'IBLite'
New TFDPhysIBDriverLink.Lite property
Support for DBMS API command native timeouts
Supported by FireDAC drivers: Advantage, Informix, and SQL Server
FireDAC connection parameters are now displayed in the Object Inspector as records.
TFDConnection.Params is now of TFDConnectionDefParams base class.
Depending on TFDConnection.DriverName, the params are of one of the TFDPhysXxxConnectionDefParams, where Xxx is driver ID.
Data Explorer enhancements .
Primary keys and fields are displayed.
Foreign keys and fields are displayed.
Sequences/generators are now displayed.
Metadata writing capabilities
New TFDTable.CreateTable method
New poCreateDest option of TFDBatchMove.Options
New IFDPhysCommandGenerator.GenerateCreateTable, GenerateDropTable methods
New TFDBatchMove component for copying tables data and metadata between different databases:
New components: TFDBatchMove, TFDBatchMoveTextReader, TFDBatchMoveTextWriter, TFDBatchMoveDataSetReader, TFDBatchMoveDataSetWriter, TFDBatchMoveSQLReader, and TFDBatchMoveSQLWriter.
Old component TFDDataMove is deprecated now. Use TFDBatchMove instead of TFDDataMove .
TFDScript, TFDBatchMove along with reader and writer components, TFDDataMove are moved to the new "FireDAC ETL" page.
New methods: LoadFromStream, LoadFromFile, LoadFromStream, SaveToStream, and SaveToFile
New properties: DataSets and ResourceOptions
Enterprise Mobility Service
The new Enterprise Mobility Service (EMS) offers a Mobile Enterprise Application Platform that can be hosted in the Cloud or on premises, and exposes custom REST APIs and enterprise database data.
EMS is developed to offer the customers a comprehensive solution that includes a REST API Server, remote database access, and tracking the usage of the solution. The EMS database stores the activity of the devices and users, and the EMS Server creates analytics of this information.
The main components in the EMS architecture are:
The EMS Server is the component that provides core functions and services for the EMS Clients. The EMS Server manages the EMS database that stores information such as registered users, devices, and the activity of your application (creating the analytics).
The REST API is used to access the EMS database data. EMS Clients can access the information in the EMS database by making calls to the REST built-in Administrative API of the EMS Server. You can extend the functionality of the existing EMS Server by creating your own EMS Packages or FireDAC EMS Packages, and registering these resources in the EMS Server.
EMS Clients are mobile or desktop applications that can access the EMS Server registered resources by using the REST API. EMS support for FireDAC is provided, so you can create EMS FireDAC Client Applications.
EMS Console reads the information that is stored in the EMS Database and shows in your default browser. The EMS Console displays the list of Users, Devices, and Groups, and shows graphs of analytics that are stored in the EMS database.
In XE7, new components have been added for EMS in the IDE, such as REST.Backend.EMSProvider.TEMSProvider or REST.Backend.EMSFireDAC.TEMSFireDACClient (to support FireDAC in your client application). You can also use existing BaaS Components, such as TBackendQuery, in your EMS Client applications.
Parse Provider Support for Your Android Push Notification Applications
RAD Studio REST BaaS framework now supports Parse BaaS as a provider for your Android Push Notification applications. Previously, you could use the Parse provider only for RAD Studio iOS apps.
To start receiving push notifications from the Parse BaaS provider, register your RAD Studio application as an Android Parse push notification client and configure your Parse cloud service.
For more information, see Mobile Tutorial: Using Remote Notifications (iOS and Android) and Creating the Android Push Application.
BDE, our oldest database solution, has reached the final stage of deprecation, and has been removed from RAD Studio. This includes the Bde.DBBdeWeb and Bde.DBTables units. Instead, use newer database technologies such as FireDAC. For migration, see Migrating BDE Applications to FireDAC.
If you need to continue using BDE, an external installer is available on the Registered Users site: http://cc.embarcadero.com/myreg ;
The BDE help remains in the XE7 help.
Enhancements to the Data Explorer
The Data Explorer now displays these nodes for FireDAC applications:
Primary keys and their fields
Foreign keys and their fields
Online Help Changes for Database
Tutorial: Using a REST DataSnap Server with an Application and FireDAC (New)
Tutorial: Using a REST DataSnap Server with an Application (Revised)
DataSnap.FireDACJSONReflect REST Server Client Sample (New)
Debugger Changes for XE7
New PAServer Manager App on the Mac
The new Mac GUI app PAServer Manager is now delivered with PAServer (the Platform Assistant Server). PAServer Manager enables you to create and manage multiple instances of PAServer.
For more information, see:
Installing the PAServer Manager on a Mac
Running the PAServer Manager on a Mac
MultiByte Support for Mobile Debuggers
The debuggers for the mobile platforms (iOS and Android) now support the use of Unicode characters and strings with UTF8, UTF16 or UTF32 encodings.
In file names of iOS apps, the debuggers now support the use of international characters (Unicode, such as hélène and éléments).
For general information, see Debugging Multi-Device Applications.
Binary info.plist File Deployed
The info.plist file, which is required for Mac and iOS apps, continues to be generated as an XML file containing keys and associated values.
For deployment, however, the XML file is now converted to binary. For information about the contents of the info.plist file, see Version Info.
Command-Line Utility Changes for XE7
Java2OP.exe: New Native Bridge File Generator for Android
The process of allowing your application to use custom Java libraries on Android previously required you to manually create a native bridge file from a Java class file.
RAD Studio provides a new tool, Java2OP.exe (Java to Object Pascal), that automates the creation of a native bridge file for Delphi applications. This new tool allows you to generate a native bridge file from a set of JAR or Java class files, or from a specific subset of the Android API.
For this release, Java2OP.exe is available on the Registered Users site: http://cc.embarcadero.com/myreg
Application Samples Changes for XE7
The application samples delivered with the product have been reorganized, and some of the application samples are no longer delivered. We deliver the newer samples that are more relevant to multi-device application development, but we removed older samples that are less relevant. The removed samples will be made available in a separate SourceForge repository after the XE7 release.
For more information about the application samples delivered with the product, see:
Release Notes for XE7
Installation Notes for XE7
Retrieved from "http://localhost/RADStudio/XE7/e/index.php?title=What%27s_New_in_Delphi_and_C%2B%2BBuilder_XE7&oldid=232246";
Copyright (C) 2014 Embarcadero Technologies, Inc. All Rights Reserved.
Current Wiki Page