File tree Expand file tree Collapse file tree 5 files changed +46
-8
lines changed
Expand file tree Collapse file tree 5 files changed +46
-8
lines changed Original file line number Diff line number Diff line change @@ -48,23 +48,36 @@ const {
4848export default class MyNotificationsScreen extends React . Component {
4949 static navigationOptions = {
5050 title : "好友详情" ,
51+ avatarPath : "" ,
5152 } ;
5253 constructor ( props ) {
5354 super ( props )
5455 this . state = {
5556 userInfo : this . props . navigation . state . params . user
56- }
57+ }
58+
59+ // JMessage.downloadOriginalUserAvatar({'username': this.state.userInfo.username}, (result) => {
60+ // this.setState({avatarPath: result.filePath})
61+ // }, (eror) => {
62+ // Alert.alert('error',JSON.stringify(error))
63+ // })
64+
65+ JMessage . downloadThumbUserAvatar ( { 'username' : this . state . userInfo . username } , ( result ) => {
66+ this . setState ( { avatarPath : result . filePath } )
67+ } , ( eror ) => {
68+ Alert . alert ( 'error' , JSON . stringify ( error ) )
69+ } )
5770 }
5871
5972 render ( ) {
60- if ( this . state . userInfo . avatarThumbPath === "" ) {
73+ if ( this . state . avatarPath === "" ) {
6174 this . avatar = < Image
6275 source = { require ( '../../resource/group-icon.png' ) }
6376 style = { styles . avatar } >
6477 </ Image >
6578 } else {
6679 this . avatar = < Image
67- source = { { isStatic :true , uri :this . state . userInfo . avatarThumbPath , scale :1 } }
80+ source = { { isStatic :true , uri :this . state . avatarPath , scale :1 } }
6881 style = { styles . avatar } >
6982 </ Image >
7083 }
Original file line number Diff line number Diff line change 2121 "jest" : " 20.0.4" ,
2222 "react-test-renderer" : " 16.0.0-alpha.12"
2323 }
24- }
24+ }
Original file line number Diff line number Diff line change @@ -15,6 +15,7 @@ const syncRoamingMessage = "JMessage.SyncRoamingMessage" // 同步漫游消息
1515const messageRetract = "JMessage.MessageRetract" // 消息撤回事件
1616const contactNotify = "JMessage.ContactNotify" // 收到好友请求消息事件
1717const uploadProgress = "JMessage.UploadProgress" // 收到好友请求消息事件
18+ const conversationChange = "JMessage.conversationChange" // 会话变更事件
1819
1920export default class JMessage {
2021
@@ -898,4 +899,23 @@ export default class JMessage {
898899 listeners [ listener ] = null ;
899900 }
900901
902+ /**
903+ * 会话变更事件
904+ * @param {function } listener = function (conversation) {}
905+ * conversation 为会话对象,具体内容参考文档。
906+ */
907+ static addConversationChangeListener ( listener ) {
908+ listeners [ listener ] = DeviceEventEmitter . addListener ( conversationChange ,
909+ ( message ) => {
910+ listener ( message ) ;
911+ } ) ;
912+ }
913+
914+ static removeConversationChangeListener ( listener ) {
915+ if ( ! listeners [ listener ] ) {
916+ return ;
917+ }
918+ listeners [ listener ] . remove ( ) ;
919+ listeners [ listener ] = null ;
920+ }
901921}
Original file line number Diff line number Diff line change 1818
1919
2020#define receiveMsgEvent @" JMessage.ReceiveMsgEvent" // 接收到消息事件
21+ #define conversationChangeEvent @" JMessage.conversationChange" // 会话变更事件
2122#define loginStateChangedEvent @" JMessage.LoginStateChanged" //
2223#define clickMessageNotificationEvent @" JMessage.ClickMessageNotification" // 点击推送 Android Only
2324#define syncOfflineMessageEvent @" JMessage.SyncOfflineMessage" // 同步离线消息事件
Original file line number Diff line number Diff line change @@ -65,10 +65,10 @@ -(void)initNotifications {
6565 name: kJJMessageReceiveMessage
6666 object: nil ];
6767
68- // [defaultCenter addObserver:self
69- // selector:@selector(conversationChanged:)
70- // name:kJJMessageConversationChanged
71- // object:nil];
68+ [defaultCenter addObserver: self
69+ selector: @selector (conversationChanged: )
70+ name: kJJMessageConversationChanged
71+ object: nil ];
7272 // have
7373 [defaultCenter addObserver: self
7474 selector: @selector (didSendMessage: )
@@ -182,6 +182,10 @@ - (void)didReceiveJMessageMessage:(NSNotification *)notification {
182182 [self .bridge.eventDispatcher sendAppEventWithName: receiveMsgEvent body: notification.object];
183183}
184184
185+ - (void )conversationChanged : (NSNotification *)notification {
186+ [self .bridge.eventDispatcher sendAppEventWithName: conversationChangeEvent body: notification.object];
187+ }
188+
185189// #pragma mark IM - User
186190
187191
You can’t perform that action at this time.
0 commit comments