Java Code Examples for android.app.Activity#getPackageName()

The following examples show how to use android.app.Activity#getPackageName() . These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: weixin   File: ServiceManager.java    License: Apache License 2.0 6 votes vote down vote up
public ServiceManager(Context context) {
	this.context = context;
	if (context instanceof Activity) {
		L.i(TAG, "Callback Activity...");
		Activity callbackActivity = (Activity) context;
		callbackActivityPackageName = callbackActivity.getPackageName();
		callbackActivityClassName = callbackActivity.getClass().getName();
	}
	props = loadProperties();
	apiKey = props.getProperty("apiKey", "");
	xmppHost = props.getProperty("xmppHost", "127.0.0.1");
	xmppPort = props.getProperty("xmppPort", "5222");
	L.i(TAG, "apiKey=" + apiKey);
	L.i(TAG, "xmppHost=" + xmppHost);
	L.i(TAG, "xmppPort=" + xmppPort);

	sp = new SpUtil(context);

	sp.saveString(Constants.API_KEY, apiKey);
	sp.saveString(Constants.VERSION, version);
	sp.saveString(Constants.XMPP_HOST, xmppHost);
	sp.saveInt(Constants.XMPP_PORT, Integer.parseInt(xmppPort));
	sp.saveString(Constants.CALLBACK_ACTIVITY_PACKAGE_NAME, callbackActivityPackageName);
	sp.saveString(Constants.CALLBACK_ACTIVITY_CLASS_NAME, callbackActivityClassName);
}
 
Example 2
@ReactMethod
public void startLockTask() {
  try {
    Activity mActivity = reactContext.getCurrentActivity();
    if (mActivity != null) {
      DevicePolicyManager myDevicePolicyManager = (DevicePolicyManager) mActivity.getSystemService(Context.DEVICE_POLICY_SERVICE);
      ComponentName mDPM = new ComponentName(mActivity, MyAdmin.class);

      if (myDevicePolicyManager.isDeviceOwnerApp(mActivity.getPackageName())) {
        String[] packages = {mActivity.getPackageName()};
        myDevicePolicyManager.setLockTaskPackages(mDPM, packages);
        mActivity.startLockTask();
      } else {
        mActivity.startLockTask();
      }
    }
  } catch (Exception e) {
  }
}
 
Example 3
Source Project: debugdrawer   File: BuildModule.java    License: Apache License 2.0 6 votes vote down vote up
@Override
protected void onAttach(Activity activity, DebugView parent, ViewGroup content) {
    String packageName = activity.getPackageName();
    String buildConfigPackage = packageName+".BuildConfig";

    addElement(new TextElement("Name:", getViaReflection(String.class,buildConfigPackage,"VERSION_NAME")));
    addElement(new TextElement("Code:", getViaReflection(Integer.class,buildConfigPackage,"VERSION_CODE")+""));
    addElement(new TextElement("SHA:", getViaReflection(String.class,buildConfigPackage,"GIT_SHA")));

    try {
        String buildTimeString = getViaReflection(String.class,buildConfigPackage,"BUILD_TIME");

        // Parse ISO8601-format time into local time.
        DateFormat inFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'");
        inFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
        String buildTime = DATE_DISPLAY_FORMAT.format(inFormat.parseObject(buildTimeString));
        addElement(new TextElement("Date:", buildTime));

    } catch (Exception e) { }
}
 
Example 4
private String getVersion() {
    try {
        Activity activity = getActivity();
        String packageName = activity.getPackageName();
        PackageInfo packageInfo = activity.getPackageManager().getPackageInfo(packageName, 0);
        return packageInfo.versionName;
    } catch (PackageManager.NameNotFoundException e) {
        Log.e(TAG, "getVersion: error", e);
        return "1.0";
    }
}
 
Example 5
/**
 * 页面关闭时检查页面监听监视
 *
 * @param activity
 */
private void checkConfigChangeWhenPause(Activity activity) {
    RotateUtil.getInstance().start(activity);

    if (mActivityAndLandscape.size() < 1) {
        // 有悬浮窗后的,首次关闭页面-(兼容页面打开,才展示悬浮窗,此时map无此页面信息)
        String activityName = activity.getPackageName() + "." + activity.getLocalClassName();
        mActivityAndLandscape.put(activityName, ViewUtils.isActivityLandscape(activity));
    }
}
 
