Add your SDK
Home

Apps, SDKs and Everything in Between

Enjoy the best mobile SDKs news, tips & tricks, sent to you by mail

NSLog or os_log: How to Log for Multiple iOS Versions?

February 27, 2017 3:53 PM

Our QA guy informed me one day that he doesn’t see our log messages when testing on an iOS 10 device.

“Good morning Siri darling, ” I clicked the round icon on the top right edge of my screen. “I don’t see my NSLog messages, please advise…”

“You should switch to os_log API”, she arrogantly replied. “And please stop asking me how much is 36 times purple, which bear is best or can Chuck Norris beat Thor in a fistfight”.

Thank you Siri, I’ll see what I can do.

Basically, a quick look around our code revealed that our NSLog calls are no longer displayed in the console application. Now, we write our code as a library. This means that our log messages within the app, the ones our QA looks for when testing, were part of a dylib compiled in release. And under those circumstances, NSLog doesn’t work starting with iOS 10.0. What does work? Well, according to Siri, a new API, the os_log API, should do the trick.

What is os_log API, you ask? Well, officially it’s called the “Unified Logging System.” Its function is described as “centralizing the storage of log data in memory and in a data store on disk.”

And so we were faced with quite the conundrum. The new os_log API is the way to go, Siri said so herself, but it’s only available starting with iOS 10.0. We had no choice – we had to use the new API when available, but still use NSLog for the old versions.

How were we to do that?

Continue Reading

Hello, Kotlin! Converting an Android Project – Part 2

January 24, 2017 10:37 AM

I was trying to convert an Android project to Kotlin in Android Studio via the Kotlin plugin. If you haven’t read part one (you can always do it now), then I’ll briefly tell you that it’s up to you to choose how many classes to convert. I chose them all. The conversion caused numerous compilation errors and practically swayed me to convert one/two classes at a time. Even though solving compilation errors was a great way to learn, I still had an ambition – convert my MVP example project from Java to Kotlin code.

Therefore, I decided to attack it from another angle. My second approach was less messy – one or two compilation errors per conversion, albeit it took me a couple of hours to get everything working.

In the following post I will cover:

  • Adapter’s getView() runtime error, caused by the conversion
  • Kotlin pros/cons for Android developers
  • Verbosity comparison of Java vs Kotlin

TL;DR Conversion might cause errors but Kotlin will reduce NullPointerExceptions, and minify your code into a much more readable version.

Continue Reading

Hello, Kotlin! How to Convert an Android Project – Part 1

January 17, 2017 5:13 PM

I’ve been hearing about Kotlin everywhere. It’s the new big thing in the Android world. So big that Gradle themselves are talking about incorporating it.

So I set out on a journey to see what the hype is all about.

What is Kotlin? Well, simply put it’s a statically-typed language from the house of JetBrains that compiles to Java’s bytecode and therefore can be run using a JVM. It’s got lots of interesting features and full compatibility with Java.

The following post is not a conventional Hello World tutorial on Kotlin, rather it’s an experiment with a big bold “don’t try this at home” warning. It’s risky and code might break because I’m going to convert a whole project of a mid-level complexity (30 classes) at the click of a button, or rather 4 buttons (ctrl + alt + shift + k). If that won’t work out (spoiler alert: it didn’t), I’ll switch to plan B and convert my project one class at a time.  I’ve decided to see if they’re making good on their promise, as well as teaching myself a new programming language upside down. From big concepts to the finer details.

Because I’m going to mess with lots of code and it might not end up pretty I chose to convert one of Android’s google-samples projects which I forked. I chose the todo-mvp branch: https://github.com/SerjSmor/android-architecture. If you are unfamiliar with different styles of Android architecture (MVC, MVP, MVW) or their implications I highly recommend going over them anyway if you haven’t yet.

TL;DR: we’re converting a TODO List app.

Environment:

IDE = Android Studio 2.1.2. There’s a plugin for Eclipse too.

Kotlin version = 1.0.4

The before photo (before tinkering):

Hello, Kotlin! How to Convert an Android Project – Part 1

Continue Reading

The Hottest Mobile App Tools (SDKs) of Q4 2016

January 3, 2017 12:41 PM

It wasn’t too long ago that app developers didn’t know what’s what in the mobile SDKs world. Who’s stronger than whom and who’s fighting to keep their head above water. All that has changed. Last May, we released our first ever Android SDKs Trend Report, disclosing who’s hot and who’s not as we listed the top players overall, in different categories, geos and whatnot.

Now we’ve published our second report, based on an analysis of over 100,000 free Android apps, comprised of apps featured in Google Play’s top charts. These apps implement hundreds of SDKs, including all top industry players.

The report looks at October 2016 data, analyzes the SDKs that are active internationally, and are integrated in the apps we’ve looked at.  The data is then compared with the data presented in the April 2016 report to reveal the leading trends.

Main Highlights

Please note that we are sharing here a partial selection of the findings that are presented in the full report.  To access the full report (download is free) click here.

Continue Reading

11 Online Tools Mobile Developers Love Using

January 1, 2017 8:24 AM

Almost everyone I know from the mobile industry have a set of tools they work with and just can’t do without. Mobile app developers are no exception. They love using online or mobile tools that boost their productivity, be it free or paid, especially free…

Marketers, product managers and developers have learned to rely on advanced tools, add-ons, even just handy browser extensions that are nice to have in your everyday work.

So, we have asked a few mobile app developers to share which tools they love using the most and would happily recommend to colleagues. And to complete the picture, we have also posted this question in various professional app developers’ forums and groups. We told them they could list coding or general tools, project management tools, SaaS solutions or anything they find useful. We placed no restrictions!

On the contrary, we wanted app developers to feel free to list every tool that they love using, as long as it is related to their day-to-day work.

