Android Open Source - sdk-android-2 Kontagent Util






From Project

Back to project page sdk-android-2.

License

The source code is released under:

Apache License

If you think the Android project sdk-android-2 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/**
 * Copyright 2014 Medium Entertainment, Inc.
 */*from   w w w.j a va 2 s  .  co m*/
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.playhaven.android.util;

import android.content.Context;
import android.content.SharedPreferences;
import android.text.TextUtils;
import com.playhaven.android.PlayHaven;
import net.minidev.json.JSONArray;
import net.minidev.json.JSONObject;

import java.util.Map;

/**
 * Coordinate with a separate Kontagent integration
 */
public class KontagentUtil
{
    private static final String PREFS_NAME = "Kontagent";
    private static final String SENDER_ID_PREFIX = "keySessionSenderId.";
    private static final String KEY_API = "api";
    private static final String KEY_SID = "sid";

    public static void setSenderId(Context context, String apiKey, String senderId)
    {
        if(context == null || apiKey == null || senderId == null)
            return; // ignore if we are missing any info

        String senderKey = SENDER_ID_PREFIX + apiKey;

        SharedPreferences pref = PlayHaven.getPreferences(context);
        SharedPreferences.Editor editor = pref.edit();
        editor.putString(PlayHaven.Config.KontagentAPI.toString(), apiKey);
        editor.commit();

        pref = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
        if(pref.getString(senderKey, null) != null)
            return; // don't overwrite an existing value

        editor = pref.edit();
        editor.putString(senderKey, senderId);
        editor.commit();
    }

    public static String getSenderId(Context context)
    {
        SharedPreferences pref = PlayHaven.getPreferences(context);
        String apiKey = pref.getString(PlayHaven.Config.KontagentAPI.toString(), null);
        if(apiKey == null) return null;

        pref = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
        String sid = pref.getString(SENDER_ID_PREFIX + apiKey, null);
        if(TextUtils.isEmpty(sid))
            return null;

        return sid;
    }

    public static String getSenderIdsAsJson(Context context)
    {
        if(context == null)
            return null;

        JSONArray array = new JSONArray();
        int length = SENDER_ID_PREFIX.length();
        SharedPreferences pref = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
        Map<String,?> map = pref.getAll();
        for(String key : map.keySet())
        {
            if(!key.startsWith(SENDER_ID_PREFIX) || key.length() <= length)
                continue;

            Object value = map.get(key);
            if(value == null)
                continue;

            JSONObject session = new JSONObject();
            session.put(KEY_API, key.substring(length));
            session.put(KEY_SID, value);
            array.add(session);
        }

        if(array.isEmpty())
            return null;

        /**
         [
         {"api":"895467583e494dbea9c81553c7b6b5ad","sid":"5611190844015425273"},
         {"api":"0123456789abcdef0123456789abcdef","sid":"0123456789abcdef012"}
         ]
         */
        return array.toJSONString();
    }
}




Java Source Code List

