adb push:文件在哪里?

时间:2012-02-02 23:07:26

标签: android adb

我创建了一个非常简单的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

1 个答案:

答案 0 :(得分:1)

AFAIK如果没有root权限,您将无法访问/data。您应该将文件添加到Activity.getFilesDir(),转换为/data/data/com.yourapp/files