1

I'm currently trying some techniques for writing Android programs with C#. I found MvvmCross that is really nice for an old WPF programmer. Sadly, the free Xamarin version does not allow the use of MvvmCross, and licences are far too expensive for playing around.

Now i stumbles across dot42, but could not manage to load MvvmCross into a dot42 project via nuget. I get

Could not install package 'MvvmCross.PortableSupport 3.1.1'. You are trying to install this package into a project that targets 'Dot42,Version=v2.3.3', but the package does not contain any assembly references or content files that are compatible with that framework.

so I guess, Dot42 isn't supported by MvvmCross. Is it possible to use MvvmCross with dot42?

okrumnow
  • 2,346
  • 23
  • 39
  • Any particular reason you want to write using C#? – Squonk Jun 07 '14 at 17:57
  • Sure, i know it, i like it, it's imo superior to java, eg. LINQ, extension methods. But that really isn't part of the question, isn't it? – okrumnow Jun 07 '14 at 18:55
  • No, it's not part of the question which is why I asked (out of curiosity) in a comment. I programmed with C# for 5 years before ever doing anything with Java and I only started with Java because I wanted to program for Android. My current app uses a back-end Windows Service (written in C#) but I use Java for the actual app. I've yet to find anything I need to do at the app end which is overly complex when implementing it using Java. Just my personal preference. – Squonk Jun 07 '14 at 19:21
  • @Squonk I believe that Java is the preferred language for Android development despite C# being superior in terms of language features. C# comes in when you have existing C# code that you wish to reuse. – Frank Rem Jun 08 '14 at 20:04
  • @Frank : As I said in my comment, I'm a C# programmer but use Java to work with Android - I don't deny there are things which can be done more easily with C# *BUT* that depends on if you need to do those things. Defining 'superiority' of a language is (to an extent) like saying someone is the best rock guitarist - subjective IMO. To me Java is better for most Android development as the majority of Android APIs I need to deal with are written in Java and it means I'm closer to the platform. The fact Android is open source means I can take any of the Java source and adapt it easily. – Squonk Jun 08 '14 at 21:17

1 Answers1

1

You won't currently be able to easily use nuget with dot42 - nuget hasn't yet added any extension for them.

Also, you won't be able to use MonoDroid-targetted assemblies for dot42 - those assemblies are built against Xamarin's runtime - not dot42.

However... if anyone wanted to get MvvmCross working against dot42, then I believe this should be possible - as dot42 supports quiet a good .Net functionality set, including PCLs. To do so would require editing the source code, cloning the MonoDroid projects and then changing the code that targets Xamarin/MonoDroid runtime objects to instead target the dot42 equivalents. I'd personally love to see this done, but haven't had time to work on it myself.

Stuart
  • 66,722
  • 7
  • 114
  • 165
  • Ouch, sounds like a lot more effort as i thought :( I will contact you via your site, perhaps you have some more tips for me, ok? – okrumnow Jun 08 '14 at 18:41
  • For completeness sake: we have released the supported .NET API under Apache 2.0. https://github.com/dot42/api – Frank Rem Jun 08 '14 at 19:51