在QQ登陸測試的時候,剛申請正常登陸,但是由於app未上線,或許是騰訊升級造成的個別時候QQ登陸無法成功會提示下圖代碼,功能上沒啥問題,已經達到 測試效果了。附上騰訊錯誤代碼圖(大家測試QQ登陸的時候,包括微博登陸都需要自行申請 AppId 以及AppKey,當然用我的也可以 )
整體的效果圖如下,大家
MainActivity:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
|
package
com.qiao.thirdpartylogindemo_master2;
import
java.util.HashMap;
import
android.app.Activity;
import
android.os.Bundle;
import
android.os.Handler.Callback;
import
android.os.Message;
import
android.text.TextUtils;
import
android.util.Log;
import
android.view.View;
import
android.view.View.OnClickListener;
import
android.widget.Button;
import
android.widget.Toast;
import
cn.sharesdk.framework.Platform;
import
cn.sharesdk.framework.PlatformActionListener;
import
cn.sharesdk.framework.ShareSDK;
import
cn.sharesdk.framework.utils.UIHandler;
import
cn.sharesdk.sina.weibo.SinaWeibo;
import
cn.sharesdk.tencent.qzone.QZone;
import
cn.sharesdk.tencent.weibo.TencentWeibo;
/**
* 此demo使用第三方登陸,例子比較簡單
* @author 有點涼了
*
*/
public
class
MainActivity
extends
Activity
implements
OnClickListener,Callback,PlatformActionListener{
private
static
final
String TAG=
"MainActivity"
;
private
Button button_main_login;
private
Button button_main_restart;
private
Button button_main_exit;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
ShareSDK.initSDK(
this
);
//初始化shareSdk
setContentView(R.layout.activity_main);
button_main_login = (Button)findViewById(R.id.button_main_login);
button_main_restart=(Button)findViewById(R.id.button_main_restart);
button_main_login.setOnClickListener(
this
);
button_main_restart.setOnClickListener(
this
);
findViewById(R.id.button_main_exit).setOnClickListener(
this
);
findViewById(R.id.button_main_login_weibo).setOnClickListener(
this
);
findViewById(R.id.button_main_restart_qq).setOnClickListener(
this
);
}
@Override
protected
void
onDestroy() {
super
.onDestroy();
ShareSDK.stopSDK(
this
);
}
@Override
public
void
onCancel(Platform platform,
int
action) {
if
(action==Platform.ACTION_USER_INFOR) {
UIHandler.sendEmptyMessage(
3
,
this
);
}
}
// 如果onComplete()方法被回調,表示授權成功,引導用戶進入系統
@Override
public
void
onComplete(Platform platform,
int
action, HashMap<String, Object> res) {
if
(action ==Platform.ACTION_USER_INFOR) {
UIHandler.sendEmptyMessage(
5
,
this
);
login(platform.getName(), platform.getDb().getUserId(), res);
Log.i(TAG,
"=="
+res);
}
}
@Override
public
void
onError(Platform platform,
int
action, Throwable t) {
if
(action==Platform.ACTION_USER_INFOR) {
UIHandler.sendEmptyMessage(
4
,
this
);
}
t.printStackTrace();
}
@Override
public
boolean
handleMessage(Message msg) {
switch
(msg.what) {
case
1
:
Toast.makeText(
this
,
"用戶信息已存在,正在跳轉登錄操作…"
, Toast.LENGTH_SHORT).show();
break
;
case
2
:
String text = getString(R.string.logining, msg.obj);
Toast.makeText(
this
, text, Toast.LENGTH_SHORT).show();
break
;
case
3
:
Toast.makeText(
this
,
"授權操作已取消"
, Toast.LENGTH_SHORT).show();
break
;
case
4
:
Toast.makeText(
this
,
"授權操作遇到錯誤,請閱讀Logcat輸出"
, Toast.LENGTH_SHORT).show();
break
;
case
5
:
Toast.makeText(
this
,
"授權成功,正在跳轉登錄操作…"
, Toast.LENGTH_SHORT).show();
break
;
default
:
break
;
}
return
false
;
}
// 用戶觸發第三方登錄事件
@Override
public
void
onClick(View v) {
// Platform pf =null;
switch
(v.getId()) {
case
R.id.button_main_login:
//(1)直接使用QQ賬號登陸
authorize(
new
QZone(
this
));
//
break
;
case
R.id.button_main_restart:
Platform pf2=ShareSDK.getPlatform(MainActivity.
this
,TencentWeibo.NAME);
if
(pf2.isValid()) {
pf2.removeAccount();
//刪除授權信息
}
pf2.setPlatformActionListener(
this
);
pf2.authorize();
break
;
case
R.id.button_main_exit:
Platform pf3=ShareSDK.getPlatform(MainActivity.
this
,TencentWeibo.NAME);
Platform pf5=ShareSDK.getPlatform(MainActivity.
this
,QZone.NAME);
if
(pf3.isValid()) {
pf3.removeAccount();
//刪除授權信息
}
if
(pf5.isValid()) {
pf5.removeAccount();
}
Toast.makeText(
this
,
"退出成功,測試請點擊上方登陸按鈕,如果出現重新登陸界面則算成功"
, Toast.LENGTH_LONG).show();
break
;
case
R.id.button_main_login_weibo:
// (2)、 //使用騰訊微博登陸先要初始化騰訊微博
Platform pf = ShareSDK.getPlatform(MainActivity.
this
,TencentWeibo.NAME);
pf.SSOSetting(
true
);
pf.setPlatformActionListener(
this
);
pf.showUser(
null
);
Log.i(TAG,
"==用戶id:"
+ pf.getDb().getUserId() +
" 用戶名稱:"
+ pf.getDb().getUserName() +
" 用戶icon:"
+ pf.getDb().getUserIcon() +
" 這個是啥:"
+ pf.getDb().getUserGender());
break
;
case
R.id.button_main_restart_qq:
Platform pf4=ShareSDK.getPlatform(MainActivity.
this
,QZone.NAME);
if
(pf4.isValid()) {
pf4.removeAccount();
}
pf4.setPlatformActionListener(
this
);
authorize(
new
QZone(
this
));
break
;
default
:
break
;
}
}
// authorize()方法將引導用戶在授權頁面輸入帳號密碼,然后目標平台將驗證此用戶(此方法在此例子中僅僅是QQ賬號登陸時候使用)
public
void
authorize(Platform plat){
if
(plat.isValid()) {
String userId =plat.getDb().getUserId();
//獲取id
if
(!TextUtils.isEmpty(userId)) {
UIHandler.sendEmptyMessage(
1
,
this
);
login(plat.getName(),userId,
null
);
//不等於null執行登陸,講用戶id發送至目標平台進行驗證
return
;
}
}
plat.setPlatformActionListener(
this
);
plat.SSOSetting(
true
);
plat.showUser(
null
);
}
public
void
login(String plat,String userId,HashMap<String, Object> userInfo){
Message msg =
new
Message();
msg.what =
2
;
msg.obj = plat;
UIHandler.sendMessage(msg,
this
);
}
}
|
布局:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
<RelativeLayout xmlns:android=
"http://schemas.android.com/apk/res/android"
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.qiao.thirdpartylogindemo_master2.MainActivity"
>
<TextView
android:id=
"@+id/textView1"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/hello_world"
/>
<Button
android:id=
"@+id/button_main_login"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_below=
"@+id/textView1"
android:layout_marginTop=
"30dp"
android:layout_toRightOf=
"@+id/textView1"
android:text=
"QQ第三方登陸"
/>
<Button
android:id=
"@+id/button_main_restart"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_above=
"@+id/button_main_exit"
android:layout_centerHorizontal=
"true"
android:text=
"切換微博賬號"
/>
<Button
android:id=
"@+id/button_main_login_weibo"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignLeft=
"@+id/button_main_login"
android:layout_below=
"@+id/button_main_login"
android:text=
"QQ微博賬號登陸"
/>
<Button
android:id=
"@+id/button_main_exit"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:layout_alignRight=
"@+id/button_main_restart"
android:layout_marginBottom=
"128dp"
android:text=
"退出賬號"
/>
<Button
android:id=
"@+id/button_main_restart_qq"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_above=
"@+id/button_main_restart"
android:layout_alignLeft=
"@+id/button_main_restart"
android:text=
"切換QQ賬號"
/>
</RelativeLayout>
|
需要第三方ShareSdk支持
assets文件夾中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
|
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<DevInfor>
<!--
說明:
1
、表格中的第一項
<ShareSDK
AppKey=
"api20"
/>
是必須的,其中的AppKey是您在ShareSDK上注冊的開發者帳號的AppKey
2
、所有集成到您項目的平台都應該為其在表格中填寫相對應的開發者信息,以新浪微博為例:
<SinaWeibo
Id=
"1"
SortId=
"1"
AppKey=
"568898243"
AppSecret=
"38a4f8204cc784f81f9f0daaf31e02e3"
Enable=
"true"
/>
其中的SortId是此平台在分享列表中的位置,由開發者自行定義,可以是任何整型數字,數值越大
越靠后AppKey、AppSecret和RedirectUrl是您在新浪微博上注冊開發者信息和應用后得到的信息
Id是一個保留的識別符,整型,ShareSDK不使用此字段,供您在自己的項目中當作平台的識別符。
Enable字段表示此平台是否有效,布爾值,默認為
true
,如果Enable為
false
,即便平台的jar包
已經添加到應用中,平台實例依然不可獲取。
各個平台注冊應用信息的地址如下:
新浪微博 http:
//open.weibo.com
騰訊微博 http:
//dev.t.qq.com
QQ空間 http:
//connect.qq.com/intro/login/
微信好友 http:
//open.weixin.qq.com
Facebook https:
//developers.facebook.com
Twitter https:
//dev.twitter.com
人人網 http:
//dev.renren.com
開心網 http:
//open.kaixin001.com
搜狐微博 http:
//open.t.sohu.com
網易微博 http:
//open.t.163.com
豆瓣 http:
//developers.douban.com
有道雲筆記 http:
//note.youdao.com/open/developguide.html#app
印象筆記 https:
//dev.evernote.com/
Linkedin https:
//www.linkedin.com/secure/developer?newapp=
FourSquare https:
//developer.foursquare.com/
搜狐隨身看 https:
//open.sohu.com/
Flickr http:
//www.flickr.com/services/
Pinterest http:
//developers.pinterest.com/
Tumblr http:
//www.tumblr.com/developers
Dropbox https:
//www.dropbox.com/developers
Instagram http:
//instagram.com/developer#
VKontakte http:
//vk.com/dev
-->
<ShareSDK
AppKey =
"31a2d4901ac0"
/> <!-- 修改成你在sharesdk后台注冊的應用的appkey"-->
<!-- ShareByAppClient標識是否使用微博客戶端分享,默認是
false
-->
<!-- <SinaWeibo
Id=
"1"
SortId=
"1"
AppKey=
"568898243"
AppSecret=
"38a4f8204cc784f81f9f0daaf31e02e3"
ShareByAppClient=
"true"
Enable=
"true"
/>
-->
<TencentWeibo
Id=
"2"
SortId=
"2"
AppKey=
"801530433"
AppSecret=
"3ed1cc342bd5c8871aebb69ef55c5606"
Enable=
"true"
/>
<!-- ShareByAppClient標識是否使用微博客戶端分享,默認是
false
-->
<!-- QQ賬號登陸測試完成 -->
<QZone
Id=
"3"
SortId=
"3"
AppId=
"1102908041"
AppKey=
"b70Yvb01LfSqzzKE"
ShareByAppClient=
"true"
Enable=
"true"
/>
<!-- <!--
Wechat微信和WechatMoments微信朋友圈的appid是一樣的;
注意:開發者不能用我們這兩個平台的appid,否則分享不了
微信測試的時候,微信測試需要先簽名打包出apk,
sample測試微信,要先簽名打包,keystore在sample項目中,密碼
123456
BypassApproval是繞過審核的標記,設置為
true
后AppId將被忽略,故不經過
審核的應用也可以執行分享,但是僅限於分享文字和圖片,不能分享其他類型,
默認值為
false
。此外,微信收藏不支持此字段。
-->
<!-- <Wechat
Id=
"4"
SortId=
"4"
AppId=
"wx4868b35061f87885"
BypassApproval=
"true"
Enable=
"true"
/>
<WechatMoments
Id=
"5"
SortId=
"5"
AppId=
"wx4868b35061f87885"
BypassApproval=
"true"
Enable=
"true"
/>
<WechatFavorite
Id=
"6"
SortId=
"6"
AppId=
"wx4868b35061f87885"
Enable=
"true"
/>
<QQ
Id=
"7"
SortId=
"7"
AppId=
"100371282"
AppKey=
"aed9b0303e3ed1e27bae87c33761161d"
Enable=
"true"
/>
<Facebook
Id=
"8"
SortId=
"8"
ConsumerKey=
"107704292745179"
ConsumerSecret=
"38053202e1a5fe26c80c753071f0b573"
Enable=
"true"
/>
<Twitter
Id=
"9"
SortId=
"9"
ConsumerKey=
"mnTGqtXk0TYMXYTN7qUxg"
ConsumerSecret=
"ROkFqr8c3m1HXqS3rm3TJ0WkAJuwBOSaWhPbZ9Ojuc"
Enable=
"true"
/>
<Renren
Id=
"10"
SortId=
"10"
AppId=
"226427"
ApiKey=
"fc5b8aed373c4c27a05b712acba0f8c3"
SecretKey=
"f29df781abdd4f49beca5a2194676ca4"
Enable=
"true"
/>
<KaiXin
Id=
"11"
SortId=
"11"
AppKey=
"358443394194887cee81ff5890870c7c"
AppSecret=
"da32179d859c016169f66d90b6db2a23"
Enable=
"true"
/>
<Email
Id=
"12"
SortId=
"12"
Enable=
"true"
/>
<ShortMessage
Id=
"13"
SortId=
"13"
Enable=
"true"
/>
<SohuMicroBlog
Id=
"14"
SortId=
"14"
ApiKey=
"q70QBQM9T0COxzYpGLj9"
ConsumerKey=
"q70QBQM9T0COxzYpGLj9"
ConsumerSecret=
"XXYrx%QXbS!uA^m2$8TaD4T1HQoRPUH0gaG2BgBd"
Enable=
"true"
/>
<NetEaseMicroBlog
Id=
"15"
SortId=
"15"
ConsumerKey=
"T5EI7BXe13vfyDuy"
ConsumerSecret=
"gZxwyNOvjFYpxwwlnuizHRRtBRZ2lV1j"
Enable=
"true"
/>
<Douban
Id=
"16"
SortId=
"16"
ApiKey=
"02e2cbe5ca06de5908a863b15e149b0b"
Secret=
"9f1e7b4f71304f2f"
Enable=
"true"
/>
<YouDao
Id=
"17"
SortId=
"17"
HostType=
"product"
ConsumerKey=
"dcde25dca105bcc36884ed4534dab940"
ConsumerSecret=
"d98217b4020e7f1874263795f44838fe"
Enable=
"true"
/>
<SohuSuishenkan
Id=
"18"
SortId=
"18"
AppKey=
"e16680a815134504b746c86e08a19db0"
AppSecret=
"b8eec53707c3976efc91614dd16ef81c"
Enable=
"true"
/>
在中國大陸,印象筆記有兩個服務器,一個是沙箱(sandbox),一個是生產服務器(china)。
一般你注冊應用,它會先讓你使用sandbox,當你完成測試以后,可以到
http:
//dev.yinxiang.com/support/上激活你的ConsumerKey,激活成功后,修改HostType
為china就好了。至於如果您申請的是國際版的印象筆記(Evernote),則其生產服務器類型為
“product”。
如果目標設備上已經安裝了印象筆記客戶端,ShareSDK允許應用調用本地API來完成分享,但
是需要將應用信息中的“ShareByAppClient”設置為
true
,此字段默認值為
false
。
<Evernote
Id=
"19"
SortId=
"19"
HostType=
"sandbox"
ConsumerKey=
"sharesdk-7807"
ConsumerSecret=
"d05bf86993836004"
ShareByAppClient=
"false"
Enable=
"true"
/>
<LinkedIn
Id=
"20"
SortId=
"20"
ApiKey=
"ejo5ibkye3vo"
SecretKey=
"cC7B2jpxITqPLZ5M"
Enable=
"true"
/>
<GooglePlus
Id=
"21"
SortId=
"21"
Enable=
"true"
/>
<FourSquare
Id=
"22"
SortId=
"22"
ClientID=
"G0ZI20FM30SJAJTX2RIBGD05QV1NE2KVIM2SPXML2XUJNXEU"
ClientSecret=
"3XHQNSMMHIFBYOLWEPONNV4DOTCDBQH0AEMVGCBG0MZ32XNU"
Enable=
"true"
/>
<Pinterest
Id=
"23"
SortId=
"23"
ClientId=
"1432928"
Enable=
"true"
/>
<Flickr
Id=
"24"
SortId=
"24"
ApiKey=
"33d833ee6b6fca49943363282dd313dd"
ApiSecret=
"3a2c5b42a8fbb8bb"
Enable=
"true"
/>
<Tumblr
Id=
"25"
SortId=
"25"
OAuthConsumerKey=
"2QUXqO9fcgGdtGG1FcvML6ZunIQzAEL8xY6hIaxdJnDti2DYwM"
SecretKey=
"3Rt0sPFj7u2g39mEVB3IBpOzKnM3JnTtxX2bao2JKk4VV1gtNo"
Enable=
"true"
/>
<Dropbox
Id=
"26"
SortId=
"26"
AppKey=
"7janx53ilz11gbs"
AppSecret=
"c1hpx5fz6tzkm32"
Enable=
"true"
/>
<VKontakte
Id=
"27"
SortId=
"27"
ApplicationId=
"3921561"
Enable=
"true"
/>
<Instagram
Id=
"28"
SortId=
"28"
ClientId=
"ff68e3216b4f4f989121aa1c2962d058"
ClientSecret=
"1b2e82f110264869b3505c3fe34e31a1"
Enable=
"true"
/>
Yixin易信和YixinMoments易信朋友圈的appid是一樣的;
注意:開發者不能用我們這兩個平台的appid,否則分享不了
易信測試的時候需要先簽名打包出apk,
sample測試易信,要先簽名打包,keystore在sample項目中,密碼
123456
BypassApproval是繞過審核的標記,設置為
true
后AppId將被忽略,故不經過
審核的應用也可以執行分享,但是僅限於分享文字或圖片,不能分享其他類型,
默認值為
false
。
<Yixin
Id=
"29"
SortId=
"29"
AppId=
"yx0d9a9f9088ea44d78680f3274da1765f"
BypassApproval=
"true"
Enable=
"true"
/>
<YixinMoments
Id=
"30"
SortId=
"30"
AppId=
"yx0d9a9f9088ea44d78680f3274da1765f"
BypassApproval=
"true"
Enable=
"true"
/>
<Mingdao
Id=
"31"
SortId=
"31"
AppKey=
"EEEE9578D1D431D3215D8C21BF5357E3"
AppSecret=
"5EDE59F37B3EFA8F65EEFB9976A4E933"
Enable=
"true"
/> -->
</DevInfor>
|
Mainfest
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<manifest xmlns:android=
"http://schemas.android.com/apk/res/android"
package
=
"com.qiao.thirdpartylogindemo_master2"
android:versionCode=
"1"
android:versionName=
"1.0"
>
<uses-sdk
android:minSdkVersion=
"14"
android:targetSdkVersion=
"21"
/>
<supports-screens
android:anyDensity=
"true"
android:largeScreens=
"true"
android:normalScreens=
"true"
android:resizeable=
"true"
android:smallScreens=
"true"
/>
<uses-permission android:name=
"android.permission.GET_TASKS"
/>
<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.CHANGE_WIFI_STATE"
/>
<uses-permission android:name=
"android.permission.WRITE_EXTERNAL_STORAGE"
/>
<uses-permission android:name=
"android.permission.READ_PHONE_STATE"
/>
<uses-permission android:name=
"android.permission.MANAGE_ACCOUNTS"
/>
<uses-permission android:name=
"android.permission.GET_ACCOUNTS"
/>
<application
android:allowBackup=
"true"
android:icon=
"@drawable/ic_launcher"
android:label=
"@string/app_name"
android:theme=
"@style/AppTheme"
>
<activity
android:name=
".MainActivity"
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=
"cn.sharesdk.framework.ShareSDKUIShell"
android:theme=
"@android:style/Theme.Translucent.NoTitleBar"
android:configChanges=
"keyboardHidden|orientation|screenSize"
android:windowSoftInputMode=
"stateHidden|adjustResize"
/>
</application>
</manifest>
|
values:需要(直接ShareSdk拷貝)
jar包直接ShareSdk拷貝: