25 ratings
  • 1
  • 2
  • 3
  • 4
  • 5
5 star 7
4 star 4
3 star 3
2 star 0
1 star 11
Compatible with
  • iOS
  • Android

Salesforce SDK 1.4.4.0

Xamarin Inc.

Integrate Salesforce into your mobile apps.

Salesforce C# SDK for Xamarin

Build native apps around your Salesforce data.

Give your users the mobile experience they expect, and increasingly demand, from their enterprise apps. Take full advantage of the raw performance and rich functionality native to each platform. Meet compliance requirements by leveraging each platform's trusted-computing features, like OS-managed credential stores.

Do it all using C#.

Key Highlights

  • Create, Update, and Delete SObjects.
  • Run queries written in SOQL.
  • Full-text searching via SOSL.
  • Use the same C# API for iOS and Android.
  • Leverage async/await for keeping your UI responsive, and your code simple.
  • Simple, compact API.
  • Easily create your own strongly-typed domain model classes.

Dive In

// Creates our connection to salesforce.
var client = new SalesforceClient (clientId, clientSecret, redirectUrl);

// Get authenticated users from the local keystore
var users = client.LoadUsers ();

if (!users.Any ())
{
    client.AuthenticationComplete += (sender, e) => OnAuthenticationCompleted (e);

    // Starts the Salesforce login process.
    var loginUI = client.GetLoginInterface (); 
    DisplayThe(loginUI);
} 
else 
{
    // We're ready to fetch some data!
    // Let's grab some sales accounts to display.
    IEnumerable<SObject> results = 
        await client.ReadAsync ("SELECT Name, AccountNumber FROM Account");

    DoSomethingAmazingWith(results);
}

Release Notes

  • 1.4.4.0 ** Update **
  1. iOS9 update
  2. AuthPath and TokenPath as properties (settable) in order to enable sandboxed tests
  3. UnitTests Updated

** Bugfixes **

  1. Classic Sample builds with MSBuild (workaround for XCode 7 problems)
  2. iOS 9 ATS App Transport Security workaround in info.plist in order to disable TLS 1.2 only
  • 1.4.3.4 ** Bugfixes **
  1. AuthenticationComplete and ForceUserReauthorization
  2. Refresh token bug fix

1.4.3.3
Additions

  • Xamarin.iOS Unified support updated

1.4.3.2
Additions

  • Added suppport for Xamarin.iOS Unified

1.4.x
Additions

  • Added Changes and ChangesAsync for easy retrieval of object change info, which was introduced in v29 of the API.

  • Supports "logout" scenario by calling Client.CurrentUser.RequiresReauthentication = true;.

1.3
Additions

  • Added Describe and DescribeAsync for easy retrieval of object metadata.

Enhancements

  • PlatformStrings.CredentialStoreServiceName is now configurable.

Breaking Changes

  • Search and SearchAsync now return IEnumerable<SearchResult>.
  • PlatformStrings.Salesforce was renamed to PlatformStrings.CredentialStoreServiceName.

Brings assembly version up to 0.9.5003.24683.

1.2
Enhancements

  • Allows Update of non-string datatypes, such as DateTime.
  • Updated the iOS sample to demonstrate mapping the REST API's datetime to System.DateTime.

Additions

  • Now throwing two new exceptions: InvalidClientIdException and JsonParseException.

Brings the assembly version up to 0.9.4987.26579.

1.1
Additions

  • Added Search and SearchAsync for easy SOSL queries.

Breaking Changes

  • Renamed SOQL overloads of Read and ReadAsync to Query and QueryAsync.
  • Renamed extension method parameter @object to sobject to make it easier to use named-parameter syntax.

Brings assembly version up to 0.9.4975.19187.

Write a Review

13 reviews

Anand Badiger rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

Do we have Salesforce SDK which will support SmartStore, SmartSync framework for Xamarin.Forms(Offline Features)?

Posted on: November 15 / Version: 1.4.4.0
Kelly Carroll rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

Hey So I was having an issue login into sandbox orgs and I figured out a work around

set SalesforceClient.AuthPath = "https://test.salesforce.com/services/oauth2/authorize"; SalesforceClient.TokenPath = "https://test.salesforce.com/services/oauth2/token";

