我遇到了將文件寫入Android存儲的問題。我用了很多的例子,最惱人的問題是如何將密碼保存到android上的文件?
java.io.FileNotFoundException:/存儲/模擬/ 0 /安卓/ fileSD(拒絕)
是的,我將使用-permission我的清單
這是我的活動:
public class MainActivity extends Activity {
// init variables
EditText pass;
Button login;
String password;
// final String DIR_SD = "/Android";
// final String FILENAME_SD = "fileSD";
// final String LOG_TAG = "myLogs";
//init onCreate method that provide our logic when activity start open
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// if(mFileName.()){
//
// }
pass = (EditText) findViewById(R.id.pass);
login = (Button) findViewById(R.id.button);
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
password = pass.getText().toString().trim();
if (TextUtils.isEmpty(password)) {
pass.setError("password mustnot be empty");
pass.focusSearch(View.FOCUS_DOWN);
} else if (password.length() >= 6 && password.length() <= 24) {
Toast.makeText(getApplicationContext(), "validation sucess", Toast.LENGTH_LONG).show();
Intent intent = new Intent(MainActivity.this, new_activity.class);
startActivity(intent);
} else {
pass.setError("password length must be match:5=<password>=10");
pass.focusSearch(View.FOCUS_DOWN);
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
如果在第一次用戶打開應用程序時,他輸入密碼,它應該寫入文件。如果文件存在,我們應該讀取它並與用戶將要輸入的通行證進行比較,如果它等於開始新活動,則顯示不正確通過的消息。
請大家幫忙,我嘗試了幾天做到這一點,IDK的是我應該做的
你的閱讀文件代碼在哪裏? –
你不想讀取上面的代碼中的任何文件 –
1)Android API 23+你必須請求運行時權限2)爲什麼不使用SharedPrefences? –