Many developers have happily shared their insights, disclosing which tools make their lives easier.

The result is presented below. It’s a free-style list, with no specific order or preferences. It lists a variety of tools from different areas. Some are tailored specifically for developers, while others serve the entire business community; some are offered by huge companies, while others were built by indie developers.

Hope you will find this interesting and maybe find some new tools for your own benefit!

Continue Reading

The App Store Policy That Might Get You Rejected in 2017

December 21, 2016 9:48 AM

Update: Apple just announced that it is postponing the ATS compliance deadline. A new deadline is unknown at this time.


During WWDC 2016, in the What’s new in Security session, Apple announced it will start enforcing App Transport Security in the App Store by the end of 2016. Our research indicates that most apps are still using keys that disable this policy and are not ready for this new regulation.

App Transport security (ATS) was introduced during WWDC 2015: “If you link your app against OS X El Capitan or iOS 9, by default it won’t be able to make any unprotected HTTP connections; they will simply fail…”

Now, with 2017 only a few days away, apps face harsher scrutiny by Apple. As if it wasn’t already tough enough getting through the review process unscathed, app publishers are now checked at the door for unsecure connections. Any irregularity and you won’t be let into the store before doing some proper explaining.

Continue Reading

16 Industry Events for Mobile App Developers You Should Know Of

November 15, 2016 5:15 PM

As an app developer you must have heard how critical it is to attend industry events. Some talk about leveraging these events from a networking and reputational standpoint, others about fueling your BizDev efforts and some are in it just to learn and stay up to date with industry news, techniques and emerging tools.

Plus industry events break our daily routine which is always fun!

However, not everyone’s so positive about these events. Some complain about them being a waste of money, unfocused, not bringing any real news and lacking relevant colleagues to mingle with. On top of this, events can be viewed as not adding quality leads and as mainly serving to the financial interests of the event producers.

I say it’s all a matter of setting the right expectations and doing your research before attending, speaking or presenting at any given event.

Personally, I like to stay updated with all the relevant events in my industry. Of course, I don’t attend all the events but I base my decision to attend/not attend on key parameters and understanding the value I would gain from that specific event.

I’ve gathered a list of some mobile app / mobile dev / mobile games events (organized chronologically by date) that are focused on developers. Although some further mini research might be needed before you make a decision, the list below can get you off to a nice start.

In the mobile industry, events cover a wide array of topics including mobile innovation, full stack development, marketing solutions, game dev and more. Some events are quite popular among mobile app pros. Please drop us a note to: contact@safedk.com if we left any important events behind!

Continue Reading

Why Developers Must Analyze their Apps’ Store Reviews & How It’s Done

October 31, 2016 4:35 PM

During the course of my career, I’ve worked with app founders, app developers, product teams and marketers, and many times I have turned to store reviews to find answers. Eventually, I developed a method.

I’m assuming you’ve been in the industry for quite a while by now. I know it’s pretty hard to surprise you with tricks that you haven’t heard of or tried before. But let me try nonetheless.

Apparently, professionals in our industry follow a method, a way to qualitatively analyze their users’ inner thoughts. Using that they fine-tune their product efforts around what is specifically required in order to reach the results they are after.

First thing’s first: Let’s agree that you must find out what doesn’t work in your app, what your users don’t like, what they are struggling with and the issues many of them experience.  You can never guess what your users think of your app. You can never win this business unless you collect feedback methodically.


via GIPHY
Now, let’s talk about ‘the how’.

Continue Reading

Two Years of Multidexing: Is the 65K Limit Still a Big Deal?

October 20, 2016 8:42 AM

I still remember when I saw my first multidex app. It was almost two years ago and ho so rare. It was an almost religious experience – seeing something you didn’t think could exist with your very own eyes. And yet today I’m surprised when I stumble upon an app and it only has one dex file. Seriously, it’s like finding an oasis in the Sahara. A sight for sore eyes.

Which is why I was so surprised when our saleswoman told me about a meeting she had, where the developers in question specifically asked about it. They were determined to stay single dex no matter what.

You see, silly me, I thought the 65k limit was like one of those things you read about in history books or see in old movies. But it turns out I was living in a bubble. But hey, can you really blame me? Even Android’s own new compiler – Jack – refers to it in both code and documentation as “legacy”.

Which leads me to really think – is the 65K limit in Android still a big deal?

Continue Reading

All You Need to Know About Mobile App Attribution & Analytics SDKs

September 28, 2016 12:44 PM

We’ve recently released a new Android Mobile SDKs Data Report, revealing the top SDK players in each category, as well as the most popular SDKs categories.

One such popular category is of Attribution Analytics SDKs that allow apps to track the source of their app’s installation. Most app publishers that acquire users through paid installs and engagement campaigns have implemented at least one premium Attribution Analytics SDK, which is probably why this category is among the most popular. Our report discloses which Attribution SDKs are the most popular (depicted below), as well as a geographical drill-down (which SDKs are being used by different developers around the world).

Soon we will publish a new report and will show the trends of Attribution SDKs in the past few months.

SafeDK Data Report: Attribution Category

Because this is such a popular and important category, we’ve decided to dive deeper and share some ways to optimize their cost effectiveness.

Take for example the SDK Adjust. It has recently sent an email to its entire customer base, updating them on a significant price change. And the industry responded accordingly. Many developers started looking for alternative attribution tools or ways to operate their paid media activities without implementing paid attribution tools.

Many of our colleagues started thinking and asking questions. As did we.

We have decided to write this post in an effort to help app publishers with their queries and provide some answers to hot questions. Why use attribution SDKs, when are they “just beneficial” and when are they are a must have, how much should you pay, which tools you should choose etc.

Continue Reading