Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在哪里向my MainActivity.java文件中的哈希密码添加代码_Java_Android_Sqlite_Md5 - Fatal编程技术网

在哪里向my MainActivity.java文件中的哈希密码添加代码

在哪里向my MainActivity.java文件中的哈希密码添加代码,java,android,sqlite,md5,Java,Android,Sqlite,Md5,我必须创建一个活动,从用户那里获取用户名和密码。然后对密码应用MD5哈希,最后查询本地数据库以返回“true”或“false” 我从一个网站上获得了MD5代码片段。代码段显示了eclipse上的以下错误: 标记行1:此行有多个标记 令牌上的语法错误,构造位置错误 语法错误,请插入“枚举标识符”以完成枚举标头 令牌“字符串”上的语法错误,应为@ 令牌“字符串”上的语法错误,应为@ 标记行2:标记上的语法错误,构造错误 标记行3:标记上的语法错误,构造错误 标记行4:此行有多个标记 令牌“ca

我必须创建一个
活动
,从用户那里获取用户名和密码。然后对密码应用MD5哈希,最后查询本地数据库以返回“true”或“false”

我从一个网站上获得了MD5代码片段。代码段显示了eclipse上的以下错误:

标记行1:此行有多个标记

  • 令牌上的语法错误,构造位置错误
  • 语法错误,请插入“枚举标识符”以完成枚举标头
  • 令牌“字符串”上的语法错误,应为@
  • 令牌“字符串”上的语法错误,应为@
标记行2:标记上的语法错误,构造错误

标记行3:标记上的语法错误,构造错误

标记行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;
}

}
import java.security.MessageDigest;
导入java.security.NoSuchAlgorithmException;
私有字符串md5(字符串位于){//第1行
MessageDigest;//第2行
试试{//第3行
digest=MessageDisgest.getInstance(“MD5”);
reset();
update(在.getBytes()中);
字节[]a=摘要。摘要();
int len=a.长度;
StringBuilder sb=新StringBuilder(第4、16节));
sb.append(字符forDigit(a[i]&0x0f,16));
}
使某人返回字符串();
}catch(nosuchalgorithme异常){e.printStackTrace();}//第4行
返回null;
}
公共类MainActivity扩展了活动{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
按钮btn=(按钮)findViewById(R.id.button1);
btn.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
EditText=(EditText)findViewById(R.id.editText1);
EditText text1=(EditText)findViewById(R.id.editText2);
字符串userid=text.getText().toString();
String pass=text1.getText().toString();
Toast.makeText(MainActivity.this,“输入”+userid+,输入的密码是“+pass,Toast.LENGTH_SHORT).show();
}
});
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.activity\u主菜单);
返回true;
}
}

在Java中,所有方法都必须存在于一个类中


我对java和android环境非常陌生


你会从阅读教程或介绍中发现很多好处,比如从语言的作者那里

在Java中,所有方法都必须存在于一个类中


我对java和android环境非常陌生


你会从阅读教程或介绍中发现很多好处,比如从语言的作者那里

你的问题有两个截然不同的部分。我建议保留这个问题,以确定将MD5函数放在何处。对于问题的SQLite查询部分,您可以在StackOverflow中搜索答案,因为这个主题已经有很多问题了。您的问题有两个非常不同的部分。我建议保留这个问题,以确定将MD5函数放在何处。对于问题的SQLite查询部分,您可以在StackOverflow中搜索答案,因为这个主题已经有很多问题了。
public class MainActivity extends Activity {
    private String md5(String in) {
        // etc
    }

    // Rest of class
}