Android Open Source - android-easy-lvl License Checker Callback






From Project

Back to project page android-easy-lvl.

License

The source code is released under:

MIT License

If you think the Android project android-easy-lvl 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 (C) 2010 The Android Open Source Project
 *// w w  w .  j a  v a  2  s  .c  om
 * 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.google.android.vending.licensing;

/**
 * Callback for the license checker library.
 * <p>
 * Upon checking with the Market server and conferring with the {@link Policy},
 * the library calls the appropriate callback method to communicate the result.
 * <p>
 * <b>The callback does not occur in the original checking thread.</b> Your
 * application should post to the appropriate handling thread or lock
 * accordingly.
 * <p>
 * The reason that is passed back with allow/dontAllow is the base status handed
 * to the policy for allowed/disallowing the license. Policy.RETRY will call
 * allow or dontAllow depending on other statistics associated with the policy,
 * while in most cases Policy.NOT_LICENSED will call dontAllow and
 * Policy.LICENSED will Allow.
 */
public interface LicenseCheckerCallback {

    /**
     * Allow use. App should proceed as normal.
     * 
     * @param reason Policy.LICENSED or Policy.RETRY typically. (although in
     *            theory the policy can return Policy.NOT_LICENSED here as well)
     */
    public void allow(int reason);

    /**
     * Don't allow use. App should inform user and take appropriate action.
     * 
     * @param reason Policy.NOT_LICENSED or Policy.RETRY. (although in theory
     *            the policy can return Policy.LICENSED here as well ---
     *            perhaps the call to the LVL took too long, for example)
     */
    public void dontAllow(int reason);

    /** Application error codes. */
    public static final int ERROR_INVALID_PACKAGE_NAME = 1;
    public static final int ERROR_NON_MATCHING_UID = 2;
    public static final int ERROR_NOT_MARKET_MANAGED = 3;
    public static final int ERROR_CHECK_IN_PROGRESS = 4;
    public static final int ERROR_INVALID_PUBLIC_KEY = 5;
    public static final int ERROR_MISSING_PERMISSION = 6;

    /**
     * Error in application code. Caller did not call or set up license checker
     * correctly. Should be considered fatal.
     */
    public void applicationError(int errorCode);
}




Java Source Code List

com.example.sample.MainActivity.java
com.google.android.vending.licensing.AESObfuscator.java
com.google.android.vending.licensing.APKExpansionPolicy.java
com.google.android.vending.licensing.DeviceLimiter.java
com.google.android.vending.licensing.ILicenseResultListener.java
com.google.android.vending.licensing.ILicensingService.java
com.google.android.vending.licensing.LicenseCheckerCallback.java
com.google.android.vending.licensing.LicenseChecker.java
com.google.android.vending.licensing.LicenseValidator.java
com.google.android.vending.licensing.NullDeviceLimiter.java
com.google.android.vending.licensing.Obfuscator.java
com.google.android.vending.licensing.Policy.java
com.google.android.vending.licensing.PreferenceObfuscator.java
com.google.android.vending.licensing.ResponseData.java
com.google.android.vending.licensing.ServerManagedPolicy.java
com.google.android.vending.licensing.StrictPolicy.java
com.google.android.vending.licensing.ValidationException.java
com.google.android.vending.licensing.util.Base64DecoderException.java
com.google.android.vending.licensing.util.Base64.java
com.i4da.easylvl.EasyLicenseChecker.java