to Remove the "The Url can't be shown " error Edit the Info.plist and add

CFBundleURLName com.sample.salesforce CFBundleURLSchemes com.sample.salesforce where the strings "com.sample.salesforce" = your callback Url before the ://

NOTE: The Callback URI needs to be all lower case!!!!!!!

Posted on: October 13 / Version: 1.4.4.0
Nagesh Degil rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

How to handle certificate pinning in in xamarin and salesforce integration project?

We are using Xamarin forms in PCL and for authentication purpose we have integrated Salesforce SDK. AndI am facing certificate pinning issue in security scan report. This is due to saleforce integration ,as removing saleforce integrationpart from code it doesn't show pinning issue in security scan. My identification is validating saleforce URL in xamarin end gives this issue. Pinning is implemented in xamarin mobile end code for validating saleforce sdk. TLS1.2 security is enabled in xamarin mobile(mobile code) and Salesfoce end(Salesforce sdk code). I have checked all the possible scenarios/case using public key and certificate pinning still secuity scan shows "**Lack of Certificate Pinning**" and "**use of insecure MixedContentMode**". Please help to resolve this issue. Certificate pinning issue found in security scan report using IBM Blumix. Whether TLS1.2 is causing any problem or what.

If you like, you can read more about the Certificate and Public key pinning in Xamarin at the following link: https://thomasbandt.com/certificate-and-public-key-pinning-with-xamarin

Posted on: June 1 / Version: 1.4.4.0
Kris Woods

Where is the AuthPath property set? I need to test in a sandbox.

Posted on: February 23 / Version: 1.4.4.0
Dinesh Wickramasinghe rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

below line generates error :

var results = await Client.QueryAsync("SELECT Id, Name, AccountNumber, Phone, Website, Industry FROM Account");

The remote server returned an error: (400) Bad Request.


Updating my review : I tested the same application on another developer org that I recently created and it is working fine. Need to investigate why it didn't work on the previous Org.

Posted on: February 14 / Version: 1.4.4.0
Tejas Lodha rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

Problem

Authentication Error: The remote server returned an error: (400) Bad Request need help....

Posted on: January 18 / Version: 1.4.4.0
raghavender y rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

How to use Salesforce SDK in Xamarin.Forms.

Posted on: April 11, 2016 / Version: 1.4.3.4
Rafael Veronezi rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

Can't make the login work fine. It work only for the first time, then got tons of ridiculous errors:

  • Authentication Error: The remote server returned an error: (400) Bad Request
  • Authentication Error: The URL can't be shown
  • Authentication Error: The operation couldn't be completed. (NSURLErrorDomain error -999)

You try to login, and those alerts starts to pop crazily! Can't find the issue because the username/password is correct, that is to true that if I try to put a wrong password I got the usual "username/password" invalid error on the screen, not those popup mess.

Doesn't matter if it is iOS 9 or 8, or if ATS is disabled (which is a stupid requirement). It's a really impossible to use this component.

Posted on: October 23, 2015 / Version: 1.4.4.0
Reynald Ocampo

This is disappointing! I have been working for hours and still unable to make it work!

Posted on: March 21, 2015 / Version: 1.4.3.4
Angus Johnston rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

ditto to the last comment. disappointing from such a large and apparently mobile focused organisation like salesforce.

Posted on: January 27, 2015 / Version: 1.4.3.4
Gregory Fein rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

The demo code doesn't work. There are JSON fault issues in the interpreter. Can't use our own login mechanism and forced to use the embedded view.

Just implement the restful services by hand. This library is a mess.

Posted on: October 10, 2014 / Version: 1.4.3.1
Søren Krabbe rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

I might be missing something here, but the login URLs seem to be hardcoded to login.salesforce.com in the component, making it hard to use the component against Salesforce Communities or Salesforce Sandboxes?

Posted on: October 5, 2014 / Version: 1.4.3.1
Pooran Prasad Rajanna rates this with
  • 1
  • 2
  • 3
  • 4
  • 5

Please do select following permissions when creating connected app on Salesforce

  • Access and manage your data (api)

  • Perform requests on your behalf at any time (refresh_token)

Full access sometimes does not work.

Posted on: February 3, 2014 / Version: 1.4.3.1