Example 6
Source Project: androidpn-client   File: ServiceManager.java    License: Apache License 2.0 5 votes vote down vote up
public ServiceManager(Context context) {
    this.context = context;

    if (context instanceof Activity) {
        Log.i(LOGTAG, "Callback Activity...");
        Activity callbackActivity = (Activity) context;
        callbackActivityPackageName = callbackActivity.getPackageName();
        callbackActivityClassName = callbackActivity.getClass().getName();
    }
    setSettings();
}
 
Example 7
Source Project: 365browser   File: ShareHelper.java    License: Apache License 2.0 5 votes vote down vote up
@TargetApi(Build.VERSION_CODES.LOLLIPOP_MR1)
static void sendChooserIntent(boolean saveLastUsed, Activity activity,
                              Intent sharingIntent,
                              @Nullable TargetChosenCallback callback) {
    synchronized (LOCK) {
        if (sTargetChosenReceiveAction == null) {
            sTargetChosenReceiveAction = activity.getPackageName() + "/"
                    + TargetChosenReceiver.class.getName() + "_ACTION";
        }
        Context context = activity.getApplicationContext();
        if (sLastRegisteredReceiver != null) {
            context.unregisterReceiver(sLastRegisteredReceiver);
            // Must cancel the callback (to satisfy guarantee that exactly one method of
            // TargetChosenCallback is called).
            // TODO(mgiuca): This should be called immediately upon cancelling the chooser,
            // not just when the next share takes place (https://crbug.com/636274).
            sLastRegisteredReceiver.cancel();
        }
        sLastRegisteredReceiver = new TargetChosenReceiver(saveLastUsed, callback);
        context.registerReceiver(
                sLastRegisteredReceiver, new IntentFilter(sTargetChosenReceiveAction));
    }

    Intent intent = new Intent(sTargetChosenReceiveAction);
    intent.setPackage(activity.getPackageName());
    intent.putExtra(EXTRA_RECEIVER_TOKEN, sLastRegisteredReceiver.hashCode());
    final PendingIntent pendingIntent = PendingIntent.getBroadcast(activity, 0, intent,
            PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_ONE_SHOT);
    Intent chooserIntent = Intent.createChooser(sharingIntent,
            activity.getString(R.string.share_link_chooser_title),
            pendingIntent.getIntentSender());
    if (sFakeIntentReceiverForTesting != null) {
        sFakeIntentReceiverForTesting.setIntentToSendBack(intent);
    }
    fireIntent(activity, chooserIntent);
}
 
Example 8
Source Project: force-update   File: GooglePlay.java    License: Apache License 2.0 5 votes vote down vote up
public static void openAppDetail(Activity gContext) {
    String appPackage = gContext.getPackageName();
    Uri googlePlayUri = Uri.parse("market://details?id=" + appPackage);
    Intent googlePlayIntent = new Intent(Intent.ACTION_VIEW, googlePlayUri);
    boolean googlePlayAvailable = false;

    // try to find official Google Play app
    final List<ResolveInfo> availableApps = gContext.getPackageManager().queryIntentActivities(googlePlayIntent, 0);
    for (ResolveInfo app: availableApps) {
        if (app.activityInfo.applicationInfo.packageName.equals("com.android.vending")) {

            ActivityInfo appActivity = app.activityInfo;
            ComponentName component = new ComponentName(
                    appActivity.applicationInfo.packageName,
                    appActivity.name
            );
            googlePlayIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
            googlePlayIntent.setComponent(component);
            gContext.startActivity(googlePlayIntent);
            googlePlayAvailable = true;
            break;

        }
    }

    if (!googlePlayAvailable) {
        if (availableApps.size() > 0) {
            // fallback to universal Google Play Intent
            gContext.startActivity(googlePlayIntent);
        } else {
            // if there is no app bind to market:// open Google Play in browser
            Intent webIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + appPackage));
            gContext.startActivity(webIntent);
        }
    }
}
 
