Pustaka integrasi SDK pihak ketiga mendukung otorisasi/berbagi/pembayaran dan fungsi lainnya
Saat ini, perpustakaan ini tidak stabil. Beberapa detail belum dipertimbangkan dengan cermat, beberapa fungsi belum diuji, dan tidak banyak platform yang didukung. Setiap orang dipersilakan untuk membintangi/menerbitkan/pr dan bekerja sama untuk meningkatkan perpustakaan ini.
Hasil setelah sukses ada dua bentuk: "code|{code}" dan "token|{openId}|{token}"
Namun klien sebenarnya tidak perlu peduli apakah itu kode atau token, ia cukup mengirimkan hasilnya langsung ke server.
Banyak perpustakaan pembayaran akan memproses informasi pembayaran produk di sisi klien, pada kenyataannya, hal ini tidak diperlukan. Server dapat langsung mengembalikan data dan menyerahkannya ke SDK pembayaran, lalu memproses hasil pembayaran.
Mendukung jenis berbagi seperti teks biasa/gambar murni/grafik/halaman web/musik/video
platform | teks biasa | Gambar murni | Grafik dan teks | Halaman web | musik | video |
---|---|---|---|---|---|---|
X | Hai | X | Hai | Hai | X | |
Zona Q | Hai | Hai | Hai | Hai | X | Hai |
Sesi WX | Hai | Hai | X | Hai | Hai | Hai |
Garis Waktu WX | Hai | Hai | X | Hai | Hai | Hai |
Hai | Hai | Hai | X | X | X | |
KirimKeQQ | Hai | Hai | X | X | X | X |
KirimKeWXS | Hai | Hai | X | X | X | X |
KirimKeWXT | Hai | Hai | X | X | X | X |
Untuk menjalankan demo, Anda perlu mengubah nama paket aplikasi, tanda tangan, dan APPID yang diterapkan untuk aplikasi di gradle.properties
APPLICATION_ID=ezy.demo.sdk3rd
APPID_QQ=YOUR_APPID
APPID_WEIXIN=YOUR_APPID
APPID_WEIBO=YOUR_APPID
SINGING_ALIAS=androiddebugkey
SINGING_PASSWORD=android
SINGING_FILE=debug.keystore
repositories {
maven { url " https://jitpack.io " }
}
dependencies {
compile ' com.github.czy1121.sdk3rd:sdk3rd:0.1.2 '
compile ' com.github.czy1121.sdk3rd:sdk3rd-alipay:0.1.1 '
compile ' com.github.czy1121.sdk3rd:sdk3rd-qq:0.1.0 '
compile ' com.sina.weibo.sdk:core:1.0.0:openDefaultRelease@aar '
compile ' com.tencent.mm.opensdk:wechat-sdk-android-without-mta:1.0.2 '
}
Konfigurasikan APPID
PlatformConfig . useQQ ( BuildConfig . APPID_QQ );
PlatformConfig . useWeixin ( BuildConfig . APPID_WEIXIN );
PlatformConfig . useWeibo ( BuildConfig . APPID_WEIBO , "http://www.sina.com/" );
PlatformConfig . usePayments ();
Setel panggilan balik acara global (tidak perlu)
AuthorizeSDK . setDefaultCallback ( new OnCallback () {
@ Override
public void onStarted ( Activity activity ) {
Log . e ( "ezy" , "authorize started" );
}
@ Override
public void onCompleted ( Activity activity ) {
Log . e ( "ezy" , "authorize completed" );
}
@ Override
public void onSucceed ( Activity activity , Object result ) {
Log . e ( "ezy" , "authorize succeed" );
}
@ Override
public void onFailed ( Activity activity , int code , String message ) {
Log . e ( "ezy" , "authorize failed [" + code + "]" + message );
}
});
Menerima hasil otorisasi (Sina Weibo/QQ)
@ Override
protected void onActivityResult ( int requestCode , int resultCode , Intent data ) {
super . onActivityResult ( requestCode , resultCode , data );
AuthorizeSDK . onHandleResult ( this , requestCode , resultCode , data );
}
otorisasi panggilan
AuthorizeSDK . authorize ( MainActivity . this , platform , new OnSucceed < String >() {
@ Override
public void onSucceed ( String result ) {
Toast . makeText ( MainActivity . this , "登陆成功 - " + result , Toast . LENGTH_LONG ). show ();
}
});
Untuk mendaftarkan platform khusus, Anda perlu mengimplementasikan IAuthorize dan IFactory yang sesuai
AuthorizeSDK . register ( IFactory < IAuthorize > factory );
AuthorizeSDK . register ( String platformName , String appId , Class < IAuthorize > clazz );
Pengaturan callback peristiwa global mirip dengan SDK otorisasi
pembayaran panggilan
PaymentSDK . pay ( MainActivity . this , platform , paydata , new OnSucceed < String >() {
@ Override
public void onSucceed ( String result ) {
// todo
}
});
Untuk mendaftarkan platform khusus, Anda perlu mengimplementasikan IPayable dan IFactory yang sesuai
PaymentSDK . register ( IFactory < IPayable > factory );
PaymentSDK . register ( String platformName , Class < IPayable > clazz );
Pengaturan callback peristiwa global mirip dengan SDK otorisasi
...
Menerima hasil yang dibagikan juga mirip dengan SDK resmi (QQ)
...
Untuk mendaftarkan platform khusus, Anda perlu mengimplementasikan IShareable dan IFactory yang sesuai
ShareSDK . register ( IFactory < IShareable > factory );
ShareSDK . register ( String platformName , Class < IShareable > clazz );
membagikan
// 分享纯文本
ShareSDK . make ( this , text ). share ( platform );
// 分享纯图片
ShareSDK . make ( this , new MoImage ( image )). share ( platform );
// 分享图文
ShareSDK . make ( this , text , new MoImage ( image )). share ( platform );
// 分享网页链接
ShareSDK . make ( this , new MoWeb ( url ))
. withTitle ( "这是标题" )
. withDescription ( "这是摘要" )
. withThumb ( thumb )
. share ( platform , new OnSucceed < String >() {
@ Override
public void onSucceed ( String result ) {
Toast . makeText ( MainActivity . this , "分享成功" , Toast . LENGTH_LONG ). show ();
}
});
// 分享音乐
ShareSDK . make ( this , new MoMusic ( url ))
. withTitle ( "这是标题" )
. withDescription ( "这是摘要" )
. withThumb ( thumb )
. share ( platform );
Ringkasan 90% pertanyaan umum tentang komponen berbagi Umeng+ http://bbs.umeng.com/thread-17764-1-1.html
Pratinjau konten yang dapat dibagikan di setiap platform Umeng http://dev.umeng.com/social/android/share-detail#5
Petunjuk terperinci untuk berbagi konten di berbagai platform Android http://wiki.mob.com/Petunjuk terperinci untuk berbagi konten di berbagai platform
Sina Weibo SDK https://github.com/sinaweibosdk/weibo_android_sdk
Copyright 2017 czy1121
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.