android平臺 使用Talarik Platform給項目添加登陸註冊雲端保存功能

首先下載androidsdk,下載鏈接不是很穩定,我下載的是GITHUB上的example,example裏有library叫AndroidSDK.jar(這名字太直接了)。

另:Talarik是提供UI框架的,可以再download頁面中看到Android平臺對應的UI for Android,下載後就不用做登陸註冊頁面神馬的了

在自定義的application類中用單例初始化

public static EverliveApp myApp = null;
public static synchronized EverliveApp getEverlive() // 靜態,同步,公開訪問點
	{
		if (myApp == null) {
			EverliveAppSettings settings = new EverliveAppSettings(
					"xxxx");
			settings.setApiVersion((byte) 21);
			myApp = new EverliveApp(settings);
		}
		return myApp;
	}

登陸和註冊都要自己寫一個回調接口用來得到結果

註冊:

	private void registerUser(String username, String email, String password) {
		// TODO Auto-generated method stub
		User user = new User();
		user.setUsername(username);
		user.setEmail(email);
		UserSecretInfo secretInfo = new UserSecretInfo();
		secretInfo.setPassword(password);
		GlobalApplication.getEverlive().workWith().users()
				.create(user, secretInfo)
				.executeAsync(new RegisterCallbackAction(this));
	}
回調接口
public class RegisterCallbackAction extends
		RequestResultCallbackAction<AccessToken> {
	private Activity activity;

	public RegisterCallbackAction(Activity activity) {
		this.activity = activity;
	}

	@Override
	public void invoke(
			com.telerik.everlive.sdk.core.result.RequestResult<AccessToken> arg0) {
		// TODO Auto-generated method stub
		if (arg0.getSuccess()) {
			this.activity.runOnUiThread(new Runnable() {
				@Override
				public void run() {

					RegistActivity.toastMessage(activity, "success", null);
				}
			});
		} else {
			final String errorMessage = arg0.getError().getMessage();
			this.activity.runOnUiThread(new Runnable() {
				@Override
				public void run() {

					RegistActivity.toastMessage(activity, "failed"
							+ errorMessage, null);
				}
			});
		}
<pre name="code" class="java">
}


登陸:

	GlobalApplication
					.getEverlive()
					.workWith()
					.authentication()
					.login(username.getText().toString(),
							password.getText().toString())
					.executeAsync(new LoginCallbackAction(this));


	}

登陸回調:

public class LoginCallbackAction extends
		RequestResultCallbackAction<AccessToken> {
	private Activity activity;

	public LoginCallbackAction(Activity activity) {
		this.activity = activity;
	}

	@Override
	public void invoke(RequestResult<AccessToken> arg0) {
		// TODO Auto-generated method stub
		if (arg0.getSuccess()) {
			this.activity.runOnUiThread(new Runnable() {
				@Override
				public void run() {

					RegistActivity.toastMessage(activity, "success", null);
				}
			});
		} else {
			final String errorMessage = arg0.getError().getMessage();
			this.activity.runOnUiThread(new Runnable() {
				@Override
				public void run() {

					RegistActivity.toastMessage(activity, "failed"
							+ errorMessage, null);
				}
			});
		}
	}

}




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章