Table Of Contents

Previous topic

引入依赖工程

Next topic

玩家支付流程

This Page

在应用中引入lib工程

请参照快速集成中(引入337lib工程)

在Manifest文件添加必要的声明

需要添加内容入下:

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

<activity
android:name="com.web337.android.user.UserPage"
android:theme="@style/mobile337user"/>

<activity
android:name="com.facebook.LoginActivity"
android:theme="@android:style/Theme.Translucent"/>

<activity
android:name="com.web337.android.user.GoogleAcountLogin"
android:configChanges="orientation|keyboardHidden"/>

<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="\ 156198457906087"/>

<activity
android:name="com.web337.android.widget.Web"
android:configChanges="orientation|keyboardHidden|screenSize"
android:launchMode="singleTask"/>

获取用户信息

应用可以通过直接调用 UserCore.checkLogin(Context c,UserLoginCallback callback) 然后在 UserLoginCallback 中获取用户信息。而不需要关心是否注册等细节。在 UserLoginCallback 接口中有两个方法

  • onLoginSuccess(User u,boolean isRegist)

通过此回调回去用户信息,如果isRegist为true则此用户为注册用户,如果为false则此用户为登录用户

  • public void onCancel()

如果用户在弹出的登录-注册界面没有登录或者注册,则回调此方法

自定义用户登录界面

如果您希望使用个性化的登录界面,你有以下两种选择:

  • 直接更改SDK提供的登录界面布局文件 /res/layout/mobilev2_337_user_login.xml ,需要注意的是您可以任意更改此布局文件的样式,但是请务必保证每个组件的功能和ID不要变更。
  • 完全使用自己的布局文件。然后调用SDK中的接口来使用相应功能,可以调用的方法请参照下一节

其他方法

  1. 获取当前登录用户:

    UserCore.getLoginUser();

  2. 退出登录:

    UserCore.logout();

  3. 获取用户登录状态:

    UserCore.isLogin();

  4. 获取最后一次登录的用户名:

    UserCore.lastLoginUsername();

  5. 找回用户密码:

    UserCore.getPassword(Context c);

  6. 使用用户名和密码登陆:

    使用前需要先调用setContext(Context c)方法

    login(final String username,final String password,final UserSelfLoginCallback callback);

  7. 注册用户:

    使用前需要先调用setContext(Context c)方法

    register(final String username,final String password,final String email,final UserSelfRegisterCallback callback);

  8. 检查用户是否合法:

    check(final User u,final UserSelfCheckCallback callback);

  9. 个人信息页:

调用方法打开页面:

UserCore.showUserInfo(Activity);

当前无337登录用户时,方法返回false,当前有337登录用户时,方法返回true,并打开用户个人信息页。玩家可以在此页面进行更改个人信息、更改密码、切换账户等操作。

如果玩家在个人信息页切换了账户,当玩家关闭个人信息页时,SDK会将新的用户回调给开发者。回调方法的设置如下:

UserCore.setOnChangeUserListener(new com.web337.android.user.UserCore.OnChangeUserListener(){
 @Override
 public void onChange(User u) {
        if(u != null){
                alert("更改用户:"+u.getUsername());
        }else{
                alert("退出登录");
        }
}});