How can I display leaderboards (reset once a week) with branch.io - android

I've got a question regarding branch.io referral program. Is it possible to develop the following userstory:
each user starts with a default bucket
the user signs up and can add a profile image (increase credits), follow us on facebook (+credits)
once a week we trigger a "reset" and the credits in the bucket of all users are reset (=0); we can also add a new bucket if needed.
during the "competition" we want to display a leaderboard of the "best" users with the most referred installs.
So, this was just a brief explanation. But I hope you get the idea. Is this possible (via iOS, Android, Webhooks and API)?
Question #2: Is it possible to display this leaderboard also on the frontend and increase credits if the web-app user does something special?

Austin from branch here. To be honest, this is a pretty custom use of the out of the box referrals program we provide.
There's no specific API that does exactly what you want, but you can create it by storing updates in realtime as credits are updated to Branch users. However, this will require you to host this on your own servers.
However, if you want to display credits and referrals for an individual user, we have a whole plug and play guide for it here:
Show Referrals for a single user: https://dev.branch.io/recipes/referral_links_with_incentives/ios/#showing-referrals
API Documentation: https://dev.branch.io/references/http_api/
Wish there was a better solution for this, but hopefully this helps answer your question!
Austin

Related

Map adClick --> appInstallation using Firebase

I'm new to Firebase. I've been using Analytics in the past and AdWords as well (on web projects) but never managed to put my hands on Firebase yet.
A customer is asking me to map how many users will be installing his forthcoming app coming from each separate ad he published online, in order to understand which ads are the most profitable ones.
This seems to me to be a fairly normal use case but, believe it or not, I wasn't able to retrieve a proper guide about this topic. In my mind I imagine some kind of console in which I can see for each ad URL or ID the number of clicks and PlayStore/AppStore views and - possibly - how many of those clicks converted to an app installation.
The app will be published on both Android and iOS.
Could anybody help me getting any information about this topic?
Thank you
Marco
You're looking for Firebase Attribution:
..a powerful form of app analytics that not only determines which
campaigns are bringing you users, but also which campaigns are
bringing you valuable users that you care most about.
Also related:
Attribution
It’s important to know which marketing efforts are most effective at
acquiring new users and keeping them engaged. The Attribution tab
shows how many conversion events were driven by each source and ad
network.
Follow this doc to solve your problem from this you can track user movement with page click tracking and event click tracking. Visit the following link to implement it
https://developers.google.com/analytics/devguides/collection/android/v4/

How to stop Google Analytics Bots, referral spams in OS Versions, Top Device Models entry for Android

