/*
* Copyright (C) 2014 75py
*
* 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.nagopy.android.xposed.utilities.receiver;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import com.nagopy.android.common.helper.Preferences;
import com.nagopy.android.xposed.utilities.setting.AlwaysUsePerAppsList;
import com.nagopy.android.xposed.utilities.setting.AlwaysUsePerAppsList.PerAppsSetting;
import com.nagopy.android.xposed.utilities.util.Const;
import com.nagopy.android.xposed.utilities.util.Logger;
public class AlwaysPerAppsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
log("receive");
log(intent);
String launchedFrom = intent.getStringExtra(Const.EXTRA_LAUNCHED_FROM_PKG);
String targetPackageName = intent.getStringExtra(Const.EXTRA_TARGET_PACKAGE_NAME);
String targetActivityName = intent.getStringExtra(Const.EXTRA_TARGET_ACTIVITY_NAME);
String targetAction = intent.getStringExtra(Const.EXTRA_TARGET_ACTION);
PerAppsSetting alwaysUsePerApps = new PerAppsSetting();
alwaysUsePerApps.launchedFromPackageName = launchedFrom;
alwaysUsePerApps.targetPackageName = targetPackageName;
alwaysUsePerApps.targetActivityName = targetActivityName;
alwaysUsePerApps.targetAction = targetAction;
log(alwaysUsePerApps);
Preferences preferences = new Preferences(context);
AlwaysUsePerAppsList alwaysUsePerAppsList = preferences.getObject("always_use_per_apps",
AlwaysUsePerAppsList.class);
alwaysUsePerAppsList.list.add(alwaysUsePerApps);
log(alwaysUsePerAppsList);
preferences.putObject("always_use_per_apps", alwaysUsePerAppsList);
preferences.apply();
}
/**
* ログ出力を行う.
*
* @param obj
*/
private static void log(Object obj) {
Logger.d(AlwaysPerAppsReceiver.class.getSimpleName(), obj);
}
}