-------android篇java
推薦使用react-native-wechat庫,githup地址:github.com/yorkie/reac… 登陸,分享,收藏(v1.9.9+) 和支付的功能,適合iOS/Android 雙平臺使用。
1.首先你須要一個微信開發者的帳號,而且已認證。
微信開發平臺去註冊帳號而且建立一個移動應用。(地址:open.weixin.qq.com),
注意:在你建立移動應用的時候,Android應用下方的簽名須要與你測試的app一致,若是你不知道。能夠在微信開發官網上下載簽名生成工具來查看app的簽名。 node
// npm安裝
npm install react-native-wechat --save
// yarn 安裝
yarn add react-native-wechat
複製代碼
Android配置
在android/settings.gradle文件下添加如下代碼:react
include ':RCTWeChat'
project(':RCTWeChat').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-wechat/android')
複製代碼
在android/app/build.gradle的dependencies部分添加如下代碼:android
compile project(':RCTWeChat')
複製代碼
在MainActivity.java或者MainApplication.java文件中添加如下代碼:git
import com.theweflex.react.WeChatPackage;
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
...
new WeChatPackage()
);
}
複製代碼
建立名爲'wxapi'的文件夾,並在文件夾內建立WXEntryActivity.java,用於得到微信的受權和分享權限。github
WXEntryActivity.java代碼:
package (這裏是你的包名).wxapi;
import android.app.Activity;
import android.os.Bundle;
import com.theweflex.react.WeChatModule;
public class WXEntryActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WeChatModule.handleIntent(getIntent());
finish();
}
}
複製代碼
在該文件夾內建立 WXPayEntryActivity.java文件,用於微信支付npm
WXPayEntryActivity.java代碼
package (這裏是你的包名).wxapi;
import android.app.Activity;
import android.os.Bundle;
import com.theweflex.react.WeChatModule;
public class WXPayEntryActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WeChatModule.handleIntent(getIntent());
finish();
}
}
複製代碼
在AndroidManifest.xml添加react-native
<manifest>
<application>
<activity
android:name=".wxapi.WXEntryActivity"
android:label="@string/app_name"
android:exported="true"
/>
<activity
android:name=".wxapi.WXPayEntryActivity"
android:label="@string/app_name"
android:exported="true"
/>
</application>
</manifest>
複製代碼
在proguard-rules.pro中添加:api
-keep class com.tencent.mm.sdk.** {
*;
}
複製代碼
配置完成,能夠運行項目調用api來測試啦!!
APIbash
registerApp(appid) :註冊APP
registerAppWithDescription(appid, appdesc) : 註冊APP(僅支持iOS)
isWXAppInstalled() :檢查微信是否安裝
isWXAppSupportApi()
getApiVersion() :得到微信SDK的版本
openWXApp() :打開微信APP
sendAuthRequest([scope[, state]]) :發送微信登陸受權
shareToTimeline(data) : 分享到朋友圈
shareToSession(data) :分享到朋友
pay(data) :調用微信支付
addListener(eventType, listener[, context]) :監聽狀態
once(eventType, listener[, context]) :監聽狀態
removeAllListeners() :移除全部監聽
複製代碼
有可能會遇到的問題
在開發環境中運行正常,可是在打包的時候會有這個錯誤
而後從新打包便可!!!
第一次發,文章格式有點亂,請諒解!