初学android,想学个验证码生成 想学一下验证码的生成,就是用户注册时出来验证码让用户填写,应该怎么实现啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 譬如说,我在网上搜了好多java生成验证码的例子,都需要修改web.xml代码,但是android程序里没有这个xml文件。我要重新建一个吗 这个简单呀,创建一张空的图片,然后在图片上绘制数字或者字母,最后把图片拿出来用就好了。Bitmap bitmap = Bitmap.createBitmap(64, 64, Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); canvas.drawText("A1B2", 0, 0, new Paint()); 不需要xml文件吧。这样写不可以么?这是我的方法。不知道是否符合你的要求。public static int RandomInt(int Start,int End){ return (int) ((Math.random()*100)%(End-Start+1)+Start);}比如生成4个验证码int []Code = new [4];for(int i=0;i<4;i++){ Code[i] = RandomInt(0,99);}调用图片的时候for(int i=0;i<4;i++){ switch(Code[i]) { case XX: canvas.draw ....这里可以画图,也可以写文字。随便了。 }}当客户端传递上来4个字符的时候,只要跟Code比较就可以了。相等ok。不等就sorry。 http://developer.aiwgame.com/achieve-the-verification-code-in-android.htmlprotected void onDraw(Canvas canvas) { /* set backgroud clolr */ canvas.drawColor(Color.GRAY); canvas.save(); canvas.translate(10, 10); /* set paint color */ mPaint.setColor(Color.BLUE); // build random code Random random = new Random(); String sRand = ""; for (int i = 0; i < 4; i++) { String rand = String.valueOf(random.nextInt(10)); canvas.drawText(rand, TEXT_SIZE * i + 4, 10, mPaint); sRand += rand; } saveCode(sRand); canvas.restore(); } 参考这里http://developer.aiwgame.com/achieve-the-verification-code-in-android.html 怎么获取verifyCodeView上的内容呢 语言识别,会的请进 求教:短信拦截模拟器正常运行,为何在真机上一收到短信就挂了~? 求教:如何设置手机的默认时区 程序是2.2版本下开发的,当用户在低版本系统中安装时如何提示他系统不支持? 购买何种电脑配置能进行android应用软件开发比较顺畅??? 动态按钮列表显示 在adb中的vi怎么使用 用oauth.signpost框架做认证时CommonsHttpOAuthProvider方法应该是运行了,但是界面不跳转,部分代码如下。。新手求指导 安卓防火墙的设计与实现 关于android 7.0版本的socket问题 【求助】SDK安装问题 谁有android项目设计文档?
Canvas canvas = new Canvas(bitmap);
canvas.drawText("A1B2", 0, 0, new Paint());
这样写不可以么?这是我的方法。不知道是否符合你的要求。public static int RandomInt(int Start,int End)
{
return (int) ((Math.random()*100)%(End-Start+1)+Start);
}
比如生成4个验证码
int []Code = new [4];
for(int i=0;i<4;i++)
{
Code[i] = RandomInt(0,99);
}
调用图片的时候
for(int i=0;i<4;i++)
{
switch(Code[i])
{
case XX:
canvas.draw ....这里可以画图,也可以写文字。随便了。
}
}当客户端传递上来4个字符的时候,只要跟Code比较就可以了。相等ok。不等就sorry。
/* set backgroud clolr */
canvas.drawColor(Color.GRAY); canvas.save();
canvas.translate(10, 10);
/* set paint color */
mPaint.setColor(Color.BLUE);
// build random code
Random random = new Random();
String sRand = "";
for (int i = 0; i < 4; i++) {
String rand = String.valueOf(random.nextInt(10));
canvas.drawText(rand, TEXT_SIZE * i + 4, 10, mPaint);
sRand += rand;
}
saveCode(sRand);
canvas.restore();
}
http://developer.aiwgame.com/achieve-the-verification-code-in-android.html