Jump to content

Rollo62

Members
  • Content Count

    1949
  • Joined

  • Last visited

  • Days Won

    25

Everything posted by Rollo62

  1. Thanks for the tutorial, I'm a huge fan of detailed instructions 👍 Good to point out above warning too, I'm afraid not many people are aware of this. (By the way: This is also true when you charge your phone on public USB-sockets, better deactivate ADB before ). Regarding the ADB over Wifi, maybe there is an option to restrict ADB operation only from a specific IP-Adress ? I have never checked that, but it could give much more security if you can allow only point-to-point connections.
  2. Dear all, I recently upgraded my hardware to never devices, for Mac as well as for the phones. Then I faced the problem that the nevery devices seems not to be connected to ADB as stable as before. It is possible to check by "adb devices" command from the commandline. It should show something like: but with the new devices this status is kept only for some minutes, then they might go offline Which prevents and further debugging. I had searched the web, and tried out many "solutions", but none of them seems to work reliably to me. Here is my list of actions I had taken: Use latest versions of all OS and Win-VM Limit the USB speed to USB2.0 in the VM settings The host and phones have latest USB3.1 with USB-C connector Updated the USB debug drivers (e.g. for Samsung S9+ via their SmartSwitch program, which installs also the latest ADB) Phone side: Disable/Enable USB debugging works to get backl online, but not 100% reliable Phone side: Remove all USB debugging restrictions helps to get back online, but not 100% reliable Phone side: Reboot device, this usually always helps, but of coarse breas your workflow massively Windows side: command adb kill-server and adb-start-server, will restart the server, possible to get online, but also seems to make and keep a separate connection sometimes, where the ADB cannot bind to any more. One important hint was that better use USB2.0 as connection, since many Phones still have problems with USB3.x But how, when you only use latest USB3.1 hardware now ? I used a USB3.1 to USB-A socket short (15cm) extension cable, w/ an older USB2.0-Hub: To force hardware speed to USB2.0. Only since then I could get ADB more stable, not all the time falling back to offline. This is my workaround for the monent. I wouldn't say the latter would 100% solve my case, but its maybe 99%, I'm still testing. Use and check with different USB cords, to be sure its not that one. One big problem I faced, is that sooner or later you won't find older USB2.0 hubs or cables in the shops, in one I was, they solely had USB3.1 right now (surely ready for the future). Good if you keep your old boxes and cables, as usual ☺️ Would be great if you could share your experience with the "ADB devices oflfine" case, which is a very unexpected one when it hits you- Looking forward to hear from your "best practices" in this case.
  3. Rollo62

    Linking errors with FacebookAudienceNetwork

    Maybe that helps, suggest something with hardware ? https://becomethesolution.com/blogs/iphone/install-incompatible-ios-apps
  4. Rollo62

    Advices of creating mobile App with Delphi

    - Take care on the Application events - Take care on the permissions - Don't make configurations earlier than FormShow, better as lazy and delayed as possible - Use a most modular approach, all single units decoupled and separately testable, just build your plug-and-play system - Start as low-level as possible, use TRect, TGlyph, TPath, TForm, TButton, TEdit, TListView ... Thats no drawback, you can use nested controls without much problems - Use System.IOUtils for any URL composition - Use TFrame as base for your views (some use TForms, but I have no issues with Frames, as long I create them in runtime) - Be aware of fancy controls, they are very likely to fail. - Don't think "desktop", consider "mobile" UI right from the start ... ... (to be continued)
  5. Rollo62

    Delphi and the new Apple M1 CPU

    That is good news, that releases of Delphi may run on M1. I think we still will have x86 Mac's for a while, so still some time until we really need to move to M1 as debug tool. Hopefully there were no hidden catches in the Rosetta 2, that let us need support more urgently.
  6. Rollo62

    Prefix unit local variable names

    https://en.wikipedia.org/wiki/Naming_convention_(programming) here with some examples ... Anyway, it seems that I use sometimes the RadicalMixedPascalCamelSnakeCase, if it makes sense to force visual readability and visual grouping
  7. Rollo62

    is it possible to undeclare an identifier?

    Yes, thats possible too, and I always wonder why on earth I should ever do it like that ? Oh yeah: Its so much advanced over FError, to have a fancy pig-tail in front
  8. Rollo62

    is it possible to undeclare an identifier?

    I know its modern nowadays to use all kind of bare names for anything. But those names are very likely to conflict with identifiers, keywords, etc., with a whole bunch of possible hard.-to-find sideeffects. Thats why I still like consequently use the decoration of names: L - for local instance: LError F - for field instance: FError G - for a global instance: GError (nevertheless: global variables are not recommended) This little extra char gives me a lot of extra-info - its not a function or procedure, if you use it with discipline - its not a global, intrinsic function, if you use it with discipline - its a local or field instance, or even global All this just because of the tiny character, I think its still very much worth it.
  9. Rollo62

    Linking errors with FacebookAudienceNetwork

    Don't know about JveSoft, but that looks interesting. JveSoft seems to add a whole lot of critical frameworks, are you sure they were all needed for your function ? How is JveSoft sourcecode structured, can parts of the sooftware be easily separated, or do you need to use all or nothing ? I would always try to minimize the critical frameworks, if possible.
  10. Rollo62

    DPM Package Manager - presentation

    waden = want a damn exclusive name
  11. Rollo62

    DPM Package Manager - presentation

    @Vincent Parrett Nevermind, these were just jokes DPM is fine related to NPM .... (if not yet taken, I would consider that name by myself).
  12. Rollo62

    DPM Package Manager - presentation

    YADPAM - yet another Delphi package manager
  13. To clarify: Its not in the enterprise version either, it was only a time limited test-license, in Rx10.3, until the next version. I wanted to check, but didn't find the time to. Now my test-license is gone, and I'm looking for other options.
  14. Rollo62

    DPM Package Manager - presentation

    Sorry, DOPE is nothing what programmers are aware of. Then better call it COFFEE "clean object file fragmentizer for external entities" .
  15. Rollo62

    DPM Package Manager - presentation

    Maybe so, it came from a text from Goethe, here in a Googled translation
  16. Rollo62

    DPM Package Manager - presentation

    In germany we have a saying: "names are sound and smoke"
  17. Rollo62

    DPM Package Manager - presentation

    How about +vraptor" vincent's rad application package tool open resource" ? Only 18 hits, when using the "+" ...
  18. Rollo62

    Manage overloaded IfThen functions

    This "naming pattern" is not limited to the uses alone. I know, most people dislike that decorating of function names, but I do that in some similar cases too, like that: MtIfThen(...
  19. Oh so 20's: Today, I say "Alexa, kill bill" Next year, I think: "GPT-3, optimize Windows and solve my customer Scott's code issues"
  20. Far from that, don't worry I'm sure you're right, as I said, but for different kind of apps or audience maybe. What you refer to is to safe a second, thats only true for the very professionals, like programmers, designers, 3D animators, you name it. Maybe I am talking about the usual "normal" user, they probably don't care on speed but on clearness of the UI. Startup phase is an important part of the UI IMHO, for example I see many setup programs taking lots of time before showing up. I hate that behaviour, because II always feel unsure if they started, or doing massive trouble, so I have to doublecheck if its running or not.
  21. Well spotted, delivering hard evidence to a hypothetical discussion From a philosophy standpoint I could say: "Be responsive". On desktop you will get away with non-responsive behaviour, but on mobile your app is very likely KILLED. I leanrned that the hard way
  22. Maybe your argument is right for some kind of apps, maybe command-line like, but WindowsTaskManager is probably not a good example IMHO. When I press CtrlAltDel, and then need waiting so long until anything happens, I personaly would prefer the directly responding display, and maybe gradually populating Tast Manager. I think what all people give bad mood at PCs comes from to "trigger any action", and then wait unreasonably long to see any result, giving impression somethings wrong. Very often I press buttons twice, just because of that, and ran into other nasty issues then. This is what we try to target by responsiveness, by keeping things in threads instead of UI. I prefer the full responsiveness over saving some seconds here or there. Imagine the Windows Task Manager, gradually populating, this by chance has listed your desired process immediately at the top, and you can work with that already, while the others are still populating. If your not lucky, and your process is the last in the list, at least this is understandable, and you got a nice progress display. I find this less annoying.
  23. I focused a lot to mobile development, but those concepts were also good for desktop IMHO. Since many years I use "lazy initialization" on startup, this keeps the EXE slim and fast, no need for ugly splash-screens. Then after FormShow I see the app, and can do some lazy configurations, and provide a nice display, if needed. Most of the time these configurations were faster than the user clicks, so its not recognizable to most users. This way customer see its starting and working fast, and they don't complain, I think big splash screen is more annoying. Even a disabled app, during "lazy configuration" feels a lot faster than if you do this before the app is visible. I think time is relative, if the user sees some reactions from time to time, this is squeezing time&space a lot, like a warp drive. Another advantage of lazy initialization is, your app is already under full control. Errors, exceptions, logs, etc. can be much better debugged in this state, while during the fragile startup phase.
  24. Rollo62

    XCode 12 compile error

    Usually the newer PaServers detect themself when outdated, and can update automatically, when pressing Test in the ConnectionProfileManager.
  25. Rollo62

    HTML Library review and sale: 25% off.

    Jon missed to mention the SVG rendering capabilities, among other features.
×