Support for Android and iOS projects

Oct 18, 2013 at 12:25 AM
Hey guys,
Just wanted to say great work! before I ask you for something.

Is it possible that you can make the Portable.Droid and maybe Portable.Touch versions?
You see, I'm using your libraries on a PCL project that serves as a core for WP, Win8, Android and iOS versions.

I haven't tested the iOS version yet, but on the Android project, the thing collapses at the moment of using something like this:
"HMACSHA256 hmacSha256 = new HMACSHA256(unicodeKey);"

Cause it tells me that I should have the Portable.* dll on my project, depending on the platform i'm aiming. In this case, i'm aiming at a Mono for Android project.
Mar 25, 2014 at 7:17 PM
I was looking also for the Droid and iOS versions (with Xamarin), and, since I need the HttpClient, I also need to select the WP and Win8 versions. It looks like we are on the same boat.

I downloaded this solution and opened with VS2013 and VS2012 Ultimate Edition, both under a Win7x64 Enterprise Edition machine, and I couldn't even load the entire solution; I could load the solution, but some projects were not available:
  • Both "Portable.Store" and "Portable.Store.UnitTests" project says "Windows 8.1 required" on the Solution Explorer
  • "Portable.Phone" project says "incompatible" on the Solution Explorer
All other projects load fine, but I can't use them neither on Droid or iOS.

How did the solution loaded on your machine? Could you load it entirely?

Have you found a recommended encryption library that works for Droid and iOS?
Mar 26, 2014 at 7:16 PM
Hi Dannie,
So far, nothing. Still looking for a chance to get this to work
Apr 7, 2014 at 6:28 PM
I found a Nuget, package called "Bouncy Castle PCL" published by Oren Novotny, https://github.com/onovotny/BouncyCastle-PCL

That one is a ported version of the Bouncy Castle C# library. I compared file by file between the full .Net version and PCL, and both are 99.99% the same. There were only a dozen of files changed, and mostly were adaptions to make it more "MS style compliant" (for example, some code now encloses IDisposable items through the "using(...){}" statement, and some other properties use now .Net libraries instead of custom ones). I could say that the PCL version was modified by a deep-C# developer that knows better the language and best-practices, therefore it's a BETTER version than the original BC.

With this, you can use any of those encryption algorithms from Android and iOS.