2010-04-12 2 views
0

В моем приложении я хочу создать каталог xyz в sdcard во время выполнения из моего приложения.выполнить команду adb shell во время выполнения из приложения android

Но это не сработает.

Вот мой код ..

public class process extends Activity 
{ 

/** Called when the activity is first created. */ 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    String[] str ={"mkdir","/sdcard/xyz"}; 

    try { 
     Process ps = Runtime.getRuntime().exec(str); 
     try { 
      ps.waitFor(); 
     } catch (InterruptedException e) { 
      e.printStackTrace(); 
     } 
    } catch (IOException e) { 
     Toast.makeText(this, ""+e, Toast.LENGTH_LONG).show(); 
    } 

} 
} 
+0

Вы не можете запускать ** команды оболочки ** adb ** из приложения, так как оболочка adb является оболочкой, полученной с помощью демона adb. В настоящий момент вы можете запускать общие команды оболочки в качестве пользователя приложения, но это официально обескураживает. Есть относительно мало оснований считать это, то, что может быть легко достигнуто в вашем процессе подачи заявки, определенно не является одним из них. –

ответ

1

Я понятия не имею, если вы можете EXEC() скрипты в Android, я сильно подозреваю, что вы не можете.

Вам все равно не нужно создавать каталог. Сделайте следующее:

новый файл ("/ sdcard/xyz"). Mkdirs();

0

Используйте нижеприведенный код для создания каталога в sdcard.

File dir = new File("/mnt/sdcard/xyz"); 
try{ 
    if(dir.mkDir()) { 
     System.out.println("Directory created"); 
    } else { 
     System.out.println("Directory is not created"); 
}catch(Exception e){ 
    e.printStacktrace(); 
} 

и добавить ниже использует-разрешение файла манифеста android.

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

 Смежные вопросы

  • Нет связанных вопросов^_^