6 ratings
  • 1
  • 2
  • 3
  • 4
  • 5
5 star 4
4 star 2
3 star 0
2 star 0
1 star 0
Compatible with
  • Android
  • iOS
  • Windows

IBM MobileFirst SDK 8.0.2017040506

IBM

Integrate your Xamarin apps with IBM MobileFirst Platform.

IBM MobileFirst SDK

With the IBM MobileFirst Platform Foundation SDK, C# developers can build rich native enterprise grade mobile apps for iOS and Android devices by using IBM MobileFirst Platform Server.

Note: IBM MobileFirst Platform Foundation was earlier called IBM Worklight Foundation.

Key Highlights

  • Do it all by using C#
  • Single, secure point of integration, management, and deployment that supports the full mobile app lifecycle
  • Access your enterprise backend using MobileFirst Platform Adapters
  • Enterprise grade security for your mobile applications
  • Application management and version control
  • Leverage rich analytics support of MobileFirst Platform
  • Simplified push notification management service
  • Possibility to use your own strongly-typed C# objects and async/await patterns.
  • A unified C#API for iOS and Android.

Dive In

A unified API is provided for iOS and Android. You can write most of the IBM MobileFirst Platform related code in a common shared project that will be used in both the Android project and the iOS project. You can write all the asynchronous code using async/await and event listeners to make your app responsive.

The following code is a simplified subset of the code that is located in the samples. This example show how you can call an IBM MobileFirst adapter that returns a feed of news articles and is formatted for pretty printing in platform agnostic code.

In the Android Activity, instantiate the Android specific WorklightClient object.


        public class MainActivity : Activity
        {
            IWorklightClient client = Worklight.Xamarin.Android.WorklightClient.CreateInstance (this);
        }

In the iOS UIViewController instantiate the iOS specific WorklightClient


    public partial class Xtest_iOSViewController : UIViewController
    {
        public override void ViewDidLoad ()
        {
            base.ViewDidLoad ();
            IWorklightClient client =  Worklight.Xamarin.iOS.WorklightClient.CreateInstance ();
        }
    }

After you created the instance of IWorklightClient, you can use it to write platform agnostic common code. You first connect to the MobileFirst Server, and register a Challenge handler for authentication. As you do so, you can write to the local logging as well as the server-based analytics logging.


        //all this is common code
        public async Task<WorklightResponse> Connect()
        {
            string appRealm = "SampleAppRealm";
            ChallengeHandler customCH = new CustomChallengeHandler (appRealm);
            client.RegisterChallengeHandler(customCH);
            WorklightResponse task = await client.Connect ();
            //lets log to the local client (not server)
            client.Logger("Xamarin").Trace ("connection");
            //write to the server the connection status
            client.Analytics.Log ("Connect response : " + task.Success);
            return task;
        }

Then call an adapter procedure


        //Common code
        StringBuilder uriBuilder = new StringBuilder()
                    .Append("/adapters")
                    .Append("/ResourceAdapter") //Name of the adapter
                    .Append("/balance");    // Name of the adapter procedure

        WorklightResourceRequest rr = client.ResourceRequest(new Uri(uriBuilder.ToString(),UriKind.Relative,
            "GET",
            "accessRestricted");

        WorklightResponse resp = await rr.Send();

        result.Success = resp.Success;
        result.Response = resp.Success ? "Your account balance is " + resp.ResponseText : resp.Message; 

For more information see the sample inside the component for more details.

Release Notes

8.0.2017040506

  • This iFix introduces a new implementation of Application Authenticity. Read more about this implementation here
  • This iFix introduces support for BitCode in iOS.
  • Modified the default scope for WorklightResourceRequest and WorklightAuthorizationManager.ObtainAccessToken() calls to the MobileFirst server.

8.0.2017013105

  • Changed the versioning scheme to include the date stamp.
  • Fixed an issue where the callbacks of SecurityCheck challenge handlers were not being called.
  • Fixed an issue where the WorklightResourceRequest.SetHeaders() API was not sending the specified headers to the MobileFirst server.

8.0.0.4

  • Fixed an issue on iOS where a relative URI could not be used in a WLResourceRequest call.
  • Fixed an issue on iOS where custom analytics data did not correctly show up on the MobileFirst server Analytics console.
  • Fixed an issue on Android where tapping on a Push notification in the notification drawer would not open the correct notification in the app.
  • The sample shipped with the component is modified to be compatible with MobileFirst Push v8.

8.0.0.3

  • Fixed an issue where WorklightPush.RegisterDevice() API hangs on Android when the required permissions are not provided in the AndroidManifest.xml

8.0.0.2

  • Added APIs for sharing simple data (such as access tokens) between two apps on the same device
  • Fixed an issue on iOS where two calls were made to the MobileFirst server when form parameters were added to the request.
  • Fixed an issue on iOS where challenge answers to the server were appended with additional JSON data.

8.0.0.0

  • Updated the SDK for IBM MobileFirst Platform Foundation v8
  • Give your mobile apps the power of the cloud using Mobile Foundation on IBM Bluemix
  • The Xamarin SDK is available as a PCL providing a common API across Android, iOS and Windows

See what's new in IBM MobileFirst Platform Foundation v8

7.1.0.4

  • Fixed an issue where the device sent double the number of Analytics events to the MobileFirst server when using the WLResourceRequest API with form parameters.

7.1.0.3

  • Fixed an issue where invokeProcedure with a timeout specified was not sending the right data to the MobileFirst server on Android.
  • Fixed an issue where the user credentials were note passed to the server correctly when challenged by and Adapter based Authenticator on Android.

7.1.0.2

  • Fixed issues which caused data to be stored in incorrect format for JSON objects.
  • Added new methods to send analytics data to the MobileFirst server
  • Other bug fixes

7.1.0.1

iOS

  • Fixed an issue which prevented adding Cookies to WorklightClient.CookieStore on iOS.
  • Fixed an issue which prevented adding non-string objects to a JSONStore Collection.

Android

  • Target framework updated to API level 23. This allows the MobileFirst SDK to be used in Xamarin Forms 2.0 projects.
  • Fixed an issue where communication to the MobileFirst server through IBM Tivoli Access Manager WebSEAL failed.

7.1.0.0