I'm surprise to see statistics in Google Analytics page for one of the Android app and noticed the following strange informations
Apple iPhone in Top Device Models
Strange OS names entry in OS Versions :
Macintosh Intel 10.10
Linux x86_64
Windows 7
(not set) (not set)
Note:
I have answered the the current possible solution, but that doesn't make corrections to the available old data sets please let me know any ways to correct the old data sets and get out of the cons mentioned in my answer!
Bots and referral spam are two different things, the answer you posted will only help with bots. I am going to refer to the article about removing referral spam here
Normally we say there are three types of junk visits:
Ghost referrals like the darodar / ilovevitaly / cenoval
Creepy crawlers like semalt (a.k.a. best-seo-solution.com) and fake referrals like maridan.com.ua and blog.ranksonic.com.
Well behaved bots and spiders
Issue Number 1
I suspect data being inserted directly into the Analytics account directly though the measurement protocol. I say this because I have several old Google analytics accounts that are showing hits, the websites for these accounts no longer exist and haven't existed in years. I also have an old application account like yours that no longer has any data sent to it that shows data daily. The only way for data to be inserted into them is if someone is doing it directly, the hits are coming from known referral spam sites (the big list). There has been a lot of talk on the net lately on how to deal with the first two problems. Google has not come with any solution as of my writing this. The article gives a few very good ways of dealing with it. here
Idea of how its done google+ post
Tip: It appears that they are currently only targeting Web Property 1. so if you say make UA--xxxx-2 there will be no spam inserted.
Issue Number 2:
This will be hard to detect, they are actually thing your site. A filter on the known bad crawlers helps.
Issue Number 3
The answer you posted is correct but will only help with this: Bot and Spider Filtering. Its also kind of old.
Note: I have answered my own question for Bot and Spider Filtering , please provide if any better solution for the Cons mentioned below and avoid referral spam
Google Analytics Google team announced Introducing Bot and Spider Filtering to get away with referral spams,bots in Analytics Entries !
Introducing Bot and Spider Filtering
Many of you have shared with us that it’s hard to identify the real
traffic that comes to your pages. That’s why I’m pleased to announce
that we’re adding bot and spider filtering.
You can simply select a new checkbox option which would be included in
the view level of the management user interface. This option would be
labeled "Exclude traffic from known bots and spiders". Selecting this
option will exclude all hits that come from bots and spiders on the
IAB know bots and spiders list. The backend will exclude hits matching
the User Agents named in the list as though they were subject to a
profile filter. This will allow you to identify the real number of
visitors that are coming to your site.
Nestlé has been testing it and has found great benefit:
“The Bot filter solution is essential for getting deeper insights.
View level availability let us stay fully aligned with Best Practices
provided to all site owners. Very easy to use, understand and
communicate across thousands of Google Analytics users.” ~ Katarzyna
Malik, Nestlé Google Analytics Specialist
Happy Analyzing!
Posted by Matthew Anderson, Google Analytics Team
Steps to enable Bot Filtering:
Go Google Analytics home page and click on the Admin tab.Click on View settings
select Bot Filtering to get rid of known bots and spiders option.
This will remove the spam hits from their analytics for only upcoming analytics data. So this solution has two cons!!
Cons:
Historical data will not be affected by this option, i.e. spam hits
which were made in the past will remain in your data, Google will
only filter your future hits.
Google promises to remove hits from known bots, which means that the
time from the new bot appearance to the moment when it will be
included in the Google filter list can be indefinitely long. I use
this solution for the last week though and didn't find any new bots
breaking through the filter
Ref:
SO POST
techcrunch
G+
Blog

android - standard way to ask the user the rate app and give the opportunity to share the app link with friends