com.playhaven.android.DeviceId.java
com.playhaven.android.PlacementListener.java
com.playhaven.android.Placement.java
com.playhaven.android.PlayHavenException.java
com.playhaven.android.PlayHaven.java
com.playhaven.android.PushPlacement.java
com.playhaven.android.cache.BulkCacheDownloader.java
com.playhaven.android.cache.CacheCleaner.java
com.playhaven.android.cache.CacheDownloader.java
com.playhaven.android.cache.CacheResponseHandler.java
com.playhaven.android.cache.Cache.java
com.playhaven.android.cache.CachedInfo.java
com.playhaven.android.cache.package-info.java
com.playhaven.android.compat.UnityCompat.java
com.playhaven.android.compat.VendorCompat.java
com.playhaven.android.data.ContentUnitType.java
com.playhaven.android.data.CustomEvent.java
com.playhaven.android.data.DataCollectionField.java
com.playhaven.android.data.JsonUrlExtractor.java
com.playhaven.android.data.Purchase.java
com.playhaven.android.data.Reward.java
com.playhaven.android.data.package-info.java
com.playhaven.android.diagnostic.APIValidationIndicators.java
com.playhaven.android.diagnostic.DiagnosticApp.java
com.playhaven.android.diagnostic.DiagnosticPreferences.java
com.playhaven.android.diagnostic.InstrumentationReceiver.java
com.playhaven.android.diagnostic.Launcher.java
com.playhaven.android.diagnostic.OutputBox.java
com.playhaven.android.diagnostic.RequestTypeAdapter.java
com.playhaven.android.diagnostic.RequestType.java
com.playhaven.android.examples.ContentExample2.java
com.playhaven.android.examples.ContentExample.java
com.playhaven.android.examples.DialogExample.java
com.playhaven.android.examples.DisplayOptExample.java
com.playhaven.android.examples.EmbeddedExample.java
com.playhaven.android.examples.IAPTrackingExample.java
com.playhaven.android.examples.LoggingExample.java
com.playhaven.android.examples.MoreGamesExample.java
com.playhaven.android.examples.NoContent1Example.java
com.playhaven.android.examples.NoContent2Example.java
com.playhaven.android.examples.OnResumeExample.java
com.playhaven.android.examples.OpenExample.java
com.playhaven.android.examples.OptInExample.java
com.playhaven.android.examples.PreloadDialogExample.java
com.playhaven.android.examples.PreloadExample.java
com.playhaven.android.examples.PurchaseExample.java
com.playhaven.android.examples.RewardExample.java
com.playhaven.android.examples.WebviewFullscreenExample.java
com.playhaven.android.push.GCMBroadcastReceiver.java
com.playhaven.android.push.GCMRegistrationRequest.java
com.playhaven.android.push.NotificationBuilder.java
com.playhaven.android.push.PushReceiver.java
com.playhaven.android.req.ContentDispatchRequest.java
com.playhaven.android.req.ContentDispatchType.java
com.playhaven.android.req.ContentRequest.java
com.playhaven.android.req.ContentUnitRequest.java
com.playhaven.android.req.CustomEventRequest.java
com.playhaven.android.req.Identifier.java
com.playhaven.android.req.InstallRequest.java
com.playhaven.android.req.MetadataRequest.java
com.playhaven.android.req.NoContentException.java
com.playhaven.android.req.NoIdentifierException.java
com.playhaven.android.req.OpenRequest.java
com.playhaven.android.req.PlayHavenRequest.java
com.playhaven.android.req.PurchaseTrackingRequest.java
com.playhaven.android.req.PushTrackingRequest.java
com.playhaven.android.req.RequestListener.java
com.playhaven.android.req.ServerErrorHandler.java
com.playhaven.android.req.SignatureException.java
com.playhaven.android.req.SubcontentRequest.java
com.playhaven.android.req.UrlRequest.java
com.playhaven.android.req.UserAgent.java
com.playhaven.android.req.package-info.java
com.playhaven.android.util.DisplayUtil.java
com.playhaven.android.util.GoogleAdvertisementUtil.java
com.playhaven.android.util.GooglePlayServicesUtil.java
com.playhaven.android.util.JsonUtil.java
com.playhaven.android.util.KontagentUtil.java
com.playhaven.android.util.MemoryReporter.java
com.playhaven.android.util.TimeZoneFormatter.java
com.playhaven.android.util.package-info.java
com.playhaven.android.view.Badge.java
com.playhaven.android.view.ChildView.java
com.playhaven.android.view.DefaultPlayHavenListener.java
com.playhaven.android.view.FrameManager.java
com.playhaven.android.view.FullScreen.java
com.playhaven.android.view.HTMLView.java
com.playhaven.android.view.MoreGames.java
com.playhaven.android.view.NativeView.java
com.playhaven.android.view.PlayHavenListener.java
com.playhaven.android.view.PlayHavenView.java
com.playhaven.android.view.Windowed.java
com.playhaven.android.view.package-info.java
com.playhaven.android.package-info.java
javax.annotation.Generated.java
javax.annotation.package-info.java
${package}.__artifactId__Activity.java