Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
jmessage-react-plugin
Advanced tools
极光官方开发的极光 IM react-native 插件,同时支持 文字、图片、语言、文件和自定义消息。同时支持 iOS 和 Android 平台。
3.1.8
1.需要在AppDelegate.m 中手动添加初始化方法,示例如下
#import <RCTJMessageModule.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[JMessage setupJMessage:launchOptions
appKey:appKey
channel:@""
apsForProduction:isProduction
category:nil
messageRoaming:true];
[JMessage addDelegate:self withConversation:nil];
}
//JMessage 离线消息监听
- (void)onSyncOfflineMessageConversation:(JMSGConversation *)conversation
offlineMessages:(NSArray JMSG_GENERIC ( __kindof JMSGMessage *) *)offlineMessages {
[RCTJMessageEventQueue sharedInstance].offlineConversation = conversation;
[RCTJMessageEventQueue sharedInstance].offlineMsgArray = offlineMessages;
}
2.js中初始化和监听需要在componentDidMount()componentDidMount()方法内,示例如下
componentDidMount() {
JMessage.init({
appkey: appkey,
channel:channel
isOpenMessageRoaming: true,
isProduction: true,
});
JMessage.setDebugMode({enable: true});
//离线消息监听
JMessage.addSyncOfflineMessageListener((message) => {
console.log("| JIGUANG |===addSyncOfflineMessageListener====" + JSON.stringify(message))
});
}
npm install jmessage-react-plugin --save
npm install jcore-react-native --save(目前 jmessage-react-plugin 2.1.1 版本需要指定安装 jcore-react-native 1.2.1 以上版本)
react-native link
注意: 如果已经通过 react-native link 链接了插件,则不需要执行下面的步骤。
在 Podfile 中添加如下代码:
pod 'JMessageRN', :path => '../node_modules/jmessage-react-plugin'
终端执行如下指令:
pod install
meta-data
部分...
<meta-data android:name="JPUSH_CHANNEL" android:value="${APP_CHANNEL}" />
<meta-data android:name="JPUSH_APPKEY" android:value="${JPUSH_APPKEY}" />
...
defaultConfig {
applicationId "你的 application id"
minSdkVersion 16
targetSdkVersion 22
versionCode 1
versionName "1.0"
ndk {
abiFilters "armeabi-v7a", "x86"
}
manifestPlaceholders = [
JPUSH_APPKEY: "你的 appKey", //在此替换你的APPKey
APP_CHANNEL: "developer-default" //应用渠道号
]
}
在 MainApplication 中加上 JMessagePackage 即可,JMessagePackage 有一个参数,设置是否弹出 toast。
// 如果设置为 true,则不弹出 toast。
private boolean shutdownToast = false;
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new JMessageReactPackage(shutdownToast),
);
}
打开工程,进入 Build Settings -> Framework search paths 添加 framework 搜索路径
$(SRCROOT)/../node_modules/jmessage-react-plugin/ios/RCTJMessageModule
打开工程,进入 Build Settings -> Other Link Flag 添加一行编译选项
-framework "JMessage"
FAQs
a jmessage plugin for react native application
We found that jmessage-react-plugin demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.