Advanced app feasibility (camera + gps + storage + TCP) lazarus / 43-Android ---------------------------------------------------------------------- zebu1er · 2019-08-07 10:02 Hi, I have to realise an app with the following functionalities : - Take a picture with the camera - Get current GPS position - Setup a TCP client connection - Store raw local data, or even better, in a database (sqlite, ...) - Multithreading Is this possible to make it in Pascal ? With what environment (Laz4Android + LAMW, ...) ? Thanks for your advice ! ---------------------------------------------------------------------- jmpessoa · 2019-08-07 15:24 Yes! Laz4Android + LAMW is a good start point..... ---------------------------------------------------------------------- zebu1er · 2019-08-09 15:51 I've tested, seems quite viable. I just regret I cannot use Lazarus native positioning (layout) instead of the one of Android. ---------------------------------------------------------------------- jmpessoa · 2019-08-09 19:52 QuoteI cannot use Lazarus native positioning (layout) ... But,  LAMW/Android  layout is not so complicated .... from here: https://raw.githubusercontent.com/jmpessoa/lazandroidmodulewizard/mast er/LAMW_Getting_Started.txt Quote[FAQ 2]: [Thanks to Ahmad Bohloolbandi (a.k.a. @developing) ] #Question: How do we can design a layout that shown same in real device? [Answer]: You should use the component properties:       "Anchor",       "PosRelativeToParent",       "PosRelativeToAnchor",       "LayoutParamHeight",       "LayoutParamWhidth"           Example: 1-Put a "jTextView" component on your AndroidModule form:    Set "PosRelativeToParent"       "rpCenterHorizontal" [True]       "rpTop" [True] 2-Put a "jButton" component on AndroidModule form:    Set "Anchor" to "jTextView" (Because you should set position relative with "jTextView")    set "PosRelativeToAnchor"       "raBelow" [True] 3-Put a "jEditText" component on form:    Set "Anchor" to "jButton".    Set "PosRelativeToAnchor"       "raBelow" [True] NOTE:    Anchor setting is most important section of this design,    because your component position depends on this property.    And for change width and/or height of each components you should    change/configure "LayoutParamWhidth" and/or "LayoutParamHeight". ---------------------------------------------------------------------- zebu1er · 2019-08-14 10:32 Thanks. Yes I already used that positioning mode in my few Android apps. To me it seems it's mainly meant to be used like a flow positioning (like display: inline-block of the css). That approach is totally rational according to the variety of screen sizes. In fact, ideally, I was seeking to develop in Lazarus over Android but bypassing Android stuff. Just like what I did with Lazarus on a Raspberry running Raspbian. But probably that approach would then prevent from accessing Android sensors (GPS, ...)