I found different approaches to offer android app user the opportunity to share an app link with friends form within an app and also ask them to rate the app on google play. As I am a friend of doing things the standard way yet new to android I was wondering if there is a google recommended standard way to do this, to
ask the user of an app from within the app to rate it on google play
offer the opportunity to share a link to the app on google play from within the app via email, facebook etc with friends
Thanks buddies
UPDATE
As this was obviously not so clear, my question is mainly around the technical aspect of doing it. (other suggestions are of course also welcome)
UPDATE 2
Found
http://www.androidsnippets.com/prompt-engaged-users-to-rate-your-app-in-the-android-market-appirater
which is not exactly what I wanted but maybe useful for people stumbling over this thread. In its core it is what Budius suggested
There's really not an 'standard' way of doing it. It's a very delicate situation, I guess the 1st rule will be don't be rude or over-intrusive to your users.
Leave the share option always available on some menu and don't force your users to use it.
About rating, you could count the amount of times your app is used (or for how long) and based on that estimation pop a thing to give the user the option to rate it, but unless the user clicks "Remind me Later" do never show that message again.
edit:
based on the author comment:
nothing special code wise, to rate the app you just start an Action_VIEW to your app link (e.g. for my app)
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=com.budius.WiFiShoot")));
and for the share is the same standard share code ( http://developer.android.com/training/sharing/send.html ) just passing your app link and maybe some extra message like : "check out my awesome app!"

Android In-App purchases with extra infomation

I ask this question expecting the answer to be 'not possible', as I have attempted to research this already and found no fruit! I thought that I would give the community a chance to weigh in however.
I have a working in-app billing system, but what I want is to be able to provide a little extra bit of infomation with the billing request. Something that would show up in my market place stats.
My users have the option of buying several different levels of product (sort of a Base, Premium and Gold-Star sort of thing). When they purchase the product they provide me with a string that represents the specific thing they want the product about (such as the house number and postcode if the product was about a house).
What I want is to be able to see that extra bit of information in my market place reports, so when I see someone who has requested a refund I can see on what exact item they purchased the product. I have looked at the DEVELOPER_PAYLOAD but I don't think that it will do what I want.
If I can't find a solution this way then I will end up performing a service call and storing the data myself, but I thought I would ask you guys first!
Sorry for being vague about my app and the products it returns but I don't want to expose my app yet (plus it holds no bearing on the question!).
EDIT
Now that I have added a bounty I would like to limit the answers. As I mentioned in my original question my backup plan will me a service call to my system registering the google reference and "data packet" for the purchase.
What I am most interested in is a way to do this where my information would end up in the my market place reports. For instance, if you were to offer a physical item with your in app purchase, how would a user record shipping instructions/etc. There is a place for this in the market reports, so surely there is a way to add the data?
You can certainly use DEVELOPER_PAYLOAD for this. However, Google doesn't process it in anyway and it won't show up in reports (not sure if they store it at all). So what you need to do is send transaction info (the JSON string you receive) to your own sever, parse it and store/process/whatever the developerPayload. You can combine this with signature verification and transaction reporting if you want to. One thing to beware of is that the size is limited to 512 bytes. If you send a request with a longer string, the whole transaction will fail, and the error message is not friendly at all ('IAB-DPTL' or some such).
Of course if you need more that this, you can simply build your own webservice and send whatever data you want. If it includes personal info, etc. make sure you let people know about it and/or they can turn it off.
In order to see this in the report, assuming you have a limited set of "dynamic" data, you would probably have to create a different set of in-app items per each "item" in your game.
Then, of course, you let the game handle which list the user sees according to the "dynamic" data.
That's the only way you would see it in the reports without your own web service handling it.
For those that may find this question via Google!
It seems that the easy answer to my question is NO. You can not add extra information to your market stats with regards to in app purchases.
As I mentioned in my question (and some answers said) the work around would be to upload the transaction string to your server and then compare it to market stats yourself (using the export function from the market perhaps).
I now intend to write a system to extract market stats (likely from the csv download feature) and match it up to the strings from the IAPs. If I ever get around to writing it I will share it with the community.

Removing Ad's with in-app-purchase

I'm searching for a tutorial or an explanation on how to remove advertisement in my application with in-app purchase?
I will put some ads with ad-mob in my app but I also want, that the user can disable the ads when he pays a little donation. Do you know a site or tutorial where I can find a step-by-step explanation how to do this?
Or do I need to publish 2 versions of my app? One with ads and one without ads for paying?
Don't use the SharedPreferences method because if the user flushes the app data or uninstalls/reinstalls your app their ad-free status will be lost.
A couple of ideas:
If your app has any kind of web based login or authorization, you can flag the user as having bought the ad free version by updating the web database's customer data and then disable ads in code following login and verification. This has the added benefit of following the user to new devices.
Use one of the several ways to get a unique device id, and store that in a web server database. On startup, query the DB to see if the device is ad-free. See Android Unique Device ID. This will only work for that particular device though.
The two apps approach is simple enough to get the job done too. :)
This presentation seems to explain an example and includes a link to source code at github:
http://gotocon.com/dl/2011/GeekNights/Tjen_penge_p%C3%A5_Android_ARH.pdf .
It stores the purchased upgrade at a sharedpreference.
However, I'm still looking for a more secure and robust solution that works out the use-case explained here:
http://vlingo-en.custhelp.com/app/answers/detail/a_id/1785/~/moving-in-app-purchase-(ad-removal)-to-new-android-phone/p/180

Categories

Resources