-
Content Count
1298 -
Joined
-
Last visited
-
Days Won
29
Posts posted by Dave Nottage
-
-
3 hours ago, Rollo62 said:The iOS documentation tells me that background app can be killed anyway, no matter how many modes are set,
if the phone needs resources (so that doen't make me feel much secure in this area)Unless your app is called "Facebook", "Twitter", or "Instagram", yeah 😉
- 1
-
10 hours ago, Rollo62 said:Important is that the aspect ratio stays the same
How do you manage that?
10 hours ago, Rollo62 said:Maybe this helps to find the right aspect ratios.
Thanks for the link!
-
12 hours ago, Rollo62 said:So do you mean here to use location updates to keep BLE alive in background ?
No, I was specifically referring to Beacons. I expect the BLE issue is separate.
12 hours ago, Rollo62 said:A better solution would be to use "
bluetooth-central
" only, in background mode, hopefully w/o any side effects.
But this I didn'T get to work w/o the "bluetooth-peripheral
" flag.Now I'm confused: does it work, and if so, only with both?
-
3 hours ago, Rollo62 said:Thanks for sharing, did you also get it working with the mobile frameworks ?
I haven't had the need to, however I might take a look at it
1 hour ago, baeckerg said:Would you share all your enhancements or do you host it somewhere?
I'll work on sharing the parts that I can share.
-
3 hours ago, Rollo62 said:Well, is that line of yours an advertisement for BeaconFence ?
I don't understand how you came to that conclusion.
3 hours ago, Rollo62 said:Why else did Embarcadero added them ?
As far as I know, they haven't
3 hours ago, Rollo62 said:Is there any way to get background modes working as expected?
Yes, with the changes I proposed in the QP report.
-
A while ago I was looking for something that's cross-platform (Windows and macOS) so decided to check out CE4. For me, it was extremely difficult to work with, if the goal is to use it for automation.
I ended up using TWebBrowser in FMX and wrote a bunch of helper methods for both platforms, one of the most critical being:
// macOS class function THTMLHelper.GetBrowserDocument(const ABrowser: TObject): DOMDocument; var LWebView: WebView; begin Result := nil; if Supports(ABrowser, WebView, LWebView) then Result := LWebView.mainFrame.DOMDocument; end; // Windows class function THTMLHelper.GetBrowserDocument(const ABrowser: TObject): IHTMLDocument3; var LBrowser: IWebBrowser; begin if Supports(ABrowser, IWebBrowser, LBrowser) then Supports(LBrowser.Document, IHTMLDocument3, Result); end;
- 1
- 1
-
15 hours ago, Rollo62 said:I don't understand how Embarcadero get Beacons working in the background
They haven't: there is critical code missing that allows them to work in the background:
https://quality.embarcadero.com/browse/RSP-21460 -
-
-
I've finally managed to put together a test case, which is here: https://github.com/DelphiWorlds/MiscStuff/blob/master/Test/RDSTwainTestCase.zip
-
-
Works OK here. My steps:
1. Create a blank FMX app, change platform to OSX 64-bit
2. Add a button and memo
3. Add the code you described
4. Save the project
5. Open FMX.Memo.pas from the source, and save it in the same folder as the project
6. Put a breakpoint in TCustomMemo.GetText
7. Close the file in the editor
8. Run the app with debugging
9. Click the button.
IDE opens the local copy, as expected, and stops at the expected breakpoint
- 1
-
A stack trace would be more helpful. It should appear after you click "Break". If not, click View > Debug Windows > Call Stack or just use Ctrl-Alt-S
-
2 hours ago, Rollo62 said:ld: warning: directory not found for option '-L\ComponentHelpers'
ld: warning: directory not found for option '-L\Controls'
ld: warning: directory not found for option '-L\Core'
ld: warning: directory not found for option '-L\Features\Firebase'
ld: warning: directory not found for option '-L\Features\NFC'
ld: warning: directory not found for option '-L\Src\Features\Notifications'Those paths look suspiciously like mine in Kastri Free. What exactly are you compiling?
2 hours ago, Rollo62 said:ld: file not found: kernel32.dll
I suggest checking whether you have a unit that references the DLL without having a conditional define, or that the path to it is included for macOS when it should not be
-
If you are using Delphi 10.3, for this situation you do not need to modify AndroidManifest.template.xml yourself. Unless you have other customizations to it, please delete it (or remove your <provider> changes).
Go to the Project Options, select Application > Entitlement List and check the Secure File Sharing checkbox.
-
4 hours ago, pcplayer99 said:I select "No", then AOnDisplayRationale show my dialog box.
Right; that would be because, as I said earlier, it is "shown only when permissions are not granted by the user"
-
13 hours ago, pcplayer99 said:So, check this procedure in System.Permissions, there is no code to call AOnDisplayRationale.
You need to trace through the TAndroidPermissionsService.InternalRequestPermissions method in the System.Android.Permissions unit. Note that the rationale is shown only when permissions are not granted by the user.
-
31 minutes ago, Rollo62 said:From where did you get that note about the "featured file" ?
I found out from Dmitry Arefiev. It really should have been included in the release notes.
- 1
-
libcgsqlite3.dylib is now a "featured" file. Go to Deployment Manager and use the Add Featured Files to add it.
-
40 minutes ago, Mike Torrettinni said:FindComponent('CustomButton'), but I don't like it since it doesn't validate names
40 minutes ago, Mike Torrettinni said:will still give me some way to verify I don't misspell the names
FindComponent returns nil if you misspell the name, so just check for nil?
-
3 hours ago, rvk said:You say "RDS" DLL. How is that DLL different?
The difference is it is loaded by RDS.
3 hours ago, rvk said:Could you share the code?
I could put together code that just replicates the problem, if you're able to help with it
-
On 7/24/2019 at 6:46 AM, Dave Nottage said:Yes, with a different failure; can't recall exactly. I'll check again tomorrow.
Tested this again today. Using TransferMode := ttmMemory, ScanTest.bmp is the result using the "standalone" DLL, and ScanTestA.bmp is the result using the "RDS" DLL.
-
39 minutes ago, rvk said:Did you also try the TransferMode := ttmMemory; method already?
Yes, with a different failure; can't recall exactly. I'll check again tomorrow.
-
On 7/19/2019 at 12:11 AM, rvk said:The handle (hNative) is a TW_UINT32 (which is a Cardinal/32bit). I wonder if it shouldn't be a TW_Handle (which should be a NativeUInt and UInt64 on 64 bit). At least GlobalLock expects a THandle (which is UInt64 on 64 bit).
You're right, it should be, and I changed it to THandle (same as used by GlobalLock) for hNative in the TransferImages method, and the Handle parameter in the ReadNative method, but to no avail - same problem.
On 7/19/2019 at 12:11 AM, rvk said:Strange this worked locally on the machine itself but fails on RDP. Maybe the handle-numbers are much larger and it fails.
The handle numbers are larger, e.g:
In the "standalone" DLL: 57278728 (36A0108)
In the "RDS" DLL: 2333671976 (8B190228) and 1541866024 (5BE70228)
PDF view on Android
in FMX
Posted
This works for 10.3.x if you have some kind of PDF viewer installed on the device: