-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* add janalytics native plugin * add new plugin of wechat * rm janalytics plugin * Update index.ts * Update index.ts * Update index.ts
- Loading branch information
1 parent
90d75af
commit 10ac9ff
Showing
1 changed file
with
166 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,166 @@ | ||
import { Injectable } from '@angular/core'; | ||
import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; | ||
|
||
/** | ||
* @name Wechat | ||
* @description | ||
* A cordova plugin, a JS version of Wechat SDK | ||
* | ||
* @usage | ||
* ```typescript | ||
* import { Wechat } from '@ionic-native/wechat'; | ||
* | ||
* | ||
* constructor(private wechat: Wechat) { } | ||
* | ||
* ... | ||
* | ||
* | ||
* this.wechat.functionName('Hello', 123) | ||
* .then((res: any) => console.log(res)) | ||
* .catch((error: any) => console.error(error)); | ||
* | ||
* ``` | ||
*/ | ||
@Plugin({ | ||
pluginName: 'Wechat', | ||
plugin: 'cordova-plugin-wechat', | ||
pluginRef: 'Wechat', | ||
repo: 'https://github.com/xu-li/cordova-plugin-wechat.git', | ||
install: 'cordova plugin add cordova-plugin-wechat --variable wechatappid=YOUR_WECHAT_APPID', | ||
installVariables: ['wechatappid'], | ||
platforms: ['Android', 'iOS'] | ||
}) | ||
@Injectable() | ||
export class Wechat extends IonicNativePlugin { | ||
Scene: { | ||
SESSION: 0; // 聊天界面 | ||
TIMELINE: 1; // 朋友圈 | ||
FAVORITE: 2; // 收藏 | ||
}; | ||
|
||
Type: { | ||
APP: 1; | ||
EMOTION: 2; | ||
FILE: 3; | ||
IMAGE: 4; | ||
MUSIC: 5; | ||
VIDEO: 6; | ||
WEBPAGE: 7; | ||
}; | ||
|
||
@Cordova() | ||
isInstalled(): Promise<any> { | ||
return; | ||
} | ||
|
||
/** | ||
* Share a message to wechat app | ||
* | ||
* @example | ||
* <code> | ||
* this.wechat.share({ | ||
* message: { | ||
* title: "Message Title", | ||
* description: "Message Description(optional)", | ||
* mediaTagName: "Media Tag Name(optional)", | ||
* thumb: "http://YOUR_THUMBNAIL_IMAGE", | ||
* media: { | ||
* type: Wechat.Type.WEBPAGE, // webpage | ||
* webpageUrl: "https://github.com/xu-li/cordova-plugin-wechat" // webpage | ||
* } | ||
* }, | ||
* scene: this.wechat.Scene.TIMELINE // share to Timeline | ||
* }.then(() => { | ||
* console.log('share success'); | ||
* }) | ||
* .catch(error => { | ||
* console.log(error); | ||
* }); | ||
* </code> | ||
*/ | ||
@Cordova() | ||
share(params: any): Promise<any> { | ||
return; | ||
} | ||
|
||
/** | ||
* Sending an auth request to Wechat | ||
* | ||
* @example | ||
* <code> | ||
* this.wechat.auth.then((res) => { alert(res.code); }); | ||
* </code> | ||
*/ | ||
auth(scope: any, state: any): Promise<any> { | ||
return; | ||
} | ||
|
||
/** | ||
* Send a payment request | ||
* | ||
* @link https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=9_1 | ||
* @example | ||
* <code> | ||
* var params = { | ||
* mch_id: '10000100', // merchant id | ||
* prepay_id: 'wx201411101639507cbf6ffd8b0779950874', // prepay id returned from server | ||
* nonce: '1add1a30ac87aa2db72f57a2375d8fec', // nonce string returned from server | ||
* timestamp: '1439531364', // timestamp | ||
* sign: '0CB01533B8C1EF103065174F50BCA001', // signed string | ||
* }; | ||
* this.wechat.sendPaymentRequest(params).then(() => { | ||
* console.log("Success"); | ||
* }).catch(error => { | ||
* console.log(error); | ||
* }); | ||
* </code> | ||
*/ | ||
sendPaymentRequest(params: any): Promise<any> { | ||
return; | ||
} | ||
|
||
/** | ||
* jumpToBizProfile (跳转到某个微信公众号)2016-11-11 测试是失效的,囧 | ||
* | ||
* @link https://segmentfault.com/a/1190000007204624 | ||
* @link https://segmentfault.com/q/1010000003907796 | ||
* @example | ||
* <code> | ||
* var params = { | ||
* info: 'gh_xxxxxxx', // 公众帐号原始ID | ||
* type: 'Normal' // 普通号 | ||
* } | ||
* or | ||
* var params = { | ||
* info: 'extMsg', // 相关的硬件二维码串 | ||
* type: 'Device' // 硬件号 | ||
* }; | ||
* this.wechat.jumpToBizProfile(params).then(()=> { | ||
* console.log("Success"); | ||
* }).catch(error => { | ||
* console.log(error); | ||
* }); | ||
* </code> | ||
*/ | ||
jumpToWechat(url: string): Promise<any> { | ||
return; | ||
} | ||
|
||
/** | ||
* chooseInvoiceFromWX exq:choose invoices from Wechat card list | ||
* | ||
* @example | ||
* <code> | ||
* params: signType, cardSign, nonceStr, timeStamp all required | ||
* this.wechat.chooseInvoiceFromWX(params).then(() => { | ||
* console.log("Success"); | ||
* }).catch(error => { | ||
* console.log(error); | ||
* }); | ||
* </code> | ||
*/ | ||
chooseInvoiceFromWX(params: any): Promise<any> { | ||
return; | ||
} | ||
} |