package com.tws.plugin.servicemanager.util; import android.os.Bundle; import com.tws.plugin.servicemanager.compat.BundleCompat; /** * @author yongchen */ public class ParamUtil { public static final String service_name = "service_name"; public static final String method_name = "method_name"; public static final String method_args_count = "method_args_count"; public static final String result = "result"; public static Bundle wrapperParams(String name, String methodName, Object[] args) { Bundle params = new Bundle(); params.putString(service_name, name); params.putString(method_name, methodName); if (args != null && args.length >0) { params.putInt(method_args_count, args.length); for (int i = 0; i< args.length; i++) { BundleCompat.putObject(params, String.valueOf(i), args[i]); } } return params; } public static Object[] unwrapperParams(Bundle extras) { Object[] params = null; int maxKey = extras.getInt(method_args_count); if (maxKey > 0) { params = new Object[maxKey]; for(int i = 0; i< maxKey; i++) { params[i] = extras.get(String.valueOf(i)); } } return params; } public static Object getResult(Bundle bundle) { if (bundle != null) { return bundle.get(result); } return null; } }