Toggle navigation
Toggle navigation
This project
Loading...
Sign in
easygame_sdk
/
easygame_sdk_android
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
lizhihui
2016-09-09 15:25:28 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
d90a760bccd496d108695a0b1dd41982740396b9
d90a760b
1 parent
92135874
update
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
183 additions
and
28 deletions
EasyGame_demo/AndroidManifest.xml
EasyGame_demo/res/layout/activity_main.xml
EasyGame_demo/src/com/youai/easygame/MainActivity.java
README.md
EasyGame_demo/AndroidManifest.xml
View file @
d90a760
...
...
@@ -7,7 +7,7 @@
<uses-sdk
android:minSdkVersion=
"14"
android:targetSdkVersion=
"19"
/>
<!-- P7725 PERMISSION START. -->
<!-- P7725 PERMISSION START. -->
<uses-permission
android:name=
"android.permission.ACCESS_NETWORK_STATE"
/>
<uses-permission
android:name=
"android.permission.ACCESS_WIFI_STATE"
/>
<uses-permission
android:name=
"android.permission.READ_PHONE_STATE"
/>
...
...
@@ -42,8 +42,7 @@
android:label=
"@string/permlab_downloadCompletedIntent"
android:protectionLevel=
"normal"
/>
<!-- P7725 PERMISSION END. -->
<application
android:allowBackup=
"true"
android:icon=
"@drawable/icon"
...
...
@@ -58,9 +57,16 @@
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<!-- P7725 ACTIVITY,SERVER,RECEIVER START -->
<!-- P7725 ACTIVITY,SERVER,RECEIVER START -->
<!-- FloatMenu start -->
<activity
android:name=
"com.platform7725.gamesdk.floats.FloatMenuMainActivity"
android:theme=
"@style/p7725_full_screen"
/>
<activity
android:name=
"com.platform7725.gamesdk.floats.FloatDetailMainActivity"
android:theme=
"@style/p7725_full_screen"
/>
<!-- FloatMenu end -->
<activity
android:name=
"com.platform7725.gamesdk.CustomerServiceActivity"
android:configChanges=
"keyboardHidden|orientation"
...
...
@@ -134,7 +140,6 @@
</intent-filter>
</service>
<activity
android:name=
"com.facebook.LoginActivity"
android:label=
"@string/com_7725_app_name"
...
...
@@ -146,8 +151,9 @@
<meta-data
android:name=
"com_7725_payment_flag"
android:value=
"gash"
/>
<meta-data
android:name=
"com.google.android.gms.version"
android:value=
"@integer/google_play_services_version"
/>
<meta-data
android:name=
"com.google.android.gms.version"
android:value=
"@integer/google_play_services_version"
/>
<!-- P7725 ACTIVITY、SERVER、RECEIVER END. -->
...
...
@@ -176,7 +182,7 @@
</intent-filter>
</receiver>
<!-- 下載相關的 End -->
</application>
</manifest>
</manifest>
\ No newline at end of file
...
...
EasyGame_demo/res/layout/activity_main.xml
View file @
d90a760
...
...
@@ -40,5 +40,12 @@
android:layout_alignParentLeft=
"true"
android:layout_below=
"@+id/test_login"
android:text=
"GOOGLE充值"
/>
<Button
android:id=
"@+id/test_kefu"
style=
"?android:attr/buttonStyleSmall"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"客服"
/>
</LinearLayout>
...
...
EasyGame_demo/src/com/youai/easygame/MainActivity.java
View file @
d90a760
package
com
.
youai
.
easygame
;
import
com.platform7725.gamesdk.CustomerServiceActivity
;
import
com.platform7725.gamesdk.DepositsActivity
;
import
com.platform7725.gamesdk.ExitActivity
;
import
com.platform7725.gamesdk.IExitEventsListener
;
import
com.platform7725.gamesdk.ITopSDKEventsListener
;
import
com.platform7725.gamesdk.LoginProActivity
;
import
com.platform7725.gamesdk.entity.User
;
import
com.platform7725.gamesdk.floats.FloatManager
;
import
com.platform7725.gamesdk.manager.UserManager
;
import
com.platform7725.gamesdk.util.Toasts
;
import
com.platform7725.qile.tfws.R
;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.view.KeyEvent
;
import
android.view.View
;
import
android.view.View.OnClickListener
;
import
android.widget.Button
;
...
...
@@ -20,7 +24,7 @@ import android.content.Intent;
public
class
MainActivity
extends
Activity
implements
OnClickListener
{
private
Activity
context
;
private
Button
bt_login
,
bt_gl_pay
;
private
Button
bt_login
,
bt_gl_pay
,
test_kefu
;
private
int
LOGIN_CODE
=
1
;
@Override
...
...
@@ -28,7 +32,7 @@ public class MainActivity extends Activity implements OnClickListener {
super
.
onCreate
(
savedInstanceState
);
setContentView
(
R
.
layout
.
activity_main
);
context
=
this
;
//初始化界面
//
初始化界面
initView
();
}
...
...
@@ -36,11 +40,46 @@ public class MainActivity extends Activity implements OnClickListener {
private
void
initView
()
{
bt_login
=
(
Button
)
findViewById
(
R
.
id
.
test_login
);
bt_gl_pay
=
(
Button
)
findViewById
(
R
.
id
.
test_pay
);
test_kefu
=
(
Button
)
findViewById
(
R
.
id
.
test_kefu
);
bt_login
.
setOnClickListener
(
this
);
bt_gl_pay
.
setOnClickListener
(
this
);
test_kefu
.
setOnClickListener
(
this
);
}
@Override
public
boolean
onKeyDown
(
int
keyCode
,
KeyEvent
event
)
{
if
(
KeyEvent
.
KEYCODE_BACK
==
keyCode
)
{
ExitActivity
.
exit
(
MainActivity
.
this
,
new
IExitEventsListener
()
{
@Override
public
void
onExitEventDispatch
()
{
//游戏执行退出
finish
();
}
});
}
return
super
.
onKeyDown
(
keyCode
,
event
);
}
@Override
protected
void
onPause
()
{
super
.
onPause
();
FloatManager
.
onPause
();
}
@Override
protected
void
onResume
()
{
super
.
onResume
();
FloatManager
.
onResume
();
}
@Override
protected
void
onDestroy
()
{
super
.
onDestroy
();
FloatManager
.
onDestroy
();
}
@Override
public
void
onClick
(
View
mView
)
{
switch
(
mView
.
getId
())
{
// 登录按钮
...
...
@@ -53,11 +92,13 @@ public class MainActivity extends Activity implements OnClickListener {
User
user
=
(
User
)
data
.
getSerializableExtra
(
"user"
);
if
(
user
!=
null
)
{
String
nickName
=
user
.
getNickname
();
Log
.
e
(
"账号登录成功:"
,
nickName
);
//设置角色和服务器
Log
.
e
(
"账号登录成功:"
,
nickName
);
//
设置角色和服务器
UserManager
.
setServer
(
context
,
"S10086"
);
UserManager
.
setRole
(
context
,
"951"
,
"我是角色名"
);
Toasts
.
makeText
(
context
,
"账号登录成功:"
+
nickName
);
Toasts
.
makeText
(
context
,
"账号登录成功:"
+
nickName
);
// 登录成功后打开悬浮窗
FloatManager
.
init
(
MainActivity
.
this
,
0
);
}
}
},
context
);
...
...
@@ -67,6 +108,10 @@ public class MainActivity extends Activity implements OnClickListener {
case
R
.
id
.
test_pay
:
DepositsActivity
.
pay
(
context
,
""
,
"{\"payment_flag\":\"0\"}"
);
break
;
// 打开客服界面按钮
case
R
.
id
.
test_kefu
:
CustomerServiceActivity
.
customer
(
MainActivity
.
this
);
break
;
default
:
break
;
}
...
...
README.md
View file @
d90a760
# EasyGame客户端对接文档 #
## 1.配置开发环境 ##
使用
7725SDK需要完成下面5
个步骤:
使用
easygameSDK环境配置需要完成下面几
个步骤:
1.
把res中所有资源拷贝合并到你项目res目录中。
### 1.把res中所有资源拷贝合并到你项目res目录中。 ###
!
[
](http://i.imgur.com/bViJNcw.png)
2.
把assets中的内容拷贝合并你的项目assets目录中。
###2.把assets中的内容拷贝合并你的项目assets目录中。###
!
[
](http://i.imgur.com/RHJKhBN.png)
3.
把libs中所有jar包拷贝到你的项目libs目录中。
###3.把libs中所有jar包拷贝到你的项目libs目录中。###
## 2.配置AndroidManifest.xml ##
1.
添加permission
###1.添加permission###
```
xml
<!-- easygame SDK PERMISSION START. -->
<uses-permission
android:name=
"android.permission.ACCESS_NETWORK_STATE"
/>
...
...
@@ -53,9 +53,17 @@
<!-- easygame SDK PERMISSION END. -->
```
2.
添加application相关属性
###2.添加application相关属性###
```
xml
<!-- easygame SDK ACTIVITY,SERVER,RECEIVER START -->
<!-- FloatMenu start -->
<activity
android:name=
"com.platform7725.gamesdk.floats.FloatMenuMainActivity"
android:theme=
"@style/p7725_full_screen"
/>
<activity
android:name=
"com.platform7725.gamesdk.floats.FloatDetailMainActivity"
android:theme=
"@style/p7725_full_screen"
/>
<!-- FloatMenu end -->
<activity
android:name=
"com.platform7725.gamesdk.CustomerServiceActivity"
android:configChanges=
"keyboardHidden|orientation"
...
...
@@ -172,7 +180,7 @@
<!-- download End -->
```
## 3.代码相关接口说明 ##
1.
调用登录界面
###1.调用登录界面###
通过调用静态方法
```
java
...
...
@@ -205,7 +213,7 @@ LoginProActivity.login(requestCode, callback, context)
},
context
);
```
2.
获取登录用户资料
###2.获取登录用户资料###
在Activity中实现ITopSDKEventsListener接口,实现onEventDispatch方法获取用户资料(Class User, User结构)
...
...
@@ -226,10 +234,9 @@ getOpenidChannel() String 用户来源渠道名,枚举值:Facebook, G
getOpenUID() String OPENID用户标识,有约定的游戏才可以使用
setServer (serverID) Boolean 用户进入伺服器时调用,区分伺服器的游戏若无调用本函数将无法使用储值功能
setRole(roleid, rolename) Boolean 用户登入角色时调用,不管首次或下次登入都需要调用,有角色名的游戏若无调用本函数将无法使用储值功能
```
3.
游戏服务端登录验证
###3.游戏服务端登录验证###
游戏客户端发送以下参数到游戏服务端进行验证。如:
...
...
@@ -247,7 +254,8 @@ Sign = md5( game_server_key + userid + openuid + nickname + sex + logintime );
```
注:集成过程中,发现不少厂商将上述参数作特殊字符过滤处理,导致签名校验失败,在此强调 md5 加密用的参数,绝不能过滤特殊字符。
4.
进入充值界面
###4.进入充值界面###
调用方法
```
java
DepositsActivity
.
pay
(
context
,
info
,
extra
);
...
...
@@ -259,4 +267,93 @@ DepositsActivity.pay(context, info, extra);
示例
```
java
DepositsActivity
.
pay
(
context
,
""
,
"{\"payment_flag\":\"0\"}"
);
```
\ No newline at end of file
```
###5.设置服务器和角色信息###
-
设置服务器信息
```
java
UserManager
.
setServer
(
context
,
serverid
);
```
-
context 上下文
-
serverid 服务器ID
如果不需要设置服编号,请设默认值 UserManager.setServer (0)
`注:游戏若无调用本函数将无法使用充值功能。`
-
设置角色信息
```
java
UserManager
.
setRole
(
context
,
roleid
,
rolename
);
```
-
context 上下文
-
roleid 游戏的玩家角色ID
-
rolename 游戏的玩家角色名
`注:有角色名的游戏若无调用本函数将无法使用储值功能。`
###特殊情况:###
如果游戏记录玩家的历史登录记录,并且提供快速选服选角色进入游戏的,则需同时调用
```
java
UserManager
.
setRole
(
context
,
Role
,
Roleid
);
和
UserManager
.
setServer
(
context
,
server
,
noticeUrl
);
```
###6.打开客服界面###
```
java
CustomerServiceActivity
.
customer
(
context
);
```
###7.SDK悬浮按钮###
```
java
FloatManager
.
init
(
Context
activity
,
int
init_y
);
```
`悬浮按钮初始化方法,请在登录后调用。`
-
context:上下文对象。
-
init_y:悬浮按钮初始化位置(Y坐标位置),如果不需要则填入任意小于0的数。
```
java
FloatManager
.
onPause
();
```
请务必在Activity生命周期onPause方法调用。
```
java
FloatManager
.
onResume
();
```
请务必在Activity生命周期onResume方法调用。
```
java
FloatManager
.
onDestroy
();
```
请务必在Activity生命周期onDestroy方法调用。
###8.SDK退出接口###
```
java
ExitActivity
.
exit
(
context
,
exitCallback
);
```
-
context 上下文
-
exitCallback IExitEventsListener接口实例。
`备注:实现IExitEventsListener接口,重写onExitEventDispatch()方法,在方法添加原来的退出代码。`
示例
```
java
@Override
public
boolean
onKeyDown
(
int
keyCode
,
KeyEvent
event
)
{
if
(
KeyEvent
.
KEYCODE_BACK
==
keyCode
)
{
ExitActivity
.
exit
(
MainActivity
.
this
,
new
IExitEventsListener
()
{
@Override
public
void
onExitEventDispatch
()
{
//游戏执行退出
finish
();
}
});
}
return
super
.
onKeyDown
(
keyCode
,
event
);
}
```
...
...
Please
register
or
login
to post a comment