Example 9
Source Project: palmsuda   File: ServiceManager.java    License: Apache License 2.0 5 votes vote down vote up
public ServiceManager(Context context) {
	this.context = context;

	if (context instanceof Activity) {
		Log.i(LOGTAG, "Callback Activity...");
		Activity callbackActivity = (Activity) context;
		callbackActivityPackageName = callbackActivity.getPackageName();
		callbackActivityClassName = callbackActivity.getClass().getName();
	}

	props = loadProperties();
	apiKey = props.getProperty("apiKey", "");
	xmppHost = props.getProperty("xmppHost", "127.0.0.1");
	xmppPort = props.getProperty("xmppPort", "5222");
	Log.i(LOGTAG, "apiKey=" + apiKey);
	Log.i(LOGTAG, "xmppHost=" + xmppHost);
	Log.i(LOGTAG, "xmppPort=" + xmppPort);

	sharedPrefs = context.getSharedPreferences(
			Constants.SHARED_PREFERENCE_NAME, Context.MODE_PRIVATE);
	Editor editor = sharedPrefs.edit();
	editor.putString(Constants.API_KEY, apiKey);
	editor.putString(Constants.VERSION, version);
	editor.putString(Constants.XMPP_HOST, xmppHost);
	editor.putInt(Constants.XMPP_PORT, Integer.parseInt(xmppPort));
	editor.putString(Constants.CALLBACK_ACTIVITY_PACKAGE_NAME,
			callbackActivityPackageName);
	editor.putString(Constants.CALLBACK_ACTIVITY_CLASS_NAME,
			callbackActivityClassName);
	editor.commit();
	// Log.i(LOGTAG, "sharedPrefs=" + sharedPrefs.toString());
}
 
Example 10
Source Project: AndroidPNClient   File: ServiceManager.java    License: Apache License 2.0 5 votes vote down vote up
public ServiceManager(Context context) {
    this.context = context;

    if (context instanceof Activity) {
        Log.i(LOGTAG, "Callback Activity...");
        Activity callbackActivity = (Activity) context;
        callbackActivityPackageName = callbackActivity.getPackageName();
        callbackActivityClassName = callbackActivity.getClass().getName();
    }

    props = loadProperties();
    apiKey = props.getProperty(Constants.PROP_API_KEY, "");
    xmppHost = props.getProperty(Constants.PROP_XMPP_HOST, Constants.DEFAULT_HOST);
    xmppPort = props.getProperty(Constants.PROP_XMPP_PORT, Constants.DEFAULT_PORT);
    NotifierConfig.packetListener = props.getProperty(Constants.PROP_PACKET_LISTENER, null);
    NotifierConfig.iq = props.getProperty(Constants.PROP_IQ, null);
    NotifierConfig.iqProvider = props.getProperty(Constants.PROP_IQ_PROVIDER, null);
    NotifierConfig.notifyActivity = props.getProperty(Constants.PROP_NOTIFY_ACTIVITY, null);
    Log.i(LOGTAG, "apiKey=" + apiKey);
    Log.i(LOGTAG, "xmppHost=" + xmppHost);
    Log.i(LOGTAG, "xmppPort=" + xmppPort);
    Log.i(LOGTAG, "packetListener=" + NotifierConfig.packetListener);
    Log.i(LOGTAG, "iq=" + NotifierConfig.iq);
    Log.i(LOGTAG, "iqProvider=" + NotifierConfig.iqProvider);
    Log.i(LOGTAG, "notifyActivity" + NotifierConfig.notifyActivity);

    sharedPrefs = context.getSharedPreferences(
            Constants.SHARED_PREFERENCE_NAME, Context.MODE_PRIVATE);
    Editor editor = sharedPrefs.edit();
    editor.putString(Constants.API_KEY, apiKey);
    editor.putString(Constants.VERSION, version);
    editor.putString(Constants.XMPP_HOST, xmppHost);
    editor.putInt(Constants.XMPP_PORT, Integer.parseInt(xmppPort));
    editor.putString(Constants.CALLBACK_ACTIVITY_PACKAGE_NAME,
            callbackActivityPackageName);
    editor.putString(Constants.CALLBACK_ACTIVITY_CLASS_NAME,
            callbackActivityClassName);
    editor.commit();
    SmackConfiguration.setKeepAliveInterval(60000);
}
 
Example 11
protected boolean hasActivityFixedOrientation(Activity currentActivity) {
    ActivityInfo[] activities;
    String packageName = currentActivity.getPackageName();

    // collect AndroidManifest.xml activities properties
    try {
        activities = InstrumentationRegistry.getTargetContext().getPackageManager().getPackageInfo(packageName, PackageManager.GET_ACTIVITIES).activities;
    } catch (PackageManager.NameNotFoundException e) {
        throw new IllegalStateException(e);
    }

    for (ActivityInfo activity : activities) {

        // skip if activity info is not for the current active activity
        if (!activity.name.equals(currentActivity.getClass().getName())) {
            continue;
        }

        // report if the activity requestedOrientation is fixed
        if (activity.screenOrientation != ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED) {
            Log.d(OrientationChangeAction.class.getSimpleName(), "Ignore orientation change because orientation for this activity is fixed in AndroidManifest.xml.");
            return true;
        }
    }

    return false;
}
 
