SDK Release Notes
Lists new features and known issues for all MobiledgeX SDKs
Last Modified: 6/17/2020
With every release, MobiledgeX endeavors to make our platform more accessible and efficient for developers to build cutting edge applications. We look to our developer community to help inform which features we should prioritize as the MobiledgeX platform continues to advance. If you have any feedback or questions when using our platform, please contact Vasanth Mohan or Wonho Park in the MobiledgeX Slack Community.
(06/17/2020): MobiledgeX SDK v2.1.0
In your application build.gradle project file, please update the following lines with the correct version number so that the new MobiledgeX libraries can be downloaded. Click sync gradle file if prompted by the Android Studio IDE in order to start the upgrade.
Additionally, the following functions have changed and you will need to update your app appropriately:
* The retrieveNetworkCarrierName function has been renamed to GetCarrierName to be consistent across all our SDKs.
In order to upgrade to the latest version of the SDK, you will need to do the following:
1. Delete the following files & folders from the Assets folder of the project. In future updates, we plan to automatically delete these for you.
- Re-add the Unity Git Package to your project by going to the Unity Package Manager and re-inputting the Git URL (https://github.com/mobiledgex/edge-cloud-sdk-unity.git). For more detailed instructions on this procedure, take a look at the Unity SDK guide.
Additionally, a few function names have changed on the MobiledgeXIntegration class. If you were using any of the following functions, here is what you need to update:
* Major: FindCloudlet now returns a bool instead of the FindCloudletReply.
* Major : GetLocationFromDevice is now a private function. If you need to get Location data, please use the Location Services class.
* Major : GetWebsocketConnection no longer calls RegisterAndFindcloudlet on behalf of developers. You will now need to call that function first, followed by calling the newly added GetAppPort function in order to use GetWebsocketConnection.
* Major : The GetURI function has now been renamed to GetURL. GetURL now returns an L7 url as a string, given an L7 protocol i.e. http, https, ws, etc.
* Minor: The useWifiOnly function has now been renamed to UseWifiOnly
* Minor : The function IsEdgeEnabled is now a private function.
- FindCloudlet now has an optional parameter called FindCloudletMode, which is an enum that supports two modes: Proximity and Performance. By default, FindCloudlet will use Proximity, which will return the same App Instance that is served via the DME. In Performance mode, the SDK will test all App Instances on a cloudlet and return back the App Instance with the lowest latency.
- New public functions for all SDKs on the Matching Engine Class : getHost(FindCloudletReply, AppPort) & getPort(AppPort). Together, both functions can be used to create the URI for the application instance returned via FindCloudlet.
- For Unity only, the SDK automatically fills in the App Name in the MobiledgeXSettings Window based on the Application Name in your Unity Project. If the App Name you deployed to MobiledgeX does not match the Application Name of your Unity project, please update the App Name in the MobiledgeXSettings Window to match the App Name that has been deployed to MobiledgeX.
- New Guide documenting the API of Computer Vision Sample Application. Useful if you want to deploy the open source Computer Vision server to one of the MobiledgeX cloudlets and connect to it with a client app.
- The Unity Ping Pong Sample Application has been updated to use the 2.1 Unity SDK and new import procedure. We have also updated the Ping Pong Guide to walk you through how to setup the Unity SDK using the package manager.
If you receive the following error and cannot compile your Unity project, restart Unity.
On iOS, if you are on a roaming network, the MCCMNC the SDK returns is the MCCMNC of your original network instead of the MCCMNC of your current roaming network, which is not the intended behavior.
(05/04/2020): MobiledgeX SDK v2.0
If you were using an older version of any of the SDKs, follow the instructions on our SDK & Libraries page for the specific platform and download the latest release, then upgrade your project.
Android: Use the createDefaultRequest, which has the majority of the defaults set via the Builder API. API refers to the functions listed below.
Swift, Unity, C#: Optional parameters are now included in the APIs. Named parameters are available if a parameter is included in the create request for thing such as AuthToken, Tags, Cell ID, etc. A list of all optional parameters can be found on our API documentation.
Unity: Re-download the Integrations scripts from the edge cloud sample apps if you were using them prior to this release.
The following functions are provided by our SDKS (Android, Unity, iOS) to connect to a deployed cloudlet. Please refer to our API documentation for API examples used within each SDK.
||Registers the client with the closest Distributed Matching Engine (the nearest edge location in the Operator network) and validates the legitimacy of the mobile subscriber. All session information is encrypted.
- All SDKs: parameter dev_name has been renamed to org_name
- All SDKs: carrier_name has been removed as a parameter
||Locates the most optimal edge computing footprint and allows the registered application to find the application backend by leveraging location, application subscription, and service provider agreement. If there are no suitable cloudlet instances available, the client may connect to the application server located in the public cloud.
- All SDKs: Added a performance test to return the most suitable cloudlet based on network latency
- All SDKs: Added “wifi“ as a potential value for carrier_name in order to connect to a clouldet without a cellular connection
- All SDKs: pp_name, app_version, and org_name parameters are no longer used.
||Verifies that the GPS coordinates accurately report the actual location of the device.
||Function that gets a “connection” object (depending on Protocol of specified connection and language) bound to the cellular interface and connected to the application backend.
||Unity: Patched GetHTTPConnection to connect to the correct URL
||Performance Metrics API tracks the average latency of the edge network for your application server’s Application Instance.
||All SDKs: NetTest now has direct testing options if it is desired to run outside FindCloudlet
New Workflow Tutorial added using GitHub Actions to deploy Docker applications to the MobiledgeX Edge-Cloud Console.
There are no known issues documented at this time.