Intents on Android using API 26 to open PDF documents.
Recently, the Google Play store updated its requirements so the target API level of 26 was used to get new apps submitted. While this was reasonably easy to achieve through updating the AndroidManifest.Template, the change to the newer API changed the behaviour of my application.
Before the update, I would download a file to the CachePath and then share to a public folder. I would then get a URI for the public folder path file and share via Intents. Following the update, this no longer worked. After a little research, I discovered this was due to the changes in the Android security system, that actually, make a lot of sense. Rather than sharing the file outside the application, you now provide tempory access to it via the Intent. To achieve this, you need to setup a Provider, (this is done via XML) and then programmatically provide the path as a ‘content://’ URI, set flags for allowing read / write access via the intent and share it.
The video shows how to achieve this and demo’s the working code. To help, below are some of the XML blocks you will need upon the way.
Add this to the AndroidManifest.template in the source code root folder, before the </application> tag. This is then used to build all Android apps.
Following an update to OpenSSL to address some identified vulnerabilities, Google has stopped allowing submission of applications that contain certain versions of OpenSSL libraries.
While InterBase ToGo and IBLite are not affected by the vulnerabilities identified, the current build that is shipped with RAD Studio for Android is being stopped from deploying to the Play Store. To get around this issue, please download the latest build for InterBase ToGo and replace the .a file in your local deployment files.
While tested on 10.1 Berlin, this download should work for any RAD Studio customer who’s product shipped contained InterBase XE7 (XE7, XE8, 10.0 Seattle and 10.1 Berlin).
Download the latest Android InterBase ToGo from Code Central
Visual LiveBindings is a technology that allows you to bind your data and objects (model) to the UI making. While LiveBindings is a key part of FireMonkey development, it is often overlooked by VCL developers.
A while ago I started a series of blogs on LiveBindings and how to use them with existing VCL applications. Covering seven blog posts, I looked at