Example 12
Source Project: discreet-app-rate   File: AppRate.java    License: Apache License 2.0 5 votes vote down vote up
public static AppRate with(Activity activity) {
    if (activity == null) {
        throw new IllegalStateException("Activity cannot be null");
    }

    AppRate instance = new AppRate(activity);
    instance.text = activity.getString(R.string.dra_rate_app);
    instance.settings = activity.getSharedPreferences(PREFS_NAME, 0);
    instance.editor = instance.settings.edit();
    instance.packageName = activity.getPackageName();
    return instance;
}
 
Example 13
Source Project: L.TileLayer.Cordova   File: FileUtils.java    License: MIT License 4 votes vote down vote up
@Override
 public void initialize(CordovaInterface cordova, CordovaWebView webView) {
 	super.initialize(cordova, webView);
 	this.filesystems = new ArrayList<Filesystem>();

 	String tempRoot = null;
 	String persistentRoot = null;

 	Activity activity = cordova.getActivity();
 	String packageName = activity.getPackageName();
 	
 	String location = activity.getIntent().getStringExtra("androidpersistentfilelocation");
 	if (location == null) {
 		location = "compatibility";
 	}
 	tempRoot = activity.getCacheDir().getAbsolutePath();
 	if ("internal".equalsIgnoreCase(location)) {
 		persistentRoot = activity.getFilesDir().getAbsolutePath() + "/files/";
 		this.configured = true;
 	} else if ("compatibility".equalsIgnoreCase(location)) {
 		/*
 		 *  Fall-back to compatibility mode -- this is the logic implemented in
 		 *  earlier versions of this plugin, and should be maintained here so
 		 *  that apps which were originally deployed with older versions of the
 		 *  plugin can continue to provide access to files stored under those
 		 *  versions.
 		 */
 		if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
 			persistentRoot = Environment.getExternalStorageDirectory().getAbsolutePath();
 			tempRoot = Environment.getExternalStorageDirectory().getAbsolutePath() +
 					"/Android/data/" + packageName + "/cache/";
 		} else {
 			persistentRoot = "/data/data/" + packageName;
 		}
 		this.configured = true;
 	}

 	if (this.configured) {
// Create the directories if they don't exist.
new File(tempRoot).mkdirs();
new File(persistentRoot).mkdirs();

 		// Register initial filesystems
 		// Note: The temporary and persistent filesystems need to be the first two
 		// registered, so that they will match window.TEMPORARY and window.PERSISTENT,
 		// per spec.
 		this.registerFilesystem(new LocalFilesystem("temporary", cordova, tempRoot));
 		this.registerFilesystem(new LocalFilesystem("persistent", cordova, persistentRoot));
 		this.registerFilesystem(new ContentFilesystem(cordova, webView));

         registerExtraFileSystems(getExtraFileSystemsPreference(activity), getAvailableFileSystems(activity));

 		// Initialize static plugin reference for deprecated getEntry method
 		if (filePlugin == null) {
 			FileUtils.filePlugin = this;
 		}
 	} else {
 		Log.e(LOG_TAG, "File plugin configuration error: Please set AndroidPersistentFileLocation in config.xml to one of \"internal\" (for new applications) or \"compatibility\" (for compatibility with previous versions)");
 		activity.finish();
 	}
 }
 
