Invoking the Swapit App

Swapit has grown a lot over the past months. With our introduction of the Swapit Web Teasers, we actually also introduced an interface to invoke Swapit from any other third party app or from the web. Hence, it has always been possible to invoke Swapit from within your very own app, but we didn’t tell anyone yet.

WHAT CAN YOU DO?

Invoking Swapit means, a developer can integrate a functionality into his app, which allows the app to launch our Swapit app at a specific target. For example, Swapit can be launched in the

  1. Home Screen (i.e. the app’s main list that shows all products nearby)
  2. Item Detail Screen of a specific item
  3. Create Post Screen (so the user can start posting an item right away)

INVOKE THE SWAPIT APP VIA CUSTOM URI SCHEMA

If you know that Swapit is installed on the user’s phone, you can directly invoke the Swapit app by launching an Implicit Intent that directly invokes Swapit.

1) Main Screen: swapit://home

Here is an example for launching the Swapit home screen directly:

Intent i = Intent(Intent.ACTION_VIEW, Uri.parse("swapit://home");
startActivity(i);

2) Post Detail Screen: swapit://item/{id}

{id} … is the Swapit item ID in our Swapit database.

Here is an example for launching an item detail screen in Swapit directly:

Intent i = Intent(Intent.ACTION_VIEW, Uri.parse("swapit://item/5696381570252800");
startActivity(i);

3) Create Post Screen: swapit://post

Here is an example for launching the Swapit post item screen directly:

Intent i = Intent(Intent.ACTION_VIEW, Uri.parse("swapit://post");
startActivity(i);

INVOKE THE SWAPIT APP VIA WEB / HTTP

If you don’t know if the Swapit app is installed on the user’s device, it might make more sense to launch a web URL. If the Swapit app is installed on the user’s phone, the app will be invoked automatically. If Swapit is not yet installed on the user’s phone, the browser will be started and the user will be presented with the appropriate information.

1) Main Screen: http://app.swapit.la/home

If Swapit is not installed, the user will be directed to a website, which shows download instructions for Swapit. Content of the home screen can only be viewed inside the Swapit app.

Here is an example for launching the Swapit home screen:

Intent i = Intent(Intent.ACTION_VIEW, Uri.parse("http://app.swapit.la/home");
startActivity(i);

2) Post Detail Screen: http://items.swapit.la/{id}

If the Swapit is not installed, the user will be directed to the web teaser of the item requested. That web teaser contains some information about the item, but not everything. Download links to install Swapit are also be present on those web teaser pages. If Swapit is installed, starting this intent will automatically invoke Swapit and reveal all details about the item requested.

{id} … is the Swapit item ID in our Swapit database.

Here is an example for launching an item detail screen in Swapit:

Intent i = Intent(Intent.ACTION_VIEW, Uri.parse("http://items.swapit.la/5696381570252800");
startActivity(i);

3) Create Post Screen: http://app.swapit.la/post

If Swapit is not installed, the user will be directed to a website, which shows download instructions for Swapit. New items can only be posted from inside Swapit. Thus, Swapit needs to be installed to use this function.

Here is an example for launching the Swapit post item screen:

