2015-07-13 51 views
-1

我正在使用LibGDX學習偏好設置。我可以在Windows和Android設備上成功運行以下代碼。文件「MyDemo」存儲在我的C:驅動器用戶目錄的 中。這是完美的。我也可以成功運行Android設備中的代碼。但是,我找不到文件「MyDemo」。沒有什麼 在安卓/數據/ ...LibGDX - 在Android設備中找不到偏好位置

package com.hkprogram.mydemo; 

import com.badlogic.gdx.ApplicationListener; 
import com.badlogic.gdx.Gdx; 
import com.badlogic.gdx.Preferences; 
import com.badlogic.gdx.graphics.Color; 
import com.badlogic.gdx.graphics.GL20; 
import com.badlogic.gdx.graphics.g2d.BitmapFont; 
import com.badlogic.gdx.graphics.g2d.SpriteBatch; 

public class MyDemo implements ApplicationListener { 

    private SpriteBatch batch; 
    private BitmapFont font1; 
    int screenWidth, screenHeight; 

    public Preferences prefs; 
    String name; 

    @Override 
    public void create() { 

     batch = new SpriteBatch();  
     font1 = new BitmapFont(); 
     font1.setColor(Color.BLACK); 
     font1.setScale(5); 
     screenWidth=Gdx.graphics.getWidth(); 
     screenHeight=Gdx.graphics.getHeight(); 

     Preferences prefs = Gdx.app.getPreferences("MyDemo"); 
     prefs.putString("Name", "Peter"); 
     prefs.flush(); 

     prefs = Gdx.app.getPreferences("MyDemo"); 
     name=prefs.getString("Name","no name stored"); 
     System.out.println("Name="+name);  
    } 

    @Override 
    public void dispose() { 
    } 
    @Override 
    public void pause() {  
    } 
    @Override 
    public void render() { 
     Gdx.gl.glClearColor(159/255.0f,220/255.0f,235/255.0f,0xff/255.0f); 
     Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);  
     batch.begin(); 
     font1.draw(batch, name, screenWidth/2, screenHeight/2); 
     batch.end(); 
    } 
    @Override 
    public void resize(int arg0, int arg1) {   
    } 
    @Override 
    public void resume() {  
    } 
} 
+0

http://stackoverflow.com/questions/6146106/where -are-shared-preferences-stored – vaxquis

+0

對不起。我已閱讀上述問題。我的問題是我無法在Android設備中找到data/...目錄。我認爲這是因爲我沒有root設備,也沒有簡單的方法來查看「data」目錄。我對嗎? – user1232250

+0

答案Skizo凝視你是一個很好的IMO - 但它幾乎是一個給定http://stackoverflow.com/a/9108524/719662 < - 這裏;另外,引用的問題的答案提到了找到這條路徑的其他方法。使用設備的外殼也是開始找到它的好方法。作爲一個側面說明,爲什麼你甚至需要知道路徑? – vaxquis

回答

0

你可以得到,你必須MyDemo這樣的路徑:

File MyDemoFile = getDatabasePath("MyDemo.txt"); //choose your extension 
if (MyDemoFile != null){ 
Log.d("Absolute path : ", MyDemoFile.getAbsolutePath()); 
}