[Interest] Qt interfacing to Android native UI ?

Robert Iakobashvili coroberti at gmail.com
Mon May 2 20:17:49 CEST 2016


Dear Edward,
React Native - good catch.

Thank you so much for sharing this idea
and your experience!

Kind regards,
Robert


On Mon, May 2, 2016 at 8:08 PM, Edward Sutton <edward.sutton at subsite.com> wrote:
>
> On May 1, 2016, at 4:27 AM, Robert Iakobashvili <coroberti at gmail.com> wrote:
>
> Dear Edward,
> What are your conclusions and which direction you decided on
> after your experiments?
>
>
> I never made much progress. While QML looked more "native like” I never felt
> comfortable using it.
>
> I am doing my new iOS and Android development using Facebook's react-native.
> React Native calls native UI from Javascript.
>
> https://facebook.github.io/react-native/
>
>
> When it makes sense I select UI components that have counterparts in Android
> and iOS in order to increase code re-use.   I have seem claims of 85% code
> re-use and from my experience  I do not doubt these claims.
>
> So far, so good...
>
> -Ed
>
>
>
> Thanks,
> Kind regards,
> Robert
>
>
> On Thu, Nov 5, 2015 at 2:40 PM, Edward Sutton <edward.sutton at subsite.com>
> wrote:
>
> Hi Robert,
>
> The approach you outlined below was the one I was considering. Use of common
> C++ business layer, widgets for desktops, iOS native UI, and Android native
> UI.
>
> The Android native UI was my biggest concern.
>
> I am going to continue experimenting with QML for a few more days
>
>
> Hi Ben,
>
> Thank you for sharing your Android UI interfacing code.  I will take a look.
>
> Your iOS UI interfacing code was *very* helpful in understanding how to mix
> C++ and Objective-C++ in the same *.mm file.  Java seems much more
> challenging to interface to native UI.  However all I have done so far is
> simple JNI calls into Java.
>
> Thank you both,
>
> -Ed
>
>
> On Nov 5, 2015, at 1:51 AM, Ben Lau <xbenlau at gmail.com> wrote:
>
>
> Not really a solution for wrapping Android UI in Qt app. But I have already
> developed an image picker with native UI and communication library between
> Qt and Java/Android. May be it could used as example / core framework.
>
> Image Picker
> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_benlau_quickandroid_blob_DEV_QuickAndroid_ImagePicker.qml&d=CwIBaQ&c=G4BpsyPyB19LB50bn2swXw&r=cAG2c-SQES5P2qb8IW-uwnBOCX_f2qYJIlzenFnoHUc&m=nrrSNDcnq0DATI4qf2zrUTNMu_m6wsOws_Oz0VoTjAU&s=b9qfgeLoPCVjdDxzeFLLLuGl5EwnXG7Gv0sTjZwTjwU&e=
>
> System Dispatcher - Invoke Java/Android function and vice visa without using
> JNI. Data type conversion is handled automatically.
>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_benlau_quickandroid_blob_DEV_qasystemdispatcher.h&d=CwIBaQ&c=G4BpsyPyB19LB50bn2swXw&r=cAG2c-SQES5P2qb8IW-uwnBOCX_f2qYJIlzenFnoHUc&m=nrrSNDcnq0DATI4qf2zrUTNMu_m6wsOws_Oz0VoTjAU&s=m04hl55EIBiEA7ELiqTGCj-dyEOx30iqkz2skvOT-rM&e=
>
>
>
> -Ed
>
>
> On Nov 5, 2015, at 1:36 AM, Robert Iakobashvili <coroberti at gmail.com> wrote:
>
> Dear Ed,
> It seems that I have something native for iOS, but not for Android.
>
> I was thinking now about another path to take:
>
> 1. Common layer - with business app logic;
>
> 2. Presentation layer with the below options:
>
> 2.1 Qt Desktop layer to cover Win, Mac and Linux;
> 2.2 iOS-Native;
> 2.3 Android-Native.
>
> Please, update us on your success of co-existence between
> Qt-Widgets and QML and whether after adding QML it is still
> sustains tough memory environment on iOS and low-memory
> Android devices.
>
> Thank you in advance.
>
> Regards,
> Robert
>
>
> On Tue, Nov 3, 2015 at 5:12 PM, Edward Sutton <edward.sutton at subsite.com>
> wrote:
>
> I know I can use native iOS UI by mixing Objective-C++ and C++ in the same
> *.mm file.
>
> I have done a little Android JNI.  Are there any examples for interfacing to
> Android native UI elements?
>
> I need to create a UI picker for manually entering GPS latitude and
> longitude in degrees,  or degrees, minutes, seconds for a widgets app.  I
> expect it will be hard to make a touch usable widget UI picker.  Developing
> a native interface may take similar amount of time but result will be much
> superior.
>
> Thank you for your advice,
>
> -Ed
> This email and any files transmitted with it from The Charles Machine Works,
> Inc. are confidential and intended solely for the use of the individual or
> entity to which they are addressed. If you have received this email in error
> please notify the sender. Our company accepts no liability for the contents
> of this email, or for the consequences of any actions taken on the basis of
> the information provided, unless that information is subsequently confirmed
> in writing. Please note that any views or opinions presented in this email
> are solely those of the author and do not necessarily represent those of the
> company. Finally, the recipient should check this email and any attachments
> for the presence of viruses. The company accepts no liability for any damage
> caused by any virus transmitted by this email.
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.qt-2Dproject.org_mailman_listinfo_interest&d=CwIBaQ&c=G4BpsyPyB19LB50bn2swXw&r=cAG2c-SQES5P2qb8IW-uwnBOCX_f2qYJIlzenFnoHUc&m=nrrSNDcnq0DATI4qf2zrUTNMu_m6wsOws_Oz0VoTjAU&s=aIs7iOEK4KMToKD_jb-tP9y5aOCs9wfSJ8tXHkjMU1U&e=
>
>
> This email and any files transmitted with it from The Charles Machine Works,
> Inc. are confidential and intended solely for the use of the individual or
> entity to which they are addressed. If you have received this email in error
> please notify the sender. Our company accepts no liability for the contents
> of this email, or for the consequences of any actions taken on the basis of
> the information provided, unless that information is subsequently confirmed
> in writing. Please note that any views or opinions presented in this email
> are solely those of the author and do not necessarily represent those of the
> company. Finally, the recipient should check this email and any attachments
> for the presence of viruses. The company accepts no liability for any damage
> caused by any virus transmitted by this email.
>
>
> This email and any files transmitted with it from The Charles Machine Works,
> Inc. are confidential and intended solely for the use of the individual or
> entity to which they are addressed. If you have received this email in error
> please notify the sender. Our company accepts no liability for the contents
> of this email, or for the consequences of any actions taken on the basis of
> the information provided, unless that information is subsequently confirmed
> in writing. Please note that any views or opinions presented in this email
> are solely those of the author and do not necessarily represent those of the
> company. Finally, the recipient should check this email and any attachments
> for the presence of viruses. The company accepts no liability for any damage
> caused by any virus transmitted by this email.



More information about the Interest mailing list