static String dispatch(final Context context, final Intent intent) {
		final String action = intent.getAction();
		if (action == null) return "No action";
		boolean positive = false;
		switch (action) {
		case Api.latest.ACTION_FREEZE: positive = true;		// Fall-through
		case Api.latest.ACTION_UNFREEZE:
			final boolean hidden = positive;
			return processPackageUri(intent, null, pkg -> IslandManager.ensureAppHiddenState(context, pkg, hidden));
		case Api.latest.ACTION_LAUNCH:
			return launchActivity(context, intent);
		case Api.latest.ACTION_SUSPEND: positive = true;	// Fall-through
		case Api.latest.ACTION_UNSUSPEND:
			final boolean suspended = positive;
			return processPackageUri(intent, pkgs -> setPackageSuspended(context, pkgs, suspended), null);
		default: return "Unsupported action: " + action;
		}
	}
@return null for success, or error message for debugging purpose (NOT part of the API protocol).
engine/src/main/java/com/oasisfeng/island/api/ApiDispatcher.java