I’m faced with image manipulation requirements for a mobile app I wish to develop that I could quite easily (or ‘easier’, at least) implement in C# or javascript, as it’s what I’m most familiar with.
I’m not one to shy away from learning new things, but would it not be easier to opt for this approach and get other platforms to ‘call on’ this functionality with a service oriented structure for the sake of addressing as many mobile platforms as possible without reinventing the wheel for each native platform?
My hesitation is that trips to a server to manipulate images would mean a transfer of byte streams to and from, a lot.
A second question, is this the kind of problem companies like PhoneGap aim to solve? Could I do all this in JS and compile and build it with PhoneGap? Or is, in people’s experience, this not a feasible approach either?
Thanks very much. I appreciate this site isn’t for subjective, opinion-based topics but I’m being specific in the fact that I want to handle potentially larger pieces of data and manipulate them, and so am asking for the advised way of structuring this in order to release it for as many platforms as possible.
3
If it’s going to happen frequently on the application itself then you want to use native code. Yes, PhoneGap and Xamarin style products aim to allow you to write cross-platform mobile applications easily…but they are not ‘lightweight’ to add to an existing entirely native codebase. You can explore Xamarin – it would likely be a better fit than PhoneGap.
If that doesn’t work for your project then I’d actually suggest you write your solution in C# or JavaScript and have one of the native developers assist you in porting that to Objective-C and Java.
If you’re going to be making a lot of round-trips you should not do this server-side – because it will destroy you on data and battery usage from the mobile phone. If it was something cache-able my opinion would change.