Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Android & iOS app auto update
Forum Updated to NodeBB v4.3 + New Features

Android & iOS app auto update

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
6 Posts 2 Posters 2.0k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Marek
    wrote on last edited by
    #1

    Hi all,

    I have client-server application. Server is Qt based, and also Android, iOS, Windows clients are Qt based.
    I need to implement auto-update solutions on clients part. It is not guaranteed that all my servers have the same version, so I can't relly on GooglePlay and AppStore to update my clients app. Basic scenario is like this: clients app starts, it connects to the server and if server version is different than client version application must upgrade/downgrade itself.
    I read about some auto-update frameworks but usually they are for Desktop solutions.
    Windows desktop part is more or less known, so I want to ask about Android,iOS,WinRT
    I think about something like this:
    I have web repository with binaries and libraries for each application versions. When client app needs to update it starts additional process, if possible closes the original process, downloads what it needs, overwrites the old binaries/libraries and displays message to the user that he/she needs to start app again.
    Clients apps don't switch from server to server, so it will be rare case usually after server upgrade, or new client app installation.
    Question is: will this work for Android and iOS and possibly WinRT ?
    I have Qt Indie Mobile license so apk for Android is dynamically linked, I'm not sure about iOS.
    Will I be able to overwrite Qt libs if I had to change Qt version ?
    As I said it is client-server application so I can't see how could I solve my problem with AppStore/GooglePlay

    Best Regards
    Marek

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to devnet,

      No you can't do that. Your application must pass the validation phase in order to be deployed to your users.

      What is usually done is that your server provides a versioned API and your client application connects to the highest available.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Marek
        wrote on last edited by
        #3

        Hi.

        Hmm, what I have in mind is perfectly possible on Windows and Linux, right?
        but I can't overwrite existing binary file on mobile platforms?

        It seems to me that clients applications will have to have versioned API. Only after client update its application, option for server update will be presented to him. Server is dedicated for small office/home use, in other words each server is dedicated to small number of users.
        Anyway, if only I could deploy client application along with server (that is embeded system and has web server) it would be simpler, but as far as I know it isn't possible with iOS, only by AppStore.

        Best Regards
        Marek

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4

          Even on OS X yes.

          No, you can't on mobile platform. There are strict rules there.

          Well, like I said, your server should provide access to old version of the APIs. Have a deprecation period and then remove support for old version.

          What is your target audience ?

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0
          • M Offline
            M Offline
            Marek
            wrote on last edited by
            #5

            Well, software is for home automation it works with a few hardware platforms. Server is my system installed on CubieBoard and I'm selling this and client applications are for free. So my target audience are adult people.

            1 Reply Last reply
            0
            • SGaistS Offline
              SGaistS Offline
              SGaist
              Lifetime Qt Champion
              wrote on last edited by
              #6

              How are you planning to update your server application ?

              Interested in AI ? www.idiap.ch
              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

              1 Reply Last reply
              0

              • Login

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • Users
              • Groups
              • Search
              • Get Qt Extensions
              • Unsolved