您的位置:首页 > 运维架构 > Linux

扣丁学堂笔记第26天云平台、Git与Linux

2016-04-07 18:41 423 查看
1.Bmob云服务



Bmob云服务实现简易增删改查代码

Person.java

package com.example.bmobtest;

import cn.bmob.v3.BmobObject;

public class Person extends BmobObject{

private String name;
private String address;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "Person [name=" + name + ", address=" + address + "]";
}

}


activity_main

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.bmobtest.MainActivity" >

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bmob云服务测试" />

<Button
android:id="@+id/button_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/textView1"
android:layout_marginTop="19dp"
android:text="添加数据"
android:onClick="addClick" />

<Button
android:id="@+id/button_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button_add"
android:layout_alignRight="@+id/button_add"
android:layout_below="@+id/button_add"
android:text="删除数据"
android:onClick="deleteClick"/>

<Button
android:id="@+id/button_update"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button_delete"
android:layout_alignRight="@+id/button_delete"
android:layout_below="@+id/button_delete"
android:text="更新数据"
android:onClick="updateClick" />

<Button
android:id="@+id/button_query"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button_update"
android:layout_alignRight="@+id/button_update"
android:layout_below="@+id/button_update"
android:text="查询数据"
android:onClick="queryClick" />

</RelativeLayout>


MainActivity

package com.example.bmobtest;

import cn.bmob.v3.Bmob;
import cn.bmob.v3.BmobQuery;
import cn.bmob.v3.listener.DeleteListener;
import cn.bmob.v3.listener.GetListener;
import cn.bmob.v3.listener.SaveListener;
import cn.bmob.v3.listener.UpdateListener;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化Bmob
Bmob.initialize(this, "7e705209d5a43852b4fa855219507807");
}

//添加数据
public void addClick(View view) {

Person p = new Person();
p.setName("威哥");
p.setAddress("北京");
p.save(this, new SaveListener() {

@Override
public void onSuccess() {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "添加数据成功", Toast.LENGTH_SHORT).show();
}

@Override
public void onFailure(int arg0, String arg1) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "添加数据失败", Toast.LENGTH_SHORT).show();
}
});
}

//删除数据
public void deleteClick(View view) {

Person p = new Person();
p.delete(this, "7313714c50", new DeleteListener() {

@Override
public void onSuccess() {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "删除数据成功", Toast.LENGTH_SHORT).show();
}

@Override
public void onFailure(int arg0, String arg1) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "删除数据失败", Toast.LENGTH_SHORT).show();
}
});
}

//更新数据
public void updateClick(View view) {

Person p = new Person();
p.setAddress("北京海淀");
p.update(this, "7313714c50", new UpdateListener() {

@Override
public void onSuccess() {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "更新数据成功", Toast.LENGTH_SHORT).show();
}

@Override
public void onFailure(int arg0, String arg1) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "更新数据失败", Toast.LENGTH_SHORT).show();
}
});
}

//查询数据
public void queryClick(View view) {

BmobQuery<Person> query = new BmobQuery<Person>();
query.getObject(this, "7313714c50", new GetListener<Person>() {

@Override
public void onFailure(int i, String s) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "查询数据失败", Toast.LENGTH_SHORT).show();
}

@Override
public void onSuccess(Person person) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, person.toString(), Toast.LENGTH_SHORT).show();
}
});
}

}


AndroidManifest

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_LOGS" />


注册与登陆代码
User.java
package com.example.bmobtest;

import cn.bmob.v3.BmobUser;
import cn.bmob.v3.datatype.BmobFile;

public class User extends BmobUser{

BmobFile icon;
String password;

public BmobFile getIcon() {
return icon;
}

public void setIcon(BmobFile icon) {
this.icon = icon;
}

}


LoginActivity
package com.example.bmobtest;

import cn.bmob.v3.Bmob;
import cn.bmob.v3.BmobUser;
import cn.bmob.v3.listener.SaveListener;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class LoginActivity extends Activity {

private EditText et_username_login,et_password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
// 初始化Bmob
Bmob.initialize(this, "7e705209d5a43852b4fa855219507807");

et_username_login = (EditText) findViewById(R.id.et_username);
et_password = (EditText) findViewById(R.id.et_password);
}

