MonkeyKing membantu Anda mengirim pesan SNS ke Jejaring Sosial Tiongkok, tanpa SDK mereka yang bermasalah.
MonkeyKing menggunakan proses analisis yang sama dengan openshare. Kami juga menggunakan beberapa alat rekayasa balik seperti Hopper Disassembler untuk mengungkap beberapa mekanisme otentikasi tidak berdokumen. Mendukung berbagi Teks , URL , Gambar , Audio , Video , dan File ke WeChat , QQ , Alipay atau Weibo . MonkeyKing juga dapat memposting pesan ke Weibo melalui halaman web. (Catatan: Audio dan Video eksklusif untuk WeChat atau QQ, dan File eksklusif untuk QQ Dataline)
MonkeyKing juga mendukung pembayaran OAuth dan Seluler melalui WeChat dan Alipay!
Cepat 5, iOS 9
(Untuk Swift 4.2, gunakan versi 1.13.0)
(Untuk Swift 4.1/4.0, gunakan versi 1.11.0)
(Untuk Swift 3, gunakan versi 1.3.0)
Contoh: Bagikan ke WeChat (微信):
Di Info.plist
Target Proyek Anda, atur URL Type
, LSApplicationQueriesSchemes
sebagai berikut:
Anda juga harus menambahkan weixinULAPI
setelah Anda mengaktifkan Tautan Universal pada Aplikasi WeChat Anda.
Daftarkan akun: // tidak perlu dilakukan di sini, tapi demi kenyamanan
func application ( _ application : UIApplication , didFinishLaunchingWithOptions launchOptions : [ UIApplicationLaunchOptionsKey : Any ] ? ) -> Bool {
MonkeyKing . regsiterAccount (
. weChat (
appID : " xxx " ,
appKey : " yyy " ,
miniAppID : nil ,
universalLink : nil // FIXME: You have to adopt Universal Link otherwise your app name becomes "Unauthorized App"(未验证应用)...
)
)
return true
}
Tambahkan kode berikut untuk menangani panggilan balik:
// AppDelegate.swift
func application ( _ app : UIApplication , open url : URL , options : [ UIApplicationOpenURLOptionsKey : Any ] = [ : ] ) -> Bool {
//func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool { // only for iOS 8
return MonkeyKing . handleOpenURL ( url )
}
Ingatlah untuk menangani userActivities jika Anda menggunakan UIScene
di proyek Anda:
// SceneDelegate.swift
func scene ( _ scene : UIScene , continue userActivity : NSUserActivity ) {
MonkeyKing . handleOpenUserActivity ( userActivity )
}
Siapkan pesan Anda dan minta MonkeyKing untuk menyampaikannya:
@ IBAction func shareURLToWeChatSession ( sender : UIButton ) {
MonkeyKing . registerAccount ( . weChat ( appID : " xxx " , appKey : " yyy " , miniAppID : nil ) ) // you can do it here (just before deliver)
let message = MonkeyKing . Message . weChat ( . session ( info : (
title : " Session " ,
description : " Hello Session " ,
thumbnail : UIImage ( named : " rabbit " ) ,
media : . url ( URL ( string : " http://www.apple.com/cn " ) ! )
) ) )
MonkeyKing . deliver ( message ) { success in
print ( " shareURLToWeChatSession success: ( success ) " )
}
}
Selesai!
Contoh: Weibo OAuth
MonkeyKing . oauth ( for : . weibo ) { ( oauthInfo , response , error ) -> Void in
print ( " OAuthInfo ( oauthInfo ) error ( error ) " )
// Now, you can use the token to fetch info.
}
atau, WeChat OAuth hanya untuk kode
MonkeyKing . weChatOAuthForCode { [ weak self ] ( code , error ) in
guard let code = code else {
return
}
// TODO: fetch info with code
}
Jika pengguna tidak menginstal Aplikasi Weibo di perangkatnya, maka MonkeyKing akan menggunakan web OAuth:
Contoh: Alipay
let order = MonkeyKing . Order . alipay ( urlString : urlString , scheme : nil )
MonkeyKing . deliver ( order ) { result in
print ( " result: ( result ) " )
}
Anda perlu mengkonfigurasi
pay.php
di server jauh. Anda dapat menemukan contohpay.php
di proyek Demo.
let path = " ... "
MonkeyKing . launch ( . weChat ( . miniApp ( username : " gh_XXX " , path : path , type : . release ) ) ) { result in
switch result {
case . success :
break
case . failure ( let error ) :
print ( " error: " , error )
}
}
Perhatikan bahwa username
memiliki awalan gh_
(原始ID).
Jika Anda ingin menggunakan UIActivityViewController
untuk berbagi maka MonkeyKing memiliki AnyActivity
yang dapat membantu Anda.
Periksa demo untuk informasi lebih lanjut.
github "nixzhu/MonkeyKing"
pod 'MonkeyKing'
https://github.com/nixzhu/MonkeyKing
Terima kasih kepada semua kontributor.
Logo WeChat dari WeChat-Logo oleh Ray.
MonkeyKing tersedia di bawah Lisensi MIT. Lihat file LISENSI untuk info lebih lanjut.