📜 ⬆️ ⬇️

Pocket Lists. Checklist for iPhone



At the beginning of this year, I decided to make a small iPhone application for going to the store and collecting things for the trip — one in which you could create several to-do lists and work together via Bluetooth (it would be convenient to go shopping with my wife ). I wanted to make the application free as an exercise before another, larger-scale iPhone application, which I was planning to do then.

However, having tried several dozens of checklist applications from the App Store, I realized that it was pointless and stupid to clutter up the App Store with another exercise exercise. Almost all the applications I tried were painfully difficult to use. A lot of hack and ridiculous crafts. It feels like they are all made as an exercise. Standing applications can be counted on the fingers.
')
So, I decided that you do not need to make a small application, but you need to change priorities and launch as good an application as I can. To someday become the App of the Week and compete for various awards up to the Apple Design Award. The task is clear, but its implementation - the choice of the desired functionality, design, the desire for perfectionism - was painful.

Albeit not in two months, as I originally wanted, but in ten, this is how the application for organizing the affairs of Pocket Lists came about, and I would like to introduce it to the habrasoobshchestvo.









Yes, there are an incredible amount of such applications, and we have chosen our bike, but I think that it’s not all in vain. If I myself enjoy using the application, it will be useful to others. A little about the application and development process.

Functional

In addition to all the obvious (cases, lists, reminders, hierarchy, repetition, etc.), we made some unusual features for Tudu applications that are interesting from the technical side:

OCR. Create checklists from photos



Perhaps someone will consider this function superfluous in such an application, but in my opinion it is very convenient to take a picture of the list of documents for an international passport in the passport office and immediately create a list from it.

Implemented on the basis of the free Tesseract OCR engine. Adaptive binarization is done using OpenCV. Tesseract pleasantly surprised me. On the iPhone 4, the recognition quality is pretty good, turned out to be even better than originally expected ( example ).

Teamwork over tasks via Wi-Fi / Bluetooth

It works on the basis of the Apple Gamekit game engine. Repeatedly tested in the field when going to the "Crossroads" for shopping. The connection is broken, if you move away from each other about thirty meters, but if you are nearby, then everything works stably.

Development

The fact that we will not confine ourselves to iPhone was immediately clear, therefore the application was written not in pure Objective-C, but in the scripting language Lua . Let's see how this will facilitate the release of a version for other platforms. While trying to compile only for iOS.

The application is developed by a team of two people: designer and task designer (s) and developer of ipv6 . The total development time before publishing to App Store was 10 months.

Most of all difficulties arose, perhaps, with synchronization with external services (Google Tasks, Toodledo, Calendar) and the difficulties arising from them: processing any “exotic” cases of simultaneous synchronization, memory leaks, time zones, etc.

App Store Approval

It took 9 days . The application hung in Waiting For Review status for 8 days, then after one hour of checking it was refused to be placed, motivating the refusal by the fact that the application manifest states that it uses file sharing through iTunes (UIFileSharingEnabled), but is not used in the application. In fact, it was used, just a team of verifiers did not find this function. The answer is in the Resolution Center, another day - and the app in App Store.

Future plans

First, we plan to introduce some more interesting features into the iPhone version, and then release sync via the cloud, versions for iPad, Android, Mac and for the web. In a nutshell, do not describe, so on this occasion we have prepared just such a map of development:



Promotional codes

APW9A66YKL7J
RFYEJNYK6NEE
6LEPTPRMYY6R
EP3TNRNLTRH7
6XAR7LEPRRL6
XR3TJXNMYM7R
P9PRT3Y9Y6L9
HJWN9PNKNJXE
3MHPKXR9TXF4
3FNFJ9PWF47W

Unfortunately, there are no more promotional codes.

If you missed something interesting from the application development description, or if you have any questions, ask in the comments. Thanks for attention.

Application site: http://www.pocketlistsapp.ru
In App Store: http://itunes.apple.com/ru/app/pocket-lists/id482537116?ls=1&mt=8

Source: https://habr.com/ru/post/134204/


All Articles