簡體   English   中英

在MainActivity.java文件中向哈希密碼添加代碼的位置

[英]Where to add code to hash password in my MainActivity.java file

我必須創建一個從用戶獲取用戶名和密碼的Activity 然后它將MD5哈希值應用於密碼,最后查詢本地數據庫以返回“true”或“false”。

我從博客中獲得了MD5代碼段。 代碼片段在eclipse上顯示以下錯誤:

標記的第1行:此行的多個標記

  • 令牌上的語法錯誤,錯放的構造(s)
  • 語法錯誤,插入“enum Identifier”以完成EnumHeader
  • 令牌“String”上的語法錯誤,@ expected
  • 令牌“String”上的語法錯誤,@ expected

標記第2行:令牌上的語法錯誤,錯放的構造(s)

標記第3行:令牌上的語法錯誤,錯放的構造(s)

標記的第4行:此行的多個標記

  • 令牌“catch”上的語法錯誤,預期的標識符
  • 令牌“}”上的語法錯誤,{此標記后的預期

我是java和Android環境的新手。 請告訴我代碼有什么問題,我應該在哪里放置md5哈希函數的代碼,以便我的活動正常工作。 另請指導我查詢本地SQLite數據庫並從那里返回所需的值。

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

private String md5(String in) {  //line 1
    MessageDigest digest;        //line 2
    try {                        //line 3
        digest = MessageDisgest.getInstance("MD5");
        digest.reset();
        digest.update(in.getBytes());
        byte[] a = digest.digest();
        int len = a.length;
        StringBuilder sb = new StringBuilder(len << 1);
        for(int i=0;i<len;i++) {
            sb.append(Character.forDigit((a[i] & 0xf0) >> 4, 16));
            sb.append(Character.forDigit(a[i] & 0x0f, 16));
        }
        return sb.toString();
    } catch (NoSuchAlgorithmException e) { e.printStackTrace();} //line 4
    return null;

}

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);



    Button btn = (Button) findViewById(R.id.button1);
    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            EditText text = (EditText)findViewById(R.id.editText1);
            EditText text1 = (EditText)findViewById(R.id.editText2);
            String userid = text.getText().toString();
            String pass = text1.getText().toString();
        Toast.makeText(MainActivity.this,"Entered"+userid+"and password entered is"+pass,Toast.LENGTH_SHORT).show();
        }

    });

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

}

在Java中,所有方法都必須存在類中。

public class MainActivity extends Activity {
    private String md5(String in) {
        // etc
    }

    // Rest of class
}

我是java和android環境的新手。

您可以從閱讀教程或介紹中找到許多好處,例如從語言作者那里學習Java語言

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM