Skip to main content

Posts

Showing posts with the label iOS

The Microsoft Azure App

While getting up to date with all the great announcements at Build 2017 I noticed a small but interesting fact. It turns out that Microsoft has a mobile app (for iOS and Android ) that allows you to manage Azure from your mobile device.   From the documentation: The Microsoft Azure app helps you keep track of your resources while on-the-go: - Stay connected to the cloud and check status and critical metrics anytime, anywhere - Stay informed with notifications and alerts about important health issues - Stay in control of your resources and take corrective actions, like starting and stopping VMs and web apps Great! Now can I spin up a new VM while being stuck in traffic

Creating a release pipeline for your mobile applications

I’m currently working on a release pipeline for our mobile applications, making it easy to build, deploy and test the mobile solutions we are creating on top of the Xamarin platform. Everyone who ever tried to publish a mobile application to a store(Apple AppStore, Google Play Store, Microsoft App Store,…) knows that it is cumbersome process requiring things like certificates, keystores, a lot of configuration work and so on… To optimize the process we went fully automated by using a combination of the following tools: Visual Studio Team Services Hosted Build Service MacInCloud Xamarin Test Cloud HockeyApp A great help during our journey was the DevOps blog series by Richard Woollcott: Xamarin DevOps VSTS – Getting Started: http://www.thexamarinjournal.com/xamarin-dev-ops-with-vsts-getting-started/ Xamarin DevOps with VSTS - Setup iOS CI Builds With MacinCloud: http://www.thexamarinjournal.com/xamarin-dev-ops-with-vsts-setup-ios-ci-builds-with-macinc...

Xamarin.Forms: Xamarin-Forms-Labs

The amount of controls for Xamarin.Forms is rather limited. Luckily with the help of the community and control vendors like Telerik, Syncfusion,etc… this is changing. One of the open source initiatives is Xamarin-Forms-Labs : “Xamarin Forms Labs is a open source project that aims to provide a powerful and cross platform set of controls and helpers tailored to work with Xamarin Forms” It offers a wide range of controls, services, helpers and plugins. A must have for every Xamarin.Forms developer… Available controls AutoComplete (beta) Calendar Control (beta) Checkbox (beta) DynamicListView (beta) ExtendedContentView (beta) ExtendedEntry (beta) ExtendedLabel (beta) ExtendedScrollView (IOS beta) ExtendedTabbedPage ExtendedTextCell (beta) ExtendedViewCell (beta) HybridWebView (alpha) GridView (IOS beta) ImageButton (beta) RadioButton(beta) RepeaterView (beta) SegmentedControlView (IOS beta) Web Image (beta...

Xamarin.Forms: No valid iOS code signing keys found in keychain

Yesterday while creating a new Xamarin.Forms application,  it failed to build for iOS with the following error message: No valid iOS code signing keys found in keychain I first thought that there was something wrong with my iOS configuration, but when I tried to create a ‘traditional’ iOS application, it just worked. On the Xamarin forums I found the following solution that worked for me: Open your Xamarin.Forms projects. Unload the iOS project in Visual Studio. Open the csproj file and search for the following element <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' ">     <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> </PropertyGroup> Remove ‘ Entitlements.plist’ from the ‘CodesignEntitlements’ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' "> <CodesignEntitlement...

Xamarin and Caliburn

This news made my week! My favorite cross-platform framework( Xamarin ) and my favorite MVVM framework( Caliburn.Micro ) are finally coming together. The team after Caliburn.Micro announced that they have a working port of Caliburn for Xamarin. Not everything is ported yet, but I expect that some of the platform specific features will be ported as well. A working sample can be found here: nigel-sampson/xamarin-experiements .

Mobile Development Platform Performance Comparison

When choosing a development platform for building Mobile applications, performance is always one of the discussion points pro- or contra a specific technology. A lot of people claim that technology X is faster than technology Y without real numbers to proof their point. I did some tests myself and had mixed experiences using Cordova, Xamarin and Native Mobile development. Last week I noticed this blog post by Kevin Ford: http://magenic.com/Blog/PostId/67/mobile-development-platform-performance . Kevin took the time to create a formal comparison between Native (Objective-C 64 bit and Java) Cordova (Multi-Device Hybrid Apps) using Intel's App Framework for the UI Classic Xamarin (64 bit unified beta for iOS) Xamarin.Forms (64 bit unified beta for iOS with beta version of Xamarin.Forms, note latest version of the unified API in the beta/alpha channels could not be used as it is not supported by Xamarin.Forms) Go check out the full post for all the details, but some things...

Learning Reactive Extensions(RX) by example: ReactiveTrader

You are interested in learning Reactive Extensions( http://rx.codeplex.com/ )? But you don’t know where to start or you don’t see a practical use case? Have a look at the ReactiveTrader application created by the guys from Adaptive. From the site: Reactive Trader is a client-server application demonstrating some of the problems needing to be dealt with when building reactive, or event driven, user interfaces. It was initially built as a demonstration application for a presentation we gave at ReactConf 2014 . What makes this example really nice is the fact that it exists for multiple platforms like HTML5, iOS, WPF,…

DevIntersection 2014 – Cross platform mobile development and MacInCloud

At the moment I’m in Las Vegas attending DevIntersection . During the mobile development workshop I attended, the presenter mentioned MacInCloud , an online service to remote access a Mac in the Cloud. I’m a cross platform mobile developer, why should I care? If you are doing cross-platform development(with for example Xamarin), you’ll need a Mac sooner or later. Apple Licensing Terms doesn’t allow you to design and build your application on non-Apple hardware. So don’t think that creating a Virtual Machine and installing OS X on it, is a feasible solution. Now you would think that the only option left is to buy a Mac, but Macs are expensive. Thanks to MacInCloud , you can use a Mac and only pay for the time you are using it.

Building cross-platform mobile apps in Visual Studio

Interested in building cross-platform mobile apps using Visual Studio? Microsoft made this easy thanks to the Multi-Device Hybrid Apps Visual Studio extension . This extension allows you to combine Visual Studio and Apache Cordova to easily build hybrid apps that run on iOS, Android, Windows, and Windows Phone using a single project based on HTML and JavaScript. The extension is available for download here . Remark: Be aware that the extension will download and install some additional dependencies, including Joyent Node.js Git CLI Google Chrome Apache Ant Oracle Java JDK 7 Android SDK SQLLite for Windows Runtime Apple iTunes More information can be found at http://www.visualstudio.com/en-us/explore/cordova-vs.aspx .

PhoneGap/Cordova: Introducing the cross platform WebSQL plugin

Some months ago, I did an attempt to integrate SQLite in a cross platform Android, iOS and Windows Phone PhoneGap application. It was a painful experience to say the least. We encountered a lot of isssues and in the end it was way to slow. Not a good first experience with using a SQL store on a mobile device… So it makes me really happy to see that Microsoft Open Technologies published an open source WebSQL plugin for Apache Cordova and PhoneGap. This plugin allows developers to integrate a persistent SQL-based local storage solution in their Cordova apps using the exact same JavaScript code across Android, iOS, Windows Phone and Windows Store. Under the hood, the plugin is using WebSQL on iOS and Android, and the open source SQLite library on Windows devices. SQLite happens to be easily usable across Windows devices using the SQLitePCL portable Class Library published recently. The plugin can be found on the Apache Cordova plugins registry More information and the officia...

Xamarin.Android: error when calling Azure mobile services

In a mobile application I’m building with  Xamarin Android I connect to an Azure Mobile Services backend. Xamarin made this easy by providing an Azure Mobile Services component. However when I tried to connect to Azure, every call failed with the following error message: “The authentication or decryption has failed.” I was able to fix the problem by switching to a more recent Android version in the emulator.

Xamarin Objective Sharpie: a binding definition generator for third party Objective C libraries

Xamarin iOS allows you to consume a third-party Objective-C library. Before you had to use Xamarin.iOS's Binding Projects to create a C# binding to the native Objective-C libraries. Inside this Binding project you’ll find two files: ApiDefinition.cs and StructsAndEnums.cs. The ApiDefinition.cs is where you will define the API contract, this is the file that describes how the underlying Objective-C API is projected into C#. The StructsAndEnums.cs file is the file where you will enter any definitions that are required by the interfaces and delegates. To bind your library you will have to create C# interfaces and annotate these interfaces with attributes to map the C# interface to the corresponding Objective-C class. Although it’s not too hard to do this, expect a lot of work for a moderate size  Objective-C library. To make this job easier, Xamarin introduced a new tool: Objective Sharpie , a very powerful binding definition generator for third party Objective C libraries ...

BlueStacks: Run all your favorite Android apps on PC and Mac

Are you interested in running all your Android apps on a PC or Mac? Try the BlueStacks App Player . (They even have an optimized version specifically build for Windows 8.)

Xamarin.iOS: solving the “codepage 1252 not supported” exception

When creating an application using Xamarin.iOS (also known as MonoTouch), we stumbled over following exception message when deserializing some data: “codepage 1252 not supported” We solved this by executing the following steps: Go to the Project Settings of your project in Xamarin Studio. Go to the Build Tab and select the iOS Build option. Check the west checkbox in the Internationalization codesets list.

Having a hard time selecting across-platform mobile framework? PropertyCross is here to help you.

Introduction from the website : Developers are now finding themselves having to author applications for a diverse range of mobile platforms (iOS, Android, Windows Phone, …), each of which have their own ‘native’ development languages, tools and environment. There is an ever growing list of cross-platform frameworks that allow you to minimize the cost and effort of developing mobile apps, but which to choose? To help solve this problem PropertyCross presents a non-trivial application, for searching UK property listings, developed using a range of cross-platform technologies and frameworks. Our aim is to provide developers with a practical insight into the strengths and weaknesses of each framework. This project was heavily inspired by TodoMVC , which allows the comparison of JavaScript frameworks. PropertyCross implements the same application over and over again using the following frameworks: Adobe AIR jQTouch jQuery Mobile Native RhoMobile ...

Here's why HTML-based apps don't work

I’m currently working on a cross-platform solution using Xamarin . Today a colleague sent me a link to the following article: Here's why HTML-based apps don't work . In this article Matt Baxter-Reynolds who worked on a number of different projects based on PhoneGap/Apache Cordova shares his experiences. There is one quote(and the conclusion of the article) that I want to share with you: “Go native, try Xamarin . But in terms of hybrid: avoid.” I’m just saying…