4 Replies Latest reply on May 5, 2017 7:26 PM by barryj

    iOS FM Go server version custom URL scheme

    barryj

      I have a custom iOS app built in Xcode running on iPad to communicate with external GPS hardware via bluetooth and pass position data back to Filemaker.
      This all works perfectly when operating from a database stored locally on the iPad using the custom URL scheme and returning back to FM using the following code (Objective C) in my app to create the URL:
      filemakerURL = [NSURL URLWithString:[NSString stringWithFormat:@"FMP://$/%@?script=GPS_SET_FIELD&param=%s%%0d%s", m_pCallackString, m_LatString, m_LonString]];

      m_pCallackString is the database name passed by FM to the app when the FM script launches it with the 'Open URL' script step.

      I am completely stumped as to how, or even if it's possible, to do this when the user launches a remote database on the server via FM Go or via web direct. My GPS comms app gets launched, but can't ever get back to database which launched it

      The thing I'm investigating right now is to leave my app running in the background and use the clipboard to pass requests to, and get results back.

      I have setup a timer script in filemaker to check the clipboard for the result string, once per second.

      This is really flaky and less than ideal though.

      Any and all suggestions (however crazy) gladly accepted.

       

        • 1. Re: iOS FM Go server version custom URL scheme
          bigtom

          Are you using fmp:/FQDN/filename for the remote files?

           

          Data separation on the iPad might be an option for you. Having a local file to process between your app and the server file.

          • 2. Re: iOS FM Go server version custom URL scheme
            odubov

            You could try this URL Scheme with login/password:

            fmp://login:password@192.168.1.1/Database?script=gps&param=xxxxx

             

            Make sure also, that your openURL method is called via dispatch:

             

                dispatch_async(dispatch_get_main_queue(), ^{

                    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:ourPath]];

                });

             

            If you consider an iOS App SDK application instead of FileMaker Go, I can help you with a build of custom plugin, that will catch GPS data from bluetooth tracker and redirect it to FileMaker part in the frame of one FIAS application.

             

            Best regards,

            Alexey Dubov

             

            https://imaster.tech

            2 of 2 people found this helpful
            • 3. Re: iOS FM Go server version custom URL scheme
              bigtom

              odubov is a great resource when it comes to interfacing with accessory hardware on iOS with FMGo.

              • 4. Re: iOS FM Go server version custom URL scheme
                barryj

                Thanks everyone for your help. By accident, I found what was wrong. My original URL will in fact work, but the issue was that I had Filemaker Go versions 14 and 15 both installed on the iPad. I found this by accident, as I had battery problems with my development iPad, and plugged in a spare, which only had FM Go 14 installed, and magically everything just worked. I installed Vers 15 this morning, and everything stopped working, so uninstalled 14, and all is right with the world and working perfectly.

                Thanks Odubov, for your insight, and your offer of help with an SDK version. I don't want to go that way just now as the project is in a terrible state of flux where I'm getting directives from management to change something on it it every 5 minutes, Argh .