Intent i = Intent(Intent.ACTION_VIEW, Uri.parse("http://app.swapit.la/post");
startActivity(i);
Advertisement

Introducing Swapit Web Teasers

As you might know, sellers can now share their posted items right onto their Facebook timeline. Once a potential buyer clicks on the link that was share on Facebook, he or she is sent to the appropriate item inside our swapit app. Now, if the user doesn’t have the app installed, he or she sees a notice to download swapit from the app store. That’s how it was and that’s how it remains.

New is, that users now see a preview teaser of the item they want to view. This allows us to engage better with our users and to draw more potential users through our funnel and into our app. In the end, that actual item can only be purchased through the swapit app. Furthermore, only inside the swapit app, additional information like the item’s location, more pictures and the full description can be viewed. Hence, the viewer is encouraged to actually install swapit and find out more.

This is how the old swapit item page looked like for an item:

2015-09-17_items-swapit-la_old

This is how the new swapit item page looks like for an item:

2015-09-17_items-swapit-la_new

If you want to view that particular backpack item yourself, please go to: http://items.swapit.la/5742923580702720

As you can see, we kept the design very clean and simple. The sole purpose of this page is to create more interest with the potential user and drive him or her to download swapit.

In fact, we are great fans of Instagram who incorporate a similar strategy to offer some parts of their content on the web, while the juicy stuff remains only accessible through the mobile app. We are working towards a better and more optimized user acquisition and on-boarding process. It needs to be dead simple for users to get swapit if they want to give it a try.

Have you tried swapit yet? Get it for free: http://get.swapit.la

Swapit Is Compatible With 95.1% Of All Android Devices

Google just published updated statistics about Android’s platform versions that are running on Android smartphone around the world. Check it out:

Screen Shot 2015-08-10 at 2.10.07 pm

Hence:

swapit runs on 95.1% of all Android devices out there!

When we chose Android as the launch platform for swapit, we knew Android would keep making up the lion’s part of the smartphone market. We also knew that newer and newer Android devices would be coming out and therefore, older Android versions will loose on importance over the time. The Android market is fragmented – by nature – but by focusing on Android 4 and upwards, we were able to leave out quite a number of headaches that come with pre-Android-4 versions. It is still challenging to ensure swapit runs smoothly on these thousands of Android 4 devices out there, but it manageable. With the right team, we are well positioned to bring swapit to the masses.

Haven’t tried swapit yet? Download it today: http://get.swapit.la

After the beta is before the beta

swapit-blog_betaAfter having launched beta 1 on February 4th, 2015 we launched beta 2 on February 17th. While we are still in beta, each new beta brings us one step closer to a first final release of swapit. For the time being, our main motto at each beta launch is:

After the beta is before beta!

Yes, it’s not a unique slogan, but it is one that very much fits our situation. We take each beta at a time. We do have a rough plan in terms of features we’d like to add to our product. However, we very much depend on the feedback of our great beta testers.

If you’re a beta tester, let me say THANK YOU right here. Your feedback is very important for us to plan the right features, show them in right style and prioritize them according to your wishes.

After the beta is before the beta, mainly means that we are continuously working on improving swapit. We are adding new features, improving the usability and user experience and of course, we are removing issues from our previous beta versions. It’s a beta after all – so please expect bugs – and report them.

Recruiting for beta 3

swapit-blog_requestAfter the beta is before the beta, also means for us that after beta 2 has been released to our invite-only beta testers, recruiting starts for our beta 3. As I had mentioned in a previous article, we are planning to add an additional 150 beta testers to our beta 3 which should then launch with at least 210 beta testers in total.

If you want to be one of the 150 new beta testers, REQUEST YOUR INVITE on our website today: http://swapit.la

Swapit can be only as good an app as the community wants it to be. We have all technical capabilities at our disposal that allow us to add all features that make sense for swapit.

Recruiting true beta testers that provide first-hand feedback to us is a hard job. If any of you have ever run a beta test (we at S4BB Limited ran about a dozen), you know how hard it is to get the right beta testers on board. We are now working very hard to get the right beta testers join our beta test. Only when we have added an additional 150 beta testers, we will release beta 3 of swapit. If you want to help us get the right people on board and you know someone who is interested to join, please point them to http://swapit.la to request their invite there.

Thanks a lot for everyone’s help in advance. We do very much appreciate the support you all give us.

Swapit Beta 2 Teaser

I am right now testing the final version of beta 2 before it gets released to our awesome beta tester crowd! Before that, I wanted to share a quick teaser of the new user interface right here on our blog. Have a look at it:

swapit-beta_screenshot_menu_smudged

Please note that the data shown in the screen shot is data from our development server. The content there is not real and the number of users is rather low. Obviously, that’s very different with our official beta which operates on a different database.

If you haven’t joined yet, you can request an invite at http://swapit.la

Note: Currently the beta is only available in Hong Kong for Android devices.

Getting Ready for Beta 2 of Swapit – Call for Beta Testers

After we prepared for our beta 1 of swapit and ran it successfully, we looked at the results of that first beta test and are now getting ready for our beta 2 of swapit.

swapit-blog_betaAccording to the plan we have laid out for our beta test phase, we will launch beta 2 once we have added 50 now beta testers to our list of beta testers. If you are based in Hong Kong, have an Android device and are interested to join, please feel free to:

Sign up for beta 2 at http://swapit.la
by clicking on “REQUEST INVITE” and follow the instructions.
Seats are limited.

Just let us know your name by tweeting us (@swapitla), through Facebook (fb.com/swapitla) or simply contact us.

Please share our call for beta testers to your peers as well. We’d love to get the right people on board for our next beta.

Feedback from Beta 1

We have listened to great feedback we have received from our great beta testers in our beta 1. Thanks a lot everyone for providing great feedback!

We would like to share some insights of the feedback we have actually received through the survey we ran for our first beta test. To keep it simple we purposely chose a quick survey that can be completed within 2 minutes and consisted of 6 questions. One of such questions was:

In terms of priority, which feature is more important to you?

The result matrix for that question looks like:

beta1-survey-q4-results

To interpret the chart correctly, you need to look for the bar with the lowest number which represents the most important feature our beta testers were looking for. Basically, I asked them to rate each feature by importance (1 = very important, 2, 3, 4 = not needed). Hence, the lower the average score of an answer, the higher the importance of that feature.

Conclusion from this survey question: Everyone wants an actual search function, and that’s what you will get. It won’t be available in beta 2 yet, but soon after.

Another question we asked was:

Once swapit is more matured. Are you likely to recommend it to your friends?

The result chart of that is absolutely clear:

beta1-survey-q5-results

Our beta testers love our swapit app and are either likely or even very likely to recommend it to their friends. This is a very strong indicator that we are on the right track – even though this was our first beta of swapit with many more to come.

Project Management Looking Good for Beta 2

As I mentioned in my previous blog post, we are using Asana for project management. We at S4BB Limited are using Asana for several years now because it is free (for small groups) and extremely efficient to use.

The current project schedule for our swapit beta list a couple of beta versions with purposely not all features planned out. We have a general plan in mind, but we are adjusting it as we go depending on our beta tester feedback. So right, we are on track for launching beta 2 soon and our task progress is looking good. Have a look at the overview chart:

asana-task-status

There are still some tasks to complete before we can launch beta 2 of swapit, but we are on track and will complete those within a day or two.

More importantly, we need more beta testers for our beta 2 of swapit. Therefore, we ask all of you who are interested to join, to request your invite on our website: http://swapit.la

Keep in mind that this is still an invite-only beta. So once you have requested your invite, let us know you have signed up and we will see if we can fit you into this new beta of swapit.

Stay tuned for more updates on swapit. We are excited about our next beta and hope to get great feedback from all of you!

Swapit Beta 1 – what we learned after one day

swapit-blog_beta-1Yesterday, we launched our very first beta of swapit. A couple of days ago, I was talking about how we prepared for our private invite-only beta test of swapit.

My goal for that very first beta test was to get 10 key people who can help us get our first feedback on swapit. Eventually, I ended up hand-picking 20 people for that first beta test. That turned out to be the right call.

As we all know, more is not always better, but in this case it made sense. Like I explained previously, we are using a service called beta by Crashlytics and that had to be explained to our beta testers. It adds an additional step for them in a sense that they need to install the “beta by Crashlytics” app and only then they can download the actual swapit beta. Through that process we “lost” a couple of folks who didn’t go through those 2 steps. Hence, 20 beta testers was a better choice than just 10.

1st Day – 1st Crash

Well, it’s a beta and it is supposed to crash 🙂  No seriously, we have expected our app to misbehave in some unexpected conditions. Android  – our platform of choice – is just an extremely fragmented platform with a lot of devices that run many different OS versions. On Android 5 (Lollipop) as well as on Android 4.4.4 (KitKat) a small threading issue occurs and swapit crashes at startup, for example. To give you some insight in how the crash reporting of the Crashlytics service looks like, here is a screen shot:

beta_screenshot_2As you can see, we can easily see what happened here in the overview. Of course, there is more information available about the actual crash, like a stack trace for example.

Magical Project Management – Asana & Crashlytics

The real magic though, happened automatically right after that crash occurred. While the crash was reported in our Crashlytics dashboard (see above) along with debug information, that very same crash was automagically put as a task / issue that is to be fixed into the project management system we are using for many years now: Asana. Take a look how the Asana project of our swapit beta looked like right after:

asana-screenshot-beta-2-dev_smudged

As you can see at the top of the list, the crash task “MainActivity.java line 52” had been created automatically. I quite like the seamless interaction between Asana and Crashlytics in this case.

Feedback

So in terms of feedback we have already received some very important information through our beta test. Even now less than 24 hours after the start, we already know where to start improving our app.

swapit-blog_surverymonkeyGoing forward from our current stage, we are planning to send out a quick survey to our beta testers tomorrow – roughly 48 hours after the launch of the beta. While the thoughts and views are still fresh, it is important to us to get that feedback. We have been a SurveyMonkey customer for many years and are rather happy with their service. Therefore, we will use SurveyMonkey for this survey as well. Just in case you were wondering.

Our Rough Beta Plan

We are planning to publish several beta releases before we go public with swapit. Roughly we are estimating 7 betas which are supposed to split up into the following tester numbers:swapit-blog_bar-chart

  1. Beta 1: 10 testers
  2. Beta 2: 60 testers (+50 new)
  3. Beta 3: 210 testers (+150 new)
  4. Beta 4: 510 testers (+300 new)
  5. Beta 5: 1,010 testers (+500 new)
  6. Beta 6: 2,010 testers (+1,000 new)
  7. Beta 7: 4,010 testers (+2,000 new)

Of course, everything above is subject to change, but as of now we already surpassed our beta 1 goal of 10 testers by going for 20. It’s the very first step of many to come, but we are determined to get as much feedback as possible.

Want to be part of our swapit – beta 2?

Request an invite at our website today to ensure you will be part of our next beta: http://swapit.la

Choosing a platform for Swapit

Right after we had the idea behind swapit, we had to decide which platform we go for. Such a decision can not be made in a jiffy because it has rather deep ranging consequences.

Hong Kong is 238% Mobile

swapit-blog_238-mobileIn order to choose the right app and right platform we need to back up a bit. In my earlier post about the idea behind swapit I mentioned that there are quite some Facebook groups out there, in which trading similar to what we do in swapit, is being practiced. As such trades happen in real life, swapit is being created as a very localized application. Hong Kong being our ground zero for swapit, we have to look at the mobile landscape to ensure we choose the right platform. With mobile phone penetration of 238.4% as of October 2014 (source ofca.gov.hk) and a population of 7.2 million as of mid-2014 (source censtatd.gov.hk) the market of consumers carrying smartphones is large enough for us to start out.

Android is King

swapit-blog_android-3For better or worse, many markets all over the world look rather similar: #1 mobile operating system is Android, #2 is Apple, #3 is Windows Phone and #4 is BlackBerry. While we at S4BB Limited have a 10+ year experience in developing for BlackBerry, we also have quite some experience in iOS, but more so in Android. Take a look at our great Battery Watch app for example. We could have created swapit for BlackBerry 10 and I am pretty sure app development would have been cut to half the time we require for Android app development, but there are just not enough consumers who use BlackBerry 10 devices out there. So the choice in the end was rather easy: go for Android as an operating system first. Most likely iOS will follow after that and other platforms will be considered too, at a later stage.

Backend for the Wicked

swapit-blog_app-engineHaving the operating system locked down to Android for the first version of the mobile app, we now had to look at how to build our backend. We obviously need to some pretty basic information like: user account data, item sales information (images, description, price, location), and so on. It’s a pretty straight forward set of data broken down to a bunch of strings, digits, geolocations and raw bits & bytes. It’s not rocket science, but it is important to choose the right backend system to ensure scalability, flexibilityease of use for development and most importantly cost-efficiency.

Using Android on the mobile app (=client) side, the most obvious choice was to look at the Google Cloud Platform. We really liked what we saw from a pricing perspective and what really surprised us was the (more-or-less) seamless integration into the new Android Studio. Google’s now de-facto standard IDE for Android development.

To sum it up: we went for Android as mobile app platform and the Google Cloud Platform to run the backend side of things. If you have any tips, tricks or things to warn us about our choices, please feel free to leave a comment here.

Read more about swapit on swapitblogit.wordpress.com.