2014-01-15 34 views
1

我剛開始探索Google Glass功能。我試圖製作一個應用程序來記錄來自Google Glass的傳感器數據。我曾經在Android手機成功運行的代碼:如何將數據寫入Google Glass

public BufferedWriter file; 
    private void startRecording(){ 
     //Prepare data storage 
     File directory = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); 

     String name = "Accelerometer_" + System.currentTimeMillis() + ".csv"; 
     File filename = new File(directory, name); 
     try{ 
      file = new BufferedWriter(new FileWriter(filename)); 
     }catch(IOException e){ 
      e.printStackTrace(); 
     } 
     for(Sensor sensor:sensors.values()){ 
      sensorManager.registerListener(sensorListener, sensor, SensorManager.SENSOR_DELAY_NORMAL); 
     } 
    } 

在那之後,我用文件到傳感器的值寫入csv文件。它在Android手機上運行良好。但在谷歌眼鏡,它拋出一個異常:

java.io.FileNotFoundException: /mnt/sdcard/Download/Accelerometer_1389803215753.csv: open failed: EACCES (Permission denied) 

問題:

  1. 是否需要寫權限的文件?

  2. 即使我可以將文件寫入Google Glass的數據存儲,我該如何讀取?爲了查看文件裏面的內容,我必須對它進行root嗎?

  3. 有沒有其他方法可以記錄來自Google Glass的傳感器數據?我正在考慮通過藍牙向Android設備發送數據,但似乎更復雜。

+0

你嘗試也許它寫入數據庫? –

+0

對不起,我沒有徹底檢查,我在AndroidManifest.xml中缺少使用權限行現在我想我可以將數據寫入Google Glass。但現在,我怎樣才能讀出數據文件呢?是否有必要根谷歌瀏覽器查看其數據文件? –

回答

0

讀回我這樣做,並能得到它的工作

BufferedReader reader; 
      try { 
       reader = new BufferedReader(new FileReader(file.getAbsolutePath())); 
       String line = null; 
       String MutantString = ""; 
       while ((line = reader.readLine()) != null) { 
        MutantString += line; 
       } 

       t.setText(MutantString); 
      } catch (FileNotFoundException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      }catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 


    return MutantString