Example 14
@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    Bundle arguments = getArguments();
    double latitude = arguments.getDouble(ARG_LATITUDE);
    double longitude = arguments.getDouble(ARG_LONGITUDE);

    if (savedInstanceState != null) {
        latitude = savedInstanceState.getDouble(ARG_LATITUDE);
        longitude = savedInstanceState.getDouble(ARG_LONGITUDE);
    }

    Activity activity = getActivity();

    mCoordinates = new GeoPoint(latitude, longitude);

    mDatabase = MapTrek.getApplication().getDetailedMapDatabase();

    mAdapter = new DataListAdapter(activity, mEmptyCursor, 0);
    setListAdapter(mAdapter);

    QuickFilterAdapter adapter = new QuickFilterAdapter(activity);
    mViews.quickFilters.setAdapter(adapter);

    LinearLayoutManager horizontalLayoutManager
            = new LinearLayoutManager(activity, LinearLayoutManager.HORIZONTAL, false);
    mViews.quickFilters.setLayoutManager(horizontalLayoutManager);

    Resources resources = activity.getResources();
    String packageName = activity.getPackageName();
    mKinds = new CharSequence[Tags.kinds.length]; // we add two kinds but skip two last
    mKinds[0] = activity.getString(R.string.any);
    mKinds[1] = resources.getString(R.string.kind_place);
    for (int i = 0; i < Tags.kinds.length - 2; i++) { // skip urban and barrier kinds
        int id = resources.getIdentifier(Tags.kinds[i], "string", packageName);
        mKinds[i + 2] = id != 0 ? resources.getString(id) : Tags.kinds[i];
    }

    if (mUpdating || !MapTrekDatabaseHelper.hasFullTextIndex(mDatabase)) {
        mViews.searchFooter.setVisibility(View.GONE);
        mViews.ftsWait.spin();
        mViews.ftsWait.setVisibility(View.VISIBLE);
        mViews.message.setText(R.string.msgWaitForFtsTable);
        mViews.message.setVisibility(View.VISIBLE);

        if (!mUpdating) {
            mUpdating = true;
            final Message m = Message.obtain(mBackgroundHandler, () -> {
                MapTrekDatabaseHelper.createFtsTable(mDatabase);
                hideProgress();
                mUpdating = false;
            });
            m.what = MSG_CREATE_FTS;
            mBackgroundHandler.sendMessage(m);
        } else {
            mBackgroundHandler.post(this::hideProgress);
        }
    } else {
        HelperUtils.showTargetedAdvice(getActivity(), Configuration.ADVICE_TEXT_SEARCH, R.string.advice_text_search, mViews.searchFooter, false);
    }
}
 
Example 15
Source Project: reader   File: FileUtils.java    License: MIT License 4 votes vote down vote up
@Override
 public void initialize(CordovaInterface cordova, CordovaWebView webView) {
 	super.initialize(cordova, webView);
 	this.filesystems = new ArrayList<Filesystem>();

 	String tempRoot = null;
 	String persistentRoot = null;

 	Activity activity = cordova.getActivity();
 	String packageName = activity.getPackageName();
 	
 	String location = activity.getIntent().getStringExtra("androidpersistentfilelocation");
 	if (location == null) {
 		location = "compatibility";
 	}
 	tempRoot = activity.getCacheDir().getAbsolutePath();
 	if ("internal".equalsIgnoreCase(location)) {
 		persistentRoot = activity.getFilesDir().getAbsolutePath() + "/files/";
 		this.configured = true;
 	} else if ("compatibility".equalsIgnoreCase(location)) {
 		/*
 		 *  Fall-back to compatibility mode -- this is the logic implemented in
 		 *  earlier versions of this plugin, and should be maintained here so
 		 *  that apps which were originally deployed with older versions of the
 		 *  plugin can continue to provide access to files stored under those
 		 *  versions.
 		 */
 		if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
 			persistentRoot = Environment.getExternalStorageDirectory().getAbsolutePath();
 			tempRoot = Environment.getExternalStorageDirectory().getAbsolutePath() +
 					"/Android/data/" + packageName + "/cache/";
 		} else {
 			persistentRoot = "/data/data/" + packageName;
 		}
 		this.configured = true;
 	}

 	if (this.configured) {
// Create the directories if they don't exist.
new File(tempRoot).mkdirs();
new File(persistentRoot).mkdirs();

 		// Register initial filesystems
 		// Note: The temporary and persistent filesystems need to be the first two
 		// registered, so that they will match window.TEMPORARY and window.PERSISTENT,
 		// per spec.
 		this.registerFilesystem(new LocalFilesystem("temporary", cordova, tempRoot));
 		this.registerFilesystem(new LocalFilesystem("persistent", cordova, persistentRoot));
 		this.registerFilesystem(new ContentFilesystem(cordova, webView));

         registerExtraFileSystems(getExtraFileSystemsPreference(activity), getAvailableFileSystems(activity));

 		// Initialize static plugin reference for deprecated getEntry method
 		if (filePlugin == null) {
 			FileUtils.filePlugin = this;
 		}
 	} else {
 		Log.e(LOG_TAG, "File plugin configuration error: Please set AndroidPersistentFileLocation in config.xml to one of \"internal\" (for new applications) or \"compatibility\" (for compatibility with previous versions)");
 		activity.finish();
 	}
 }
 
