サーバーの IP とパスを Android フォームの Shared プリファレンスで保存し、後で別の Java プログラムでそれらの値を取得したいと考えています。サーバーに接続してファイルをダウンロードします。等
したがって、最初に共有設定値をNew.javaに出力しようとしました。値はSetting.javaに保存されています。最初の Java ファイルは 2 番目のファイルを呼び出しており、「ようこそ」が出力されていますが、共有設定に保存されている値は表示されません。印刷されます。
以下は私のファイルです:
設定.java
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class Setting extends Activity {
protected static final Toast NULL = null;
Button btn1;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.setting_page);
btn1 = (Button) findViewById(R.id.btn1);
final EditText ip = (EditText) findViewById(R.id.ip);
final EditText path = (EditText)findViewById(R.id.path);
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences settings = getSharedPreferences("IP_PATH",0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("flag",true);
editor.putString("IP",ip.getText().toString());
editor.putString("PATH",path.getText().toString());
editor.commit();
Intent i = new Intent(Setting.this,New.class);
//intent.putExtra("username",getIntent().getExtras().getString("username").toString());
startActivity(i);
}
});
}
}
New.java
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
public class New extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.data);
//System.out.println("Welcome to the home page !!");
TextView tv = (TextView) findViewById(R.id.TextView01);
tv.setText("Welcome");
SharedPreferences prfs = getSharedPreferences("IP_PATH", 0);
String s = prfs.getString("IP", "");
Toast.makeText(New.this, s , Toast.LENGTH_LONG).show();
}
}
エラー:
06-16 00:06:25.900: I/Adreno200-EGL(23644): Local Patches: NONE
06-16 00:06:25.900: I/Adreno200-EGL(23644): Reconstruct Branch: NOTHING
06-16 00:06:37.740: D/-heap(23644): GC_CONCURRENT freed 152K, 4% free 8035K/8327K, paused 13ms+2ms, total 49ms
06-16 00:17:27.690: E/Trace(24124): error opening trace file: No such file or directory (2)
06-16 00:17:28.030: I/Adreno200-EGL(24124): <qeglDrvAPI_eglInitialize:299>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_JB_REL_RB1.04.01.01.06.043_msm7627a_JB_REL_RB1.2_Merge_release_AU (Merge)
06-16 00:17:28.030: I/Adreno200-EGL(24124): Build Date: 01/29/13 Tue
06-16 00:17:28.030: I/Adreno200-EGL(24124): Local Branch:
06-16 00:17:28.030: I/Adreno200-EGL(24124): Remote Branch: m/jb_rel_rb1.2
06-16 00:17:28.030: I/Adreno200-EGL(24124): Local Patches: NONE
06-16 00:17:28.030: I/Adreno200-EGL(24124): Reconstruct Branch: NOTHING
06-16 00:17:36.120: D/-heap(24124): GC_CONCURRENT freed 174K, 5% free 7985K/8327K, paused 17ms+2ms, total 40ms