-
-
package com.cia.settings;
-
import android.app.Activity;
-
import android.content.SharedPreferences;
-
import android.content.SharedPreferences.Editor;
-
import android.os.Bundle;
-
import android.view.KeyEvent;
-
import android.widget.EditText;
-
import android.widget.TextView;
-
public class MainActivity extends Activity
-
{
-
private EditText et_server,et_backup,et_upgrade;
-
private TextView tv_show_version,tv_show_mac;
-
private SharedPreferences sharedPrefrences;
-
private Editor editor;
-
// 要存储的文件名
-
private static final String FILENAME = "filename";
-
@Override
-
public void onCreate(Bundle savedInstanceState)
-
{
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.main);
-
et_server = (EditText) findViewById(R.id.edit_server);
-
et_backup = (EditText) findViewById(R.id.edit_backup);
-
et_upgrade = (EditText) findViewById(R.id.edit_upgrade);
-
-
sharedPrefrences = this.getSharedPreferences(FILENAME, MODE_WORLD_READABLE);
-
-
-
String r_server = sharedPrefrences.getString("server", "");
-
String r_backup = sharedPrefrences.getString("backup", "");
-
String r_upgrade= sharedPrefrences.getString("upgrade", "");
-
et_server.setText(r_server);
-
et_backup.setText(r_backup);
-
et_upgrade.setText(r_upgrade);
-
-
-
}
-
-
//在点击退出时保存数据
-
@Override
-
public boolean onKeyDown(int keyCode, KeyEvent event)
-
{
-
// 得到编辑器对象
-
editor = getSharedPreferences(FILENAME, MODE_WORLD_WRITEABLE).edit();
-
if(keyCode==KeyEvent.KEYCODE_BACK)
-
{
-
String server=et_server.getText().toString();
-
String backup=et_backup.getText().toString();
-
String upgrade=et_upgrade.getText().toString();
-
editor.putString("server", server);
-
editor.putString("backup", backup);
-
editor.putString("upgrade", upgrade);
-
editor.commit();
-
}
-
return super.onKeyDown(keyCode, event);
-
}
-
复制代码
第二种方法, if class extends frame.
-
-
-
package com.android.settings;
-
import java.io.BufferedReader;
-
import java.io.FileReader;
-
import java.io.IOException;
-
import java.util.regex.Matcher;
-
import java.util.regex.Pattern;
-
import android.app.Fragment;
-
import android.content.Context;
-
import android.content.SharedPreferences;
-
import android.content.SharedPreferences.Editor;
-
import android.os.Build;
-
import android.os.Bundle;
-
import android.os.SystemProperties;
-
import android.util.Log;
-
import android.view.LayoutInflater;
-
import android.view.View;
-
import android.view.View.OnClickListener;
-
import android.view.ViewGroup;
-
import android.widget.Button;
-
import android.widget.EditText;
-
import android.widget.TextView;
-
public class JumpTvSettings extends Fragment implements OnClickListener
-
{
-
private EditText et_server, et_backup, et_upgrade;
-
private TextView tv_show_version, tv_show_mac;
-
private Editor editor;
-
private Button btn;
-
-
private static final String TAG = "JumpTvSettings_mac";
-
private static final String LOG_TAG="jumTv_Settings_version";
-
-
private SharedPreferences mPrefs;
-
// 要存储的文件名
-
private static final String FILENAME = "filename_jumpTv";
-
-
private static final String CONFIG_PATH = "/sys/class/efuse/mac";
-
private static final String FILENAME_PROC_VERSION = "/proc/version";
-
-
private static final String KEY_FIRMWARE_VERSION = "firmware_version";
-
-
@Override
-
public View onCreateView(LayoutInflater inflater, ViewGroup container,
-
Bundle savedInstanceState)
-
{
-
View v=inflater.inflate(R.layout.jump_page, container, false);
-
et_server = (EditText)v.findViewById(R.id.edit_server);
-
et_backup = (EditText)v.findViewById(R.id.edit_backup);
-
et_upgrade = (EditText)v.findViewById(R.id.edit_upgrade);
-
btn=(Button)v.findViewById(R.id.btn_submit);
-
btn.setOnClickListener(this);
-
et_upgrade = (EditText)v.findViewById(R.id.edit_upgrade);
-
tv_show_version = (TextView)v.findViewById(R.id.txt_show_version);
-
tv_show_mac = (TextView)v.findViewById(R.id.txt_show_mac);
-
mPrefs = getActivity().getSharedPreferences(FILENAME, Context.MODE_WORLD_READABLE);
-
String r_server = mPrefs.getString("server", "");
-
String r_backup = mPrefs.getString("backup", "");
-
String r_upgrade= mPrefs.getString("upgrade", "");
-
et_server.setText(r_server);
-
et_backup.setText(r_backup);
-
et_upgrade.setText(r_upgrade);
-
tv_show_mac.setText(new StringBuilder(this.getEthMacfromEfuse()).toString());
-
tv_show_version.setText(Build.VERSION.RELEASE);
-
tv_show_version.setEnabled(true);
-
return v;
-
}
-
-
/**
-
* Reads a line from the specified file.
-
* @param filename the file to read from
-
* [url=home.php?mod=space&uid=7300]@return[/url] the first line, if any.
-
* @throws IOException if the file couldn't be read
-
*/
-
private String readLine(String filename) throws IOException {
-
BufferedReader reader = new BufferedReader(new FileReader(filename), 256);
-
try {
-
return reader.readLine();
-
} finally {
-
reader.close();
-
}
-
}
-
private String getFormattedKernelVersion() {
-
String procVersionStr;
-
try {
-
procVersionStr = readLine(FILENAME_PROC_VERSION);
-
final String PROC_VERSION_REGEX =
-
"[url=file://w+//s][color=#0066cc]\\w+\\s[/color][/url]+" + /* ignore: Linux */
-
"[url=file://w+//s][color=#0066cc]\\w+\\s[/color][/url]+" + /* ignore: version */
-
"([^\\s]+)\\s+" + /* group 1: 2.6.22-omap1 */
-
"错误!超链接引用无效。" + /* group 2: ([url=mailto:xxxxxx@xxxxx.constant][color=#0066cc]xxxxxx@xxxxx.constant[/color][/url]) */
-
"错误!超链接引用无效。" + /* ignore: (gcc ..) */
-
"([^\\s]+)\\s+" + /* group 3: #26 */
-
"(?:PREEMPT\\s+)?" + /* ignore: PREEMPT (optional) */
-
"(.+)"; /* group 4: date */
-
Pattern p = Pattern.compile(PROC_VERSION_REGEX);
-
Matcher m = p.matcher(procVersionStr);
-
if (!m.matches()) {
-
Log.e(LOG_TAG, "Regex did not match on /proc/version: " + procVersionStr);
-
return "Unavailable";
-
} else if (m.groupCount() < 4) {
-
Log.e(LOG_TAG, "Regex match on /proc/version only returned " + m.groupCount()
-
+ " groups");
-
return "Unavailable";
-
} else {
-
return (new StringBuilder(m.group(1)).append("\n").append(
-
m.group(2)).append(" ").append(m.group(3)).append("\n")
-
.append(m.group(4))).toString();
-
}
-
} catch (IOException e) {
-
Log.e(LOG_TAG,
-
"IO Exception when getting kernel version for Device Info screen",
-
e);
-
return "Unavailable";
-
}
-
}
-
// 获取mac地址
-
private String getEthMacfromEfuse()
-
{
-
String sn = null;
-
try
-
{
-
BufferedReader reader = new BufferedReader(new FileReader(CONFIG_PATH), 12);
-
try
-
{
-
sn = reader.readLine();
-
}finally
-
{
-
reader.close();
-
}
-
Log.d(TAG, "/sys/class/efuse/mac: " + sn);
-
if (sn.equals("00:00:00:00:00:00"))
-
return SystemProperties.get("ubootenv.var.ethaddr",getString(R.string.status_unavailable));
-
else
-
return sn;
-
} catch (IOException e)
-
{
-
Log.e(TAG,"IO Exception when getting serial number for Device Info screen",e);
-
// return "null";
-
return SystemProperties.get("ubootenv.var.ethaddr",getString(R.string.status_unavailable));
-
}
-
}
-
-
@Override
-
public void onPause()
-
{
-
//界面失去控制权时保存数据
-
editor =getActivity().getSharedPreferences(FILENAME, Context.MODE_WORLD_WRITEABLE).edit();
-
String server = et_server.getText().toString();
-
String backup = et_backup.getText().toString();
-
String upgrade = et_upgrade.getText().toString();
-
editor.putString("server", server);
-
editor.putString("backup", backup);
-
editor.putString("upgrade", upgrade);
-
editor.commit();
-
super.onPause();
-
}
-
-
public void onSaveInstanceState(Bundle outState) {
-
//界面销毁之前保存数据
-
super.onSaveInstanceState(outState);
-
outState.putString("server", et_server.getText().toString());
-
outState.putString("server", et_backup.getText().toString());
-
outState.putString("server", et_upgrade.getText().toString());
-
}
-
}
-
-
/*
-
* 取文件中的值
-
*/
-
public void onCreate(Bundle savedInstanceState) {
-
super.onCreate(savedInstanceState);
-
Context context = null;
-
try {
-
context = createPackageContext("com.android.settings", Context.CONTEXT_IGNORE_SECURITY);
-
} catch (NameNotFoundException e) {
-
// TODO Auto-generated catch block
-
e.printStackTrace();
-
}
-
SharedPreferences settings = context.getSharedPreferences("filename_jumpTv",
-
Context.MODE_WORLD_READABLE);
-
String server = settings.getString("server", " ");
-
String backup = settings.getString("backup", " ");
-
Log.d("SharedPreferences", "server:" + server + ", backup:" + backup);
-
Log.d("SharedPreferences", "获取数据成功");
-
Uri server_uri = Uri.parse(server);
-
Uri backup_uri = Uri.parse(backup);
-
Intent intent1 = new Intent(Intent.ACTION_VIEW, server_uri);
-
Intent intent2 = new Intent(Intent.ACTION_VIEW, backup_uri);
-
startActivity(intent1);
-
startActivity(intent2);
-
}
|