Android Open Source - singly-android Singly Utils






From Project

Back to project page singly-android.

License

The source code is released under:

MIT License

If you think the Android project singly-android 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

package com.singly.android.util;
/*from   w w  w.j a  v a  2  s  .c o  m*/
import java.net.URISyntaxException;
import java.util.Map;

import com.loopj.android.http.AsyncHttpClient;

import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;

/**
 * Utility methods for the Singly SDK.
 */
public class SinglyUtils {
  
  public static String SDK = "android";
  public static String SDK_VERSION = "1.1";
  private static final String SINGLY_SCHEME = "https";
  private static final String SINGLY_HOST = "api.singly.com";

  public static AsyncHttpClient getHttpClient() {
    AsyncHttpClient httpClient = new AsyncHttpClient();
    httpClient.addHeader("X-Singly-SDK", SDK);
    httpClient.addHeader("X-Singly-SDK-Version", SDK_VERSION);
    return httpClient;
  }

  public static String getSinglyScheme() {
    return SINGLY_SCHEME;
  }

  public static String getSinglyHost() {
    return SINGLY_HOST;
  }

  /**
   * Creates a url using the base singly api url and the path.
   * 
   * The url is assumed to be in UTF-8 format.  The query parameters are
   * not required.
   * 
   * @param path The url path.
   * 
   * @return A formatted, UTF-8 singly url string.
   */
  public static String createSinglyURL(String path) {

    // create the formatted UTF-8 url
    try {
      return URLUtils.createURL(SINGLY_SCHEME, SINGLY_HOST, path, null);
    }
    catch (URISyntaxException e) {
      return null;
    }
  }

  /**
   * Creates a url using the base singly api url, the path, and the query
   * parameters specified.
   * 
   * The url is assumed to be in UTF-8 format.  The query parameters are
   * not required.
   * 
   * @param path The url path.
   * @param qparams The optional url query parameters.
   * 
   * @return A formatted, UTF-8 singly url string.
   */
  public static String createSinglyURL(String path,
    Map<String, String> parameters) {

    // create the formatted UTF-8 url
    try {
      return URLUtils.createURL(SINGLY_SCHEME, SINGLY_HOST, path, parameters);
    }
    catch (URISyntaxException e) {
      return null;
    }
  }

  /**
   * Returns true if the context has permission to access the network state and
   * access the internet.
   * 
   * @return True if the context has the correct permissions.
   */
  public static boolean hasNetworkPermissions(Context context) {

    // get permissions for accessing the internet and network state
    int internetPerm = context
      .checkCallingOrSelfPermission(Manifest.permission.INTERNET);
    int networkStatePerm = context
      .checkCallingOrSelfPermission(Manifest.permission.ACCESS_NETWORK_STATE);

    // are those permissions allowed
    boolean internetAllowed = internetPerm == PackageManager.PERMISSION_GRANTED;
    boolean networkAllowed = networkStatePerm == PackageManager.PERMISSION_GRANTED;

    // if they are check if we are connected to the network
    return (internetAllowed && networkAllowed);
  }

  /**
   * Returns true if the app is connected to the internet, meaning the network
   * is connected.
   * 
   * @return True if the context can connect to the internet.
   */
  public static boolean isConnectedToInternet(Context context) {

    // check if we are connected to the network
    ConnectivityManager cm = (ConnectivityManager)context
      .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    if (netInfo != null && netInfo.isConnectedOrConnecting()) {
      return true;
    }

    // not connected to the network
    return false;
  }
}




Java Source Code List

com.singly.android.client.AsyncApiResponseHandler.java
com.singly.android.client.AuthenticationActivity.java
com.singly.android.client.AuthenticationWebViewListener.java
com.singly.android.client.BaseAuthenticationWebViewClient.java
com.singly.android.client.FacebookAuthenticationActivity.java
com.singly.android.client.SinglyClient.java
com.singly.android.component.AbstractCachingBlockLoadedListAdapter.java
com.singly.android.component.AuthenticatedServicesActivity.java
com.singly.android.component.AuthenticatedServicesAdapter.java
com.singly.android.component.AuthenticatedServicesFragment.java
com.singly.android.component.DeviceOwnerActivity.java
com.singly.android.component.Friend.java
com.singly.android.component.FriendsListActivity.java
com.singly.android.component.FriendsListAdapter.java
com.singly.android.component.FriendsListFragment.java
com.singly.android.component.FriendsListRowClickListener.java
com.singly.android.component.SinglyService.java
com.singly.android.component.TableOfContentsFragment.java
com.singly.android.component.TableOfContentsTouchListener.java
com.singly.android.examples.MainActivity.java
com.singly.android.util.BitmapUtils.java
com.singly.android.util.ImageCacheListener.java
com.singly.android.util.ImageInfo.java
com.singly.android.util.JSON.java
com.singly.android.util.RemoteImageCache.java
com.singly.android.util.SinglyUtils.java
com.singly.android.util.URLUtils.java