我创建了一个非常简单的Android应用来测试adb push
。我基本上试图查看存储在数据目录中的文件列表。使用adb push
添加文件,我希望看到列表更改,但是虽然文件显示 DDMS Perspective ,但它们不在我的应用正在查看的数据目录中(因此`Activity显示 EMPTY ,如下面的代码所示。我应该推动的正确道路是什么,或者我做错了什么?
代码:
import java.io.File;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.os.Environment;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
public class TestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(updateView());
}
public View updateView() {
File[] files = Environment.getDataDirectory().listFiles();
LayoutInflater inflater;
inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.main, null);
TextView tv = (TextView) v.findViewById(R.id.text01);
String s = "";
if (files != null) {
for (File f : files) {
s += f.getName() + "\n";
}
}
else {
s = "EMPTY";
}
tv.setText(s);
return v;
}
}
命令:
./adb push myfile.txt /data/myfile.txt
答案 0 :(得分:1)
AFAIK如果没有root权限,您将无法访问/data
。您应该将文件添加到Activity.getFilesDir()
,转换为/data/data/com.yourapp/files