public void loginClick(View view){

String name = et_username_login.getText().toString();
String password = et_password.getText().toString();

final BmobUser bmobUser = new User();
bmobUser.setUsername(name);
bmobUser.setPassword(password);
bmobUser.login(this, new SaveListener() {

@Override
public void onSuccess() {
// TODO Auto-generated method stub
User user = BmobUser.getCurrentUser(LoginActivity.this,User.class);
StringBuffer userMessage = new StringBuffer();
userMessage.append("username="+user.getUsername());
userMessage.append("password="+user.getPassword());
userMessage.append("email="+user.getEmail());

Toast.makeText(LoginActivity.this, userMessage, Toast.LENGTH_SHORT).show();
}

@Override
public void onFailure(int arg0, String arg1) {
// TODO Auto-generated method stub
Toast.makeText(LoginActivity.this, "登陆失败", Toast.LENGTH_SHORT).show();
}
});
}

public void regClick(View view){
Intent intent = new Intent(this,RegActivity.class);
startActivity(intent);
}

}


activity_login
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<EditText
android:id="@+id/et_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>

<EditText
android:id="@+id/et_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/et_username"
android:ems="10"
android:inputType="textPassword" >

<requestFocus />
</EditText>

<Button
android:id="@+id/button_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/et_password"
android:text="登陆"
android:onClick="loginClick" />

<Button
android:id="@+id/button_reg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/et_password"
android:text="注册"
android:onClick="regClick" />

</RelativeLayout>


RegActivity
package com.example.bmobtest;

import java.io.File;

import cn.bmob.v3.datatype.BmobFile;
import cn.bmob.v3.listener.SaveListener;
import cn.bmob.v3.listener.UploadFileListener;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class RegActivity extends Activity {

private EditText et_username,et_pass,et_emial,et_icon;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reg);
et_username = (EditText) findViewById(R.id.et_1);
et_pass = (EditText) findViewById(R.id.et_2);
et_emial = (EditText) findViewById(R.id.et_3);
et_icon = (EditText) findViewById(R.id.et_4);
}

public void registerClick(View view){
final String name = et_username.getText().toString();
final String pass = et_pass.getText().toString();
final String email = et_emial.getText().toString();
//String icon = et_icon.getText().toString();

User user = new User();
user.setUsername(name);
user.setPassword(pass);
user.setEmail(email);
//user.setIcon(icon);
//获取图片文件的路径
String path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)+"/1.jpg";

//文件上传
final BmobFile bmobFile = new BmobFile(new File(path));
bmobFile.upload(this, new UploadFileListener() {

@Override
public void onSuccess() {
// TODO Auto-generated method stub
//上传成功
User user = new User();
user.setUsername(name);
user.setPassword(pass);
user.setEmail(email);
user.setIcon(bmobFile);
//注册(注意这里new的是SaveListener)
user.signUp(RegActivity.this, new SaveListener() {

@Override
public void onSuccess() {
// TODO Auto-generated method stub
Toast.makeText(RegActivity.this, "注册成功", Toast.LENGTH_SHORT).show();
}

@Override
public void onFailure(int arg0, String arg1) {
// TODO Auto-generated method stub

}
});
}

@Override
public void onFailure(int i, String s) {
// TODO Auto-generated method stub

}
});

}

}


activity_reg
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<EditText
android:id="@+id/et_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="username" />

<EditText
android:id="@+id/et_2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="password"
android:inputType="textPassword" />

<EditText
android:id="@+id/et_3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="email"
android:inputType="textEmailAddress" />

<EditText
android:id="@+id/et_4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="icon" />

<Button
android:id="@+id/button_reg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="registerClick"
android:text="注册" />

</LinearLayout>


AndroidManifest
<activity
android:name=".LoginActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".RegActivity"
android:label="@string/app_name" >
</activity>

便签案例


2.Linux基本命令操作

(Windows端不可直接运行)



























3.Git版本控制

入门与创建版本库



教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

首先配置环境变量:将git的bin目录添加到系统环境变量(或者用户变量)path中

创建版本库

打开Git Bash,输入以下Linux命令行创建版本库



基本命令操作



分支管理





Git与GitHub



了解Git本地服务器创建于Android Studio

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: