1.前言
是时候该写Android端了。。。
2.创建项目
3.导入xUtils3框架
送上xUtil3框架的传送门
附上jar包的下载地址:
百度云
七牛云
以及json的下载地址
七牛云
百度云
把jar包拷入libs
添加引用
4.编写代码
4.1 添加权限
xUtil3框架需要添加权限才能正常使用
需要添加一下权限:
4.2 添加基础类
在 src/main/jaba/com.imudges.app.androidclient 下添加一个BaseActivity
代码如下:
package com.imudges.app.androidclient;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import org.xutils.x;
/** * Created by HUPENG on 2017/4/30. */
public class BaseActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
x.view().inject(this);
}
}
4.3 修改登录界面资源文件
activity_login.xml 文件位于app/src/main/res/layout/app/src/main/res/layout/
修改之后:
4.4 完成登录界面逻辑
注意,服务器的地址要改成你自己的服务器的地址
package com.imudges.app.androidclient;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import org.xutils.common.Callback;
import org.xutils.http.RequestParams;
import org.xutils.view.annotation.ContentView;
import org.xutils.view.annotation.Event;
import org.xutils.view.annotation.ViewInject;
import org.xutils.x;
@ContentView(R.layout.activity_login)
public class LoginActivity extends BaseActivity {
@ViewInject(R.id.et_username)
private EditText etUsername;
@ViewInject(R.id.et_password)
private EditText etPassword;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Event(value = R.id.btn_login,type = View.OnClickListener.class)
private void onLoginBtnClick(View view){
/** * 这里填写你的服务器所在的IP地址替换我的ip地址 * */
try{
RequestParams params = new RequestParams("http://183.175.12.160:8899/login.action");
params.addQueryStringParameter("username",etUsername.getText().toString());
params.addQueryStringParameter("password",etPassword.getText().toString());
x.http().get(params, new Callback.CommonCallback() {
@Override
public void onSuccess(String s) {
JsonParser jsonParser = new JsonParser();
JsonObject jsonObject = (JsonObject) jsonParser.parse(s);
int code = jsonObject.get("code").getAsInt();
if (code == 0){
//执行登录成功操作
Toast.makeText(LoginActivity.this,jsonObject.get("msg").getAsString(),Toast.LENGTH_SHORT).show();
}else {
//执行登录失败操作
Toast.makeText(LoginActivity.this,jsonObject.get("msg").getAsString(),Toast.LENGTH_SHORT).show();
}
}
@Override
public void onError(Throwable throwable, boolean b) {
}
@Override
public void onCancelled(CancelledException e) {
}
@Override
public void onFinished() {
}
});
}catch (Exception e){
e.printStackTrace();
}
}
}
4.5 在包下新建MyApplication
package com.imudges.app.androidclient;
import android.app.Application;
import org.xutils.x;
/** * Created by HUPENG on 2017/4/30. */
/** * Created by yangyang on 2017/4/24. */
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
x.Ext.init(this);//Xutils初始化
x.Ext.setDebug(BuildConfig.DEBUG); // 是否输出debug日志, 开启debug会影响性能.
}
}
### 在清单文件中配置Application
```xml
package="com.imudges.app.androidclient">
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:name=".MyApplication">
下面就可以跑了~~~
最后附上项目源码:
七牛云
百度云