Example 16
Source Project: GPT   File: GPTInstrumentation.java    License: Apache License 2.0 4 votes vote down vote up
/**
 * onCallActivityOnCreate
 *
 * @param activity Activity
 */
private void onCallActivityOnCreate(Activity activity) {

    String packageName = activity.getPackageName();
    boolean isPlugin = isPlugin(packageName);

    if (!isPlugin) {
        return;
    }

    if (ProxyEnvironment.pluginHotStartTimeMap.get(packageName) != null) {
        long stamp = ProxyEnvironment.pluginHotStartTimeMap.get(packageName);
        long millis = SystemClock.elapsedRealtime() - stamp;
        if (stamp > -1 && millis > 0) {
            ReportManger.getInstance().onPluginHotLoad(activity.getApplicationContext(), packageName, millis);
            ProxyEnvironment.pluginHotStartTimeMap.remove(packageName);
        }
    }
    replacePluginPackageName2Host(activity);

    replaceSystemServices(activity);

    replaceWindow(activity);

    replaceExternalDirs(activity);

    // 初始化 activity layoutinflator and localactivity manager
    Activity parent = activity.getParent();
    if (parent != null && parent instanceof ActivityProxy) {
        ((ActivityProxy) parent).onBeforeCreate(activity);
    }

    if (Build.VERSION.SDK_INT < 23 /*Android m 6.0*/) {
        // bindservice trick begin
        // 如果在actiivty的 oncreate 中 binder service,token 中的 activity 对象为 null
        String className = "android.app.LocalActivityManager$LocalActivityRecord";
        Class clazz = null;
        try {
            clazz = Class.forName(className);
        } catch (ClassNotFoundException e) {
            if (DEBUG) {
                e.printStackTrace();
            }
        }

        IBinder token = JavaCalls.callMethod(activity.getBaseContext(), "getActivityToken");

        if (clazz != null && token != null && token.getClass().equals(clazz)) {
            Activity a = (Activity) JavaCalls.getField(token, "activity");
            if (a == null) {
                JavaCalls.setField(token, "activity", activity);
            }
        }
        // bindservice trick end
    } else {
        // 6.0 以上 Activity.mBase.mActvityToken 一直为 null,不使用也可以工作。
    }

}
 
Example 17
Source Project: keemob   File: FileUtils.java    License: MIT License 4 votes vote down vote up
@Override
 public void initialize(CordovaInterface cordova, CordovaWebView webView) {
 	super.initialize(cordova, webView);
 	this.filesystems = new ArrayList<Filesystem>();
     this.pendingRequests = new PendingRequests();

 	String tempRoot = null;
 	String persistentRoot = null;

 	Activity activity = cordova.getActivity();
 	String packageName = activity.getPackageName();

     String location = preferences.getString("androidpersistentfilelocation", "internal");

 	tempRoot = activity.getCacheDir().getAbsolutePath();
 	if ("internal".equalsIgnoreCase(location)) {
 		persistentRoot = activity.getFilesDir().getAbsolutePath() + "/files/";
 		this.configured = true;
 	} else if ("compatibility".equalsIgnoreCase(location)) {
 		/*
 		 *  Fall-back to compatibility mode -- this is the logic implemented in
 		 *  earlier versions of this plugin, and should be maintained here so
 		 *  that apps which were originally deployed with older versions of the
 		 *  plugin can continue to provide access to files stored under those
 		 *  versions.
 		 */
 		if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
 			persistentRoot = Environment.getExternalStorageDirectory().getAbsolutePath();
 			tempRoot = Environment.getExternalStorageDirectory().getAbsolutePath() +
 					"/Android/data/" + packageName + "/cache/";
 		} else {
 			persistentRoot = "/data/data/" + packageName;
 		}
 		this.configured = true;
 	}

 	if (this.configured) {
// Create the directories if they don't exist.
File tmpRootFile = new File(tempRoot);
         File persistentRootFile = new File(persistentRoot);
         tmpRootFile.mkdirs();
         persistentRootFile.mkdirs();

 		// Register initial filesystems
 		// Note: The temporary and persistent filesystems need to be the first two
 		// registered, so that they will match window.TEMPORARY and window.PERSISTENT,
 		// per spec.
 		this.registerFilesystem(new LocalFilesystem("temporary", webView.getContext(), webView.getResourceApi(), tmpRootFile));
 		this.registerFilesystem(new LocalFilesystem("persistent", webView.getContext(), webView.getResourceApi(), persistentRootFile));
 		this.registerFilesystem(new ContentFilesystem(webView.getContext(), webView.getResourceApi()));
         this.registerFilesystem(new AssetFilesystem(webView.getContext().getAssets(), webView.getResourceApi()));

         registerExtraFileSystems(getExtraFileSystemsPreference(activity), getAvailableFileSystems(activity));

 		// Initialize static plugin reference for deprecated getEntry method
 		if (filePlugin == null) {
 			FileUtils.filePlugin = this;
 		}
 	} else {
 		LOG.e(LOG_TAG, "File plugin configuration error: Please set AndroidPersistentFileLocation in config.xml to one of \"internal\" (for new applications) or \"compatibility\" (for compatibility with previous versions)");
 		activity.finish();
 	}
 }
 
Example 18
Source Project: reader   File: FileUtils.java    License: MIT License 4 votes vote down vote up
@Override
 public void initialize(CordovaInterface cordova, CordovaWebView webView) {
 	super.initialize(cordova, webView);
 	this.filesystems = new ArrayList<Filesystem>();

 	String tempRoot = null;
 	String persistentRoot = null;

 	Activity activity = cordova.getActivity();
 	String packageName = activity.getPackageName();
 	
 	String location = activity.getIntent().getStringExtra("androidpersistentfilelocation");
 	if (location == null) {
 		location = "compatibility";
 	}
 	tempRoot = activity.getCacheDir().getAbsolutePath();
 	if ("internal".equalsIgnoreCase(location)) {
 		persistentRoot = activity.getFilesDir().getAbsolutePath() + "/files/";
 		this.configured = true;
 	} else if ("compatibility".equalsIgnoreCase(location)) {
 		/*
 		 *  Fall-back to compatibility mode -- this is the logic implemented in
 		 *  earlier versions of this plugin, and should be maintained here so
 		 *  that apps which were originally deployed with older versions of the
 		 *  plugin can continue to provide access to files stored under those
 		 *  versions.
 		 */
 		if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
 			persistentRoot = Environment.getExternalStorageDirectory().getAbsolutePath();
 			tempRoot = Environment.getExternalStorageDirectory().getAbsolutePath() +
 					"/Android/data/" + packageName + "/cache/";
 		} else {
 			persistentRoot = "/data/data/" + packageName;
 		}
 		this.configured = true;
 	}

 	if (this.configured) {
// Create the directories if they don't exist.
new File(tempRoot).mkdirs();
new File(persistentRoot).mkdirs();

 		// Register initial filesystems
 		// Note: The temporary and persistent filesystems need to be the first two
 		// registered, so that they will match window.TEMPORARY and window.PERSISTENT,
 		// per spec.
 		this.registerFilesystem(new LocalFilesystem("temporary", cordova, tempRoot));
 		this.registerFilesystem(new LocalFilesystem("persistent", cordova, persistentRoot));
 		this.registerFilesystem(new ContentFilesystem(cordova, webView));

         registerExtraFileSystems(getExtraFileSystemsPreference(activity), getAvailableFileSystems(activity));

 		// Initialize static plugin reference for deprecated getEntry method
 		if (filePlugin == null) {
 			FileUtils.filePlugin = this;
 		}
 	} else {
 		Log.e(LOG_TAG, "File plugin configuration error: Please set AndroidPersistentFileLocation in config.xml to one of \"internal\" (for new applications) or \"compatibility\" (for compatibility with previous versions)");
 		activity.finish();
 	}
 }
 
Example 19
Source Project: PictureSelector   File: PSUtil.java    License: Apache License 2.0 4 votes vote down vote up
public static String getAuthorities(Activity activity) {
    return activity.getPackageName() + ConstantData.VALUE_AUTHORITIES;
}
 
Example 20
Source Project: UCDLive_Android   File: PermissionsActivity.java    License: MIT License 3 votes vote down vote up
public static void startActivityForResult(Activity activity, int requestCode, String... permissions) {
    Intent intent = new Intent(activity, PermissionsActivity.class);

    EXTRA_PERMISSIONS = activity.getPackageName() + ".extra_permission";

    intent.putExtra(EXTRA_PERMISSIONS, permissions);

    ActivityCompat.startActivityForResult(activity, intent, requestCode, null);
}