2017-04-11 65 views
0

通過executeShellCommand執行shell cmd 「echo測試> /sdcard/testlog.txt」 我嘗試創建與外殼CMD的新文件:在UiAutomator 2.0

echo test > /sdcard/testlog.txt 

但是,當我在UiAutomator 2.0 executeShellCommand做。 結果將僅爲echo "test > /sdcard/testlog.txt",而不是使用content:test創建testlog.txt。

我該如何執行這樣的shell cmd?

的代碼是:

 String cmd = "echo test > /sdcard/testlog.txt"; 
     Log.i("AndroidUiTool2", mDevice.executeShellCommand(cmd)); 

結果是:

04-11 14:55:08.559 21520-21550/com.transsion.smoketest I/AndroidUiTool2: test > /sdcard/testlog.txt 

回答

1

你可以試試這個代碼:

體現

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

testclass.java

FileWriter fw = new FileWriter(Environment.getExternalStorageDirectory() + "/testlog.txt", true);  
BufferedWriter bw = new BufferedWriter(fw); 
bw.write("test");  
bw.close();  

設置>應用程序>選擇您的應用程序>啓用存儲權限
它會寫的 「test」 testlog.txt從設備

0

您可以嘗試

String cmd = = "sh -c 'echo test > /sdcard/testlog.txt'";