Here you can find the source of makeProcessBulder(Context context, List
public static ProcessBuilder makeProcessBulder(Context context, List<String> args)
//package com.java2s; /*// w ww . j av a 2 s . c om * Copyright 2011 Alex Hutter * * 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. */ import java.util.LinkedList; import java.util.List; import android.content.Context; public class Main { private static final String RSYNC_BINARY_NAME = "rsync"; public static ProcessBuilder makeProcessBulder(Context context, List<String> args) { List<String> procArgs = new LinkedList<String>(); procArgs.add(getRsyncBinaryPath(context)); procArgs.addAll(args); ProcessBuilder procBld = new ProcessBuilder(procArgs); procBld.redirectErrorStream(true); return procBld; } private static String getRsyncBinaryPath(Context context) { return getAppDataPath(context) + "/" + RSYNC_BINARY_NAME; } private static String getAppDataPath(Context context) { // FIXME is there a specific API for this? return "/data/data/" + context.getApplicationInfo().packageName; } }