Crash scenario with link detection in UITextView on iOS 9

Link detection Crash

In reviewing a crash log for a recently published app, I ran across a scenario where a user could reproducibly force a crash by using a long press on a link in a UITextView.

  • Occurs on iOS 9.
  • UITextView on a presented view controller.
  • Two consecutive long presses on a detected link in the UITextView.

On the first long press, I see the warning:

Continue reading

Sectioned table example with videos and articles

Sectioned Tables

I wanted to write-up the result of a code challenge that I completed a while ago.   I was asked to create a tabbed iOS app with sectioned tables, pulling video thumbnails and article titles into different sections.    Clicking on a thumbnail or article title would display the corresponding video or article in a separate view.    Adding to the challenge, I was asked to provide bookmarking capability for the videos and articles.  The bookmarked content would be visible in a second tab.

SectionedTable

Challenge Details and GitHub app

The full details of the challenge and resulting project can be found at:

Continue reading

Image manipulation using view transitions and transforms

Image Manipulation

I recently took on a code challenge that was delivered in an interesting fashion.   I was given a video that showed the manipulation of two images and was asked to create an iOS app that had the same behavior as the video.

ImageTransform

 

Requirements

After watching the video (many times), I extracted the following requirements for my app:

Continue reading

Exploring the Contactually API

Contactually Overview

As a software professional I am interested in maintaining good relationships with my connections.    While I never thought to use a CRM for such a purpose, that just might change after coming across Contactually.

contactually-logo

 

Contactually allows you to collect and merge contact information from various sources including e-mail, calendars and social networks (LinkedIn, Facebook, Twitter).   Contactually can help you with automatic reminders to follow-up with your connections, but that is just a small part of what the platform offers.  Some of the key features are centered around Buckets, Templates, Programs and Pipelines.

Continue reading

Exporting a video in iOS to reduce size and ensure maximum client compatibility

Movies that lay on their side

Have you ever taken a Portrait oriented movie with your iPhone or iPad and sent it to your friends who were using Windows?   I can understand their frustration when the video I so carefully recorded causes them to bend their neck to the side:

rotated_portrait

So what’s going on here?  The problem is that the .MOV file that I send them has a 90 degree rotation set as the preferred transform.   Some Windows clients (such as Windows Media Player, VLC media player, etc) do not take this transform into consideration when presenting the video.

The VideoExport Swift Project

I wanted to create a project that would allow me to address the issue with rotations and other compatibility concerns.

I published my results to scottcarter/VideoExport on Github.

Continue reading