ShareKit is a popular iOS framework, which can easily enable your app to share content on various social networks, such as Twitter, Facebook, LinkedIn, … etc. Some time ago I implemented in our app, and realised, that it is far from perfect. Now things have changed, ShareKit is more matured and a lot of people are submitting pull requests – ShareKit is much more usable and stable than it was few months ago. I am proud to announce, that it has been refactored to be used as Xcode subproject, using a static library. In case you have never heard about Xcode subproject, you can learn about it here, or here.

After you download ShareKit files using git, and add it to your Xcode project as subproject you gain the ability to seamlessly upgrade. Basically you only pull changes from shareKit”s origin repo and run your app. Everything is running, even if we added new sharers, or added/removed files. Prior to this change you had to manually add new files to your project and many of you were probably not aware of new sharers added to ShareKit. I hope this change will make using and updating ShareKit much, much easier.

, Студия Topodin, Создание сайта для турфирмы Сегодня Интернет является одним из самых простых и популярных способов прямого взаимодействия фирмы и клиента

http://pomodeodet.ru/kivi-zaym-bistro-1.php

Sometimes you face a little more advanced search&replace need in Xcode. I had to solve this puzzle – original string, can be placed anywhere in multiple source files:

SHKLocalizedString(@"<whatever>")

where <whatever> can be any text. Needed to change to:

SHKLocalizedString(@"<whatever>", nil)

To find the strings using regular expressions enter

SHKLocalizedString\(\@".[^\)]*

to the search field. OK, but how to tell Xcode to use the result in the replace field? Regular expressions offer some help: back references and capture groups. First you need to create capture group (think of it as a variable), so let”s slightly change the search regex:

SHKLocalizedString\(\@”(.[^\)]*)

The red parentheses create the group #1 for back reference. Now to the replace field enter

SHKLocalizedString(@"\1, nil

where \1 is back reference to the capture group #1.

 

side note: the search regular expression supposes, that in <whatever> text there is no “)”.

Выход в ТОП 10 за 2-3 месяца, Студия Topodin, …

быстро средства до зарплаты

AppSoundEngine  is a very fast low latency framework built upon System Sound Services for easy implementation of user interface sound effects within your iOS application. It is basically a objective-c wrapper around SystemSoundID (representing system sound object) and System Sound Services raw C functions, most importantly sound completion.

What is its history and what kinds of problems does it solve?

During development of Countdown Me I had to solve some problems with sound effects.

First of all – latency. Latency is the delay between pressing the button and actually hearing the sound. Acceptable latency is <10 ms. If you happen to squeeze it like this, the user has a “hardware” feeling of immediacy. SoContinue reading