1

スクリーンショットフォルダーに反応して最初に乾杯するアプリを作成しようとしています. 問題は、スクリーンショットを撮ってもトーストやログがないことです。私のオブザーバークラスのコードは次のとおりです。

public class listeningInit extends FileObserver {
private static final String TAG = "File listener";
public String absolutePath;
public listeningInit(String path) {
    super(path, FileObserver.ALL_EVENTS);
    absolutePath = path;
}

@Override
public void onEvent(int event, String path) {
    if ((FileObserver.CREATE & event)!=0) {
        Log.v(TAG, absolutePath + "/" + path + " is created\n");
        Context context = getContext();
        int duration = Toast.LENGTH_SHORT;
        Toast toast = Toast.makeText(context, "Folder action!", duration);
        toast.show();
    }
}

private Context getContext() {
    // TODO Auto-generated method stub
    return null;
}

そして、これが .startWatching を行うアクティビティのコードです

public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    listeningInit startObs = new listeningInit("/Pictures/Screenshots/");
    startObs.startWatching();

    //Checking if this is a first run
    Boolean firstRun = false;
    SharedPreferences run = getSharedPreferences("MYPREFS", 0);
    firstRun = run.getBoolean("fr", true);
    //if true launch tutorial activity 
    if(firstRun == true){
        Intent k = new Intent(MainActivity.this, Tutorial.class);
        startActivity(k);
    }
}

コードによってスローされたエラーはありません。応答していないだけで、その理由について少しの手がかりがありません。

4

0 に答える 0