Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
ccim_sdk_android
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sheteng
ccim_sdk_android
Commits
cd37fbf6
Commit
cd37fbf6
authored
Dec 07, 2021
by
sheteng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
开始测试 2
搜索好友列表
parent
b573ce5e
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
112 additions
and
66 deletions
+112
-66
app/src/main/java/com/ccwangluo/im/FirstFragment.java
app/src/main/java/com/ccwangluo/im/FirstFragment.java
+6
-6
app/src/main/java/com/ccwangluo/im/ui/dashboard/ConnectFragment.java
...n/java/com/ccwangluo/im/ui/dashboard/ConnectFragment.java
+6
-6
app/src/main/java/com/ccwangluo/im/ui/dashboard/ContactsFragment.java
.../java/com/ccwangluo/im/ui/dashboard/ContactsFragment.java
+34
-23
app/src/main/java/com/ccwangluo/im/ui/login/LoginActivity.java
...rc/main/java/com/ccwangluo/im/ui/login/LoginActivity.java
+3
-3
app/src/main/java/com/ccwangluo/im/ui/notifications/ConnectChannelFragment.java
...ccwangluo/im/ui/notifications/ConnectChannelFragment.java
+5
-5
app/src/main/java/com/ccwangluo/im/ui/notifications/NotificationsFragment.java
.../ccwangluo/im/ui/notifications/NotificationsFragment.java
+8
-8
app/src/main/java/com/ccwangluo/im/util/ToastUtil.java
app/src/main/java/com/ccwangluo/im/util/ToastUtil.java
+14
-0
ccim/src/main/java/com/ccwangluo/ccim/CCIMClient.java
ccim/src/main/java/com/ccwangluo/ccim/CCIMClient.java
+8
-6
ccim/src/main/java/com/ccwangluo/ccim/manage/ContactManager.java
...c/main/java/com/ccwangluo/ccim/manage/ContactManager.java
+9
-3
ccim/src/main/java/com/ccwangluo/ccim/modle/SearchRes.java
ccim/src/main/java/com/ccwangluo/ccim/modle/SearchRes.java
+9
-0
ccim/src/main/proto/chat.proto
ccim/src/main/proto/chat.proto
+10
-6
No files found.
app/src/main/java/com/ccwangluo/im/FirstFragment.java
View file @
cd37fbf6
...
@@ -137,12 +137,12 @@ public class FirstFragment extends Fragment {
...
@@ -137,12 +137,12 @@ public class FirstFragment extends Fragment {
binding
.
searchUser
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
binding
.
searchUser
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
@Override
public
void
onClick
(
View
v
)
{
public
void
onClick
(
View
v
)
{
CCIMClient
.
getInstance
().
searchUser
(
binding
.
userName
.
getText
().
toString
(),
new
ResultEventCallback
<
List
<
User
>>()
{
//
CCIMClient.getInstance().searchUser(binding.userName.getText().toString(), new ResultEventCallback<List<User>>() {
@Override
//
@Override
public
void
onSuccess
(
List
<
User
>
users
)
{
//
public void onSuccess(List<User> users) {
refreshLogView
(
users
.
toString
());
//
refreshLogView(users.toString());
}
//
}
});
//
});
}
}
});
});
...
...
app/src/main/java/com/ccwangluo/im/ui/dashboard/ConnectFragment.java
View file @
cd37fbf6
...
@@ -5,7 +5,6 @@ import android.view.LayoutInflater;
...
@@ -5,7 +5,6 @@ import android.view.LayoutInflater;
import
android.view.MotionEvent
;
import
android.view.MotionEvent
;
import
android.view.View
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
android.widget.Toast
;
import
androidx.fragment.app.Fragment
;
import
androidx.fragment.app.Fragment
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.Observer
;
...
@@ -13,12 +12,13 @@ import androidx.lifecycle.ViewModelProvider;
...
@@ -13,12 +12,13 @@ import androidx.lifecycle.ViewModelProvider;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.listener.ResultCallback
;
import
com.ccwangluo.ccim.listener.ResultCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.ccim.modle.Contact
;
import
com.ccwangluo.ccim.modle.Contact
;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.im.adapter.PrivateMsgAdapter
;
import
com.ccwangluo.im.adapter.PrivateMsgAdapter
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.databinding.FragmentConnectBinding
;
import
com.ccwangluo.im.databinding.FragmentConnectBinding
;
import
com.ccwangluo.im.util.ToastUtil
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -72,12 +72,12 @@ public class ConnectFragment extends Fragment {
...
@@ -72,12 +72,12 @@ public class ConnectFragment extends Fragment {
public
void
onSuccess
(
MessageContent
messageContent
)
{
public
void
onSuccess
(
MessageContent
messageContent
)
{
binding
.
sendEdit
.
setText
(
""
);
binding
.
sendEdit
.
setText
(
""
);
loginViewModel
.
addPrivateMsg
(
messageContent
);
loginViewModel
.
addPrivateMsg
(
messageContent
);
Toast
.
makeText
(
getContext
(),
"send Success"
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send Success"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
"send onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send onFailed :"
+
errorCode
);
}
}
});
});
}
}
...
@@ -92,11 +92,11 @@ public class ConnectFragment extends Fragment {
...
@@ -92,11 +92,11 @@ public class ConnectFragment extends Fragment {
public
void
onSuccess
(
MessageContent
message
)
{
public
void
onSuccess
(
MessageContent
message
)
{
binding
.
sendEdit
.
setText
(
""
);
binding
.
sendEdit
.
setText
(
""
);
loginViewModel
.
addPrivateMsg
(
message
);
loginViewModel
.
addPrivateMsg
(
message
);
Toast
.
makeText
(
getContext
(),
"send Success"
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send Success"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
"send onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send onFailed :"
+
errorCode
);
}
}
});
});
}
}
...
...
app/src/main/java/com/ccwangluo/im/ui/dashboard/ContactsFragment.java
View file @
cd37fbf6
...
@@ -7,7 +7,7 @@ import android.view.LayoutInflater;
...
@@ -7,7 +7,7 @@ import android.view.LayoutInflater;
import
android.view.View
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
android.widget.EditText
;
import
android.widget.EditText
;
import
android.widget.
Toas
t
;
import
android.widget.
LinearLayou
t
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.NonNull
;
import
androidx.fragment.app.Fragment
;
import
androidx.fragment.app.Fragment
;
...
@@ -17,17 +17,19 @@ import androidx.navigation.NavController;
...
@@ -17,17 +17,19 @@ import androidx.navigation.NavController;
import
androidx.navigation.Navigation
;
import
androidx.navigation.Navigation
;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.listener.ResultCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.ccim.modle.Contact
;
import
com.ccwangluo.ccim.modle.Contact
;
import
com.ccwangluo.ccim.modle.ContactGroup
;
import
com.ccwangluo.ccim.modle.ContactGroup
;
import
com.ccwangluo.ccim.modle.Dialog
;
import
com.ccwangluo.ccim.modle.Dialog
;
import
com.ccwangluo.ccim.modle.SearchRes
;
import
com.ccwangluo.ccim.modle.User
;
import
com.ccwangluo.ccim.modle.User
;
import
com.ccwangluo.ccim.listener.ResultCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.im.R
;
import
com.ccwangluo.im.R
;
import
com.ccwangluo.im.adapter.ContactExpandableAdapter
;
import
com.ccwangluo.im.adapter.ContactExpandableAdapter
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.databinding.FragmentDashboardBinding
;
import
com.ccwangluo.im.databinding.FragmentDashboardBinding
;
import
com.ccwangluo.im.listener.OnContactClickLisener
;
import
com.ccwangluo.im.listener.OnContactClickLisener
;
import
com.ccwangluo.im.util.ToastUtil
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
...
@@ -68,7 +70,7 @@ public class ContactsFragment extends Fragment {
...
@@ -68,7 +70,7 @@ public class ContactsFragment extends Fragment {
public
void
onChanged
(
Collection
<
Contact
>
contacts
)
{
public
void
onChanged
(
Collection
<
Contact
>
contacts
)
{
contactList
.
clear
();
contactList
.
clear
();
contactList
.
addAll
(
contacts
);
contactList
.
addAll
(
contacts
);
contactExpandableAdapter
.
reFreshData
(
contactGroupList
,
contactList
,
dialogList
);
contactExpandableAdapter
.
reFreshData
(
contactGroupList
,
contactList
,
dialogList
);
}
}
});
});
...
@@ -77,7 +79,7 @@ public class ContactsFragment extends Fragment {
...
@@ -77,7 +79,7 @@ public class ContactsFragment extends Fragment {
public
void
onChanged
(
Collection
<
ContactGroup
>
contactGroups
)
{
public
void
onChanged
(
Collection
<
ContactGroup
>
contactGroups
)
{
contactGroupList
.
clear
();
contactGroupList
.
clear
();
contactGroupList
.
addAll
(
contactGroups
);
contactGroupList
.
addAll
(
contactGroups
);
contactExpandableAdapter
.
reFreshData
(
contactGroupList
,
contactList
,
dialogList
);
contactExpandableAdapter
.
reFreshData
(
contactGroupList
,
contactList
,
dialogList
);
}
}
});
});
...
@@ -86,7 +88,7 @@ public class ContactsFragment extends Fragment {
...
@@ -86,7 +88,7 @@ public class ContactsFragment extends Fragment {
public
void
onChanged
(
Collection
<
Dialog
>
dialogs
)
{
public
void
onChanged
(
Collection
<
Dialog
>
dialogs
)
{
dialogList
.
clear
();
dialogList
.
clear
();
dialogList
.
addAll
(
dialogs
);
dialogList
.
addAll
(
dialogs
);
contactExpandableAdapter
.
reFreshData
(
contactGroupList
,
contactList
,
dialogList
);
contactExpandableAdapter
.
reFreshData
(
contactGroupList
,
contactList
,
dialogList
);
}
}
});
});
...
@@ -94,25 +96,34 @@ public class ContactsFragment extends Fragment {
...
@@ -94,25 +96,34 @@ public class ContactsFragment extends Fragment {
@Override
@Override
public
void
onClick
(
View
v
)
{
public
void
onClick
(
View
v
)
{
final
EditText
inputServer
=
new
EditText
(
getContext
());
LinearLayout
linearLayout
=
new
LinearLayout
(
getContext
());
linearLayout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
final
EditText
etUserName
=
new
EditText
(
getContext
());
etUserName
.
setHint
(
"etUserName"
);
final
EditText
etUserId
=
new
EditText
(
getContext
());
etUserId
.
setHint
(
"etUserId"
);
linearLayout
.
addView
(
etUserName
);
linearLayout
.
addView
(
etUserId
);
AlertDialog
.
Builder
builder
=
new
AlertDialog
.
Builder
(
getContext
());
AlertDialog
.
Builder
builder
=
new
AlertDialog
.
Builder
(
getContext
());
builder
.
setTitle
(
"username"
).
setIcon
(
android
.
R
.
drawable
.
ic_dialog_info
).
setView
(
inputServer
)
builder
.
setTitle
(
"username"
).
setIcon
(
android
.
R
.
drawable
.
ic_dialog_info
).
setView
(
linearLayout
)
.
setNegativeButton
(
"Cancel"
,
null
);
.
setNegativeButton
(
"Cancel"
,
null
);
builder
.
setPositiveButton
(
"Ok"
,
new
DialogInterface
.
OnClickListener
()
{
builder
.
setPositiveButton
(
"Ok"
,
new
DialogInterface
.
OnClickListener
()
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
String
userName
=
inputServer
.
getText
().
toString
();
String
userName
=
etUserName
.
getText
().
toString
();
CCIMClient
.
getInstance
().
searchUser
(
userName
,
new
ResultEventCallback
<
List
<
User
>>()
{
String
userId
=
etUserId
.
getText
().
toString
();
Long
id
=
0L
;
if
(!
userId
.
isEmpty
())
{
id
=
Long
.
parseLong
(
userId
);
}
CCIMClient
.
getInstance
().
searchUser
(
userName
,
id
,
1
,
5
,
new
ResultEventCallback
<
SearchRes
>()
{
@Override
@Override
public
void
onSuccess
(
List
<
User
>
users
)
{
public
void
onSuccess
(
SearchRes
searchRes
)
{
if
(
users
!=
null
&&
users
.
size
()
>
0
)
{
int
total
=
searchRes
.
getTotal
();
showSearchResultdialog
(
users
);
if
(
searchRes
.
getUsers
().
size
()
>
0
)
{
showSearchResultdialog
(
searchRes
.
getUsers
());
}
}
}
}
@Override
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
" onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
();
}
});
});
}
}
});
});
...
@@ -141,13 +152,13 @@ public class ContactsFragment extends Fragment {
...
@@ -141,13 +152,13 @@ public class ContactsFragment extends Fragment {
CCIMClient
.
getInstance
().
createContactGroup
(
groupname
,
new
ResultEventCallback
<
Long
>()
{
CCIMClient
.
getInstance
().
createContactGroup
(
groupname
,
new
ResultEventCallback
<
Long
>()
{
@Override
@Override
public
void
onSuccess
(
Long
aLong
)
{
public
void
onSuccess
(
Long
aLong
)
{
Toast
.
makeText
(
getContext
(),
"createContactGroup success"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"createContactGroup success"
);
loginViewModel
.
getContactList
();
loginViewModel
.
getContactList
();
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
" onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
" onFailed :"
+
errorCode
);
}
}
});
});
}
}
...
@@ -184,13 +195,13 @@ public class ContactsFragment extends Fragment {
...
@@ -184,13 +195,13 @@ public class ContactsFragment extends Fragment {
CCIMClient
.
getInstance
().
checkContactReq
(
users
.
get
(
which
).
getUserId
(),
true
,
new
ResultCallback
()
{
CCIMClient
.
getInstance
().
checkContactReq
(
users
.
get
(
which
).
getUserId
(),
true
,
new
ResultCallback
()
{
@Override
@Override
public
void
onSuccess
()
{
public
void
onSuccess
()
{
Toast
.
makeText
(
getContext
(),
"验证好友发送成功"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"验证好友发送成功"
);
loginViewModel
.
getContactList
();
loginViewModel
.
getContactList
();
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
"验证好友失败 : "
+
errorCode
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"验证好友失败 : "
+
errorCode
);
}
}
});
});
}
}
...
@@ -217,12 +228,12 @@ public class ContactsFragment extends Fragment {
...
@@ -217,12 +228,12 @@ public class ContactsFragment extends Fragment {
CCIMClient
.
getInstance
().
addContact
(
users
.
get
(
which
).
getUserId
(),
new
ResultCallback
()
{
CCIMClient
.
getInstance
().
addContact
(
users
.
get
(
which
).
getUserId
(),
new
ResultCallback
()
{
@Override
@Override
public
void
onSuccess
()
{
public
void
onSuccess
()
{
Toast
.
makeText
(
getContext
(),
"加好友发送成功"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"加好友发送成功"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
"加好友失败 : "
+
errorCode
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"加好友失败 : "
+
errorCode
);
}
}
});
});
}
}
...
...
app/src/main/java/com/ccwangluo/im/ui/login/LoginActivity.java
View file @
cd37fbf6
...
@@ -6,7 +6,6 @@ import android.text.TextUtils;
...
@@ -6,7 +6,6 @@ import android.text.TextUtils;
import
android.view.View
;
import
android.view.View
;
import
android.widget.Button
;
import
android.widget.Button
;
import
android.widget.EditText
;
import
android.widget.EditText
;
import
android.widget.Toast
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.Observer
;
...
@@ -15,6 +14,7 @@ import androidx.lifecycle.ViewModelProvider;
...
@@ -15,6 +14,7 @@ import androidx.lifecycle.ViewModelProvider;
import
com.ccwangluo.im.MainActivity2
;
import
com.ccwangluo.im.MainActivity2
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.databinding.ActivityLoginBinding
;
import
com.ccwangluo.im.databinding.ActivityLoginBinding
;
import
com.ccwangluo.im.util.ToastUtil
;
public
class
LoginActivity
extends
AppCompatActivity
{
public
class
LoginActivity
extends
AppCompatActivity
{
...
@@ -53,12 +53,12 @@ public class LoginActivity extends AppCompatActivity {
...
@@ -53,12 +53,12 @@ public class LoginActivity extends AppCompatActivity {
public
void
onClick
(
View
v
)
{
public
void
onClick
(
View
v
)
{
String
username
=
usernameEditText
.
getText
().
toString
();
String
username
=
usernameEditText
.
getText
().
toString
();
if
(
TextUtils
.
isEmpty
(
username
))
{
if
(
TextUtils
.
isEmpty
(
username
))
{
Toast
.
makeText
(
LoginActivity
.
this
,
"username is empty"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
LoginActivity
.
this
,
"username is empty"
);
return
;
return
;
}
}
String
id
=
UserIdEditText
.
getText
().
toString
();
String
id
=
UserIdEditText
.
getText
().
toString
();
if
(
TextUtils
.
isEmpty
(
id
))
{
if
(
TextUtils
.
isEmpty
(
id
))
{
Toast
.
makeText
(
LoginActivity
.
this
,
"userid is empty"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
LoginActivity
.
this
,
"userid is empty"
);
return
;
return
;
}
}
String
appkey
=
binding
.
appkey
.
getText
().
toString
();
String
appkey
=
binding
.
appkey
.
getText
().
toString
();
...
...
app/src/main/java/com/ccwangluo/im/ui/notifications/ConnectChannelFragment.java
View file @
cd37fbf6
...
@@ -5,7 +5,6 @@ import android.view.LayoutInflater;
...
@@ -5,7 +5,6 @@ import android.view.LayoutInflater;
import
android.view.MotionEvent
;
import
android.view.MotionEvent
;
import
android.view.View
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
android.widget.Toast
;
import
androidx.fragment.app.Fragment
;
import
androidx.fragment.app.Fragment
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.Observer
;
...
@@ -18,6 +17,7 @@ import com.ccwangluo.ccim.modle.MessageContent;
...
@@ -18,6 +17,7 @@ import com.ccwangluo.ccim.modle.MessageContent;
import
com.ccwangluo.im.adapter.ChannelMsgAdapter
;
import
com.ccwangluo.im.adapter.ChannelMsgAdapter
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.databinding.FragmentChannelConnectBinding
;
import
com.ccwangluo.im.databinding.FragmentChannelConnectBinding
;
import
com.ccwangluo.im.util.ToastUtil
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -70,11 +70,11 @@ public class ConnectChannelFragment extends Fragment {
...
@@ -70,11 +70,11 @@ public class ConnectChannelFragment extends Fragment {
public
void
onSuccess
(
MessageContent
messageContent
)
{
public
void
onSuccess
(
MessageContent
messageContent
)
{
binding
.
sendEdit
.
setText
(
""
);
binding
.
sendEdit
.
setText
(
""
);
loginViewModel
.
addChannelMsg
(
messageContent
);
loginViewModel
.
addChannelMsg
(
messageContent
);
Toast
.
makeText
(
getContext
(),
"send Success"
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send Success"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
"send onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send onFailed :"
+
errorCode
);
}
}
});
});
}
}
...
@@ -89,12 +89,12 @@ public class ConnectChannelFragment extends Fragment {
...
@@ -89,12 +89,12 @@ public class ConnectChannelFragment extends Fragment {
public
void
onSuccess
(
MessageContent
message
)
{
public
void
onSuccess
(
MessageContent
message
)
{
binding
.
sendEdit
.
setText
(
""
);
binding
.
sendEdit
.
setText
(
""
);
loginViewModel
.
addChannelMsg
(
message
);
loginViewModel
.
addChannelMsg
(
message
);
Toast
.
makeText
(
getContext
(),
"send Success"
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send Success"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
"send onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"send onFailed :"
+
errorCode
);
}
}
});
});
}
}
...
...
app/src/main/java/com/ccwangluo/im/ui/notifications/NotificationsFragment.java
View file @
cd37fbf6
...
@@ -13,7 +13,6 @@ import android.view.ViewGroup;
...
@@ -13,7 +13,6 @@ import android.view.ViewGroup;
import
android.widget.CheckBox
;
import
android.widget.CheckBox
;
import
android.widget.EditText
;
import
android.widget.EditText
;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
android.widget.Toast
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.NonNull
;
import
androidx.fragment.app.Fragment
;
import
androidx.fragment.app.Fragment
;
...
@@ -30,6 +29,7 @@ import com.ccwangluo.im.adapter.ChannelAdapter;
...
@@ -30,6 +29,7 @@ import com.ccwangluo.im.adapter.ChannelAdapter;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.data.LoginViewModel
;
import
com.ccwangluo.im.databinding.FragmentNotificationsBinding
;
import
com.ccwangluo.im.databinding.FragmentNotificationsBinding
;
import
com.ccwangluo.im.listener.ChannelClickListener
;
import
com.ccwangluo.im.listener.ChannelClickListener
;
import
com.ccwangluo.im.util.ToastUtil
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -87,20 +87,20 @@ public class NotificationsFragment extends Fragment {
...
@@ -87,20 +87,20 @@ public class NotificationsFragment extends Fragment {
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
String
channelId
=
inputServer
.
getText
().
toString
();
String
channelId
=
inputServer
.
getText
().
toString
();
if
(
TextUtils
.
isEmpty
(
channelId
)){
if
(
TextUtils
.
isEmpty
(
channelId
)){
Toast
.
makeText
(
getContext
(),
"channel id is null"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"channel id is null"
);
return
;
return
;
}
}
long
Id
=
Long
.
parseLong
(
channelId
);
long
Id
=
Long
.
parseLong
(
channelId
);
CCIMClient
.
getInstance
().
joinChannel
(
Id
,
new
ResultCallback
()
{
CCIMClient
.
getInstance
().
joinChannel
(
Id
,
new
ResultCallback
()
{
@Override
@Override
public
void
onSuccess
()
{
public
void
onSuccess
()
{
Toast
.
makeText
(
getContext
(),
"join success"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"join success"
);
loginViewModel
.
addChannelId
(
Id
);
loginViewModel
.
addChannelId
(
Id
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
" onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
" onFailed :"
+
errorCode
);
}
}
});
});
...
@@ -150,12 +150,12 @@ public class NotificationsFragment extends Fragment {
...
@@ -150,12 +150,12 @@ public class NotificationsFragment extends Fragment {
ClipboardManager
cm
=
(
ClipboardManager
)
getContext
().
getSystemService
(
Context
.
CLIPBOARD_SERVICE
);
ClipboardManager
cm
=
(
ClipboardManager
)
getContext
().
getSystemService
(
Context
.
CLIPBOARD_SERVICE
);
ClipData
mClipData
=
ClipData
.
newPlainText
(
"Label"
,
aLong
.
toString
());
ClipData
mClipData
=
ClipData
.
newPlainText
(
"Label"
,
aLong
.
toString
());
cm
.
setPrimaryClip
(
mClipData
);
cm
.
setPrimaryClip
(
mClipData
);
Toast
.
makeText
(
getContext
(),
"create success,id copy success"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"create success,id copy success"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
" onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
" onFailed :"
+
errorCode
);
}
}
});
});
}
}
...
@@ -179,12 +179,12 @@ public class NotificationsFragment extends Fragment {
...
@@ -179,12 +179,12 @@ public class NotificationsFragment extends Fragment {
@Override
@Override
public
void
onSuccess
()
{
public
void
onSuccess
()
{
loginViewModel
.
removeChannelId
(
id
);
loginViewModel
.
removeChannelId
(
id
);
Toast
.
makeText
(
getContext
(),
"退出成功"
,
Toast
.
LENGTH_SHORT
).
show
(
);
Toast
Util
.
show
(
getContext
(),
"退出成功"
);
}
}
@Override
@Override
public
void
onFailed
(
int
errorCode
)
{
public
void
onFailed
(
int
errorCode
)
{
Toast
.
makeText
(
getContext
(),
" onFailed :"
+
errorCode
,
Toast
.
LENGTH_LONG
).
show
(
);
Toast
Util
.
show
(
getContext
(),
" onFailed :"
+
errorCode
);
}
}
});
});
break
;
break
;
...
...
app/src/main/java/com/ccwangluo/im/util/ToastUtil.java
0 → 100644
View file @
cd37fbf6
package
com.ccwangluo.im.util
;
import
android.content.Context
;
import
android.widget.Toast
;
public
class
ToastUtil
{
public
static
void
show
(
Context
context
,
String
msg
)
{
if
(
context
==
null
)
{
return
;
}
Toast
.
makeText
(
context
,
msg
,
Toast
.
LENGTH_SHORT
).
show
();
}
}
ccim/src/main/java/com/ccwangluo/ccim/CCIMClient.java
View file @
cd37fbf6
...
@@ -4,7 +4,9 @@ import android.Manifest;
...
@@ -4,7 +4,9 @@ import android.Manifest;
import
android.content.Context
;
import
android.content.Context
;
import
android.os.Environment
;
import
android.os.Environment
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
androidx.fragment.app.FragmentActivity
;
import
androidx.fragment.app.FragmentActivity
;
import
com.ccwangluo.ccim.listener.ContactsCallBack
;
import
com.ccwangluo.ccim.listener.ContactsCallBack
;
import
com.ccwangluo.ccim.listener.OnClientConnectListener
;
import
com.ccwangluo.ccim.listener.OnClientConnectListener
;
import
com.ccwangluo.ccim.listener.OnConnectListener
;
import
com.ccwangluo.ccim.listener.OnConnectListener
;
...
@@ -20,17 +22,20 @@ import com.ccwangluo.ccim.modle.Contact;
...
@@ -20,17 +22,20 @@ import com.ccwangluo.ccim.modle.Contact;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.ccim.modle.NetStatus
;
import
com.ccwangluo.ccim.modle.NetStatus
;
import
com.ccwangluo.ccim.modle.PushPrivateMsgRes
;
import
com.ccwangluo.ccim.modle.PushPrivateMsgRes
;
import
com.ccwangluo.ccim.modle.SearchRes
;
import
com.ccwangluo.ccim.modle.User
;
import
com.ccwangluo.ccim.modle.User
;
import
com.ccwangluo.ccim.util.ErrorCode
;
import
com.ccwangluo.ccim.util.ErrorCode
;
import
com.ccwangluo.ccim.util.MediaHelper
;
import
com.ccwangluo.ccim.util.MediaHelper
;
import
com.google.gson.Gson
;
import
com.google.gson.Gson
;
import
com.google.protobuf.util.JsonFormat
;
import
com.google.protobuf.util.JsonFormat
;
import
com.permissionx.guolindev.PermissionX
;
import
com.permissionx.guolindev.PermissionX
;
import
java.io.File
;
import
java.io.File
;
import
java.util.List
;
import
java.util.List
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
import
java.util.concurrent.Executors
;
import
java.util.logging.Logger
;
import
java.util.logging.Logger
;
import
ccim.protocol.Chat
;
import
ccim.protocol.Chat
;
import
ccim.protocol.Message
;
import
ccim.protocol.Message
;
import
ccim.protocol.MessageSpec
;
import
ccim.protocol.MessageSpec
;
...
@@ -202,8 +207,8 @@ public class CCIMClient {
...
@@ -202,8 +207,8 @@ public class CCIMClient {
/**
/**
* 搜索好友
* 搜索好友
*/
*/
public
void
searchUser
(
String
userName
,
ResultEventCallback
<
List
<
User
>
>
resultEventCallback
)
{
public
void
searchUser
(
String
userName
,
Long
userId
,
int
page
,
int
size
,
ResultEventCallback
<
SearchRes
>
resultEventCallback
)
{
contactManager
.
searchUser
(
userName
,
resultEventCallback
);
contactManager
.
searchUser
(
userName
,
userId
,
page
,
size
,
resultEventCallback
);
}
}
/**
/**
...
@@ -219,7 +224,6 @@ public class CCIMClient {
...
@@ -219,7 +224,6 @@ public class CCIMClient {
*/
*/
public
void
getContactReqList
(
ResultEventCallback
<
List
<
User
>>
callback
)
{
public
void
getContactReqList
(
ResultEventCallback
<
List
<
User
>>
callback
)
{
contactManager
.
getContactReqList
(
callback
);
contactManager
.
getContactReqList
(
callback
);
}
}
/**
/**
...
@@ -318,8 +322,6 @@ public class CCIMClient {
...
@@ -318,8 +322,6 @@ public class CCIMClient {
/**
/**
* 校验时间间隔
* 校验时间间隔
*
* @return
*/
*/
private
boolean
checkTimeInterval
()
{
private
boolean
checkTimeInterval
()
{
if
(
lastSendTimemillis
!=
0
)
{
if
(
lastSendTimemillis
!=
0
)
{
...
@@ -414,7 +416,7 @@ public class CCIMClient {
...
@@ -414,7 +416,7 @@ public class CCIMClient {
.
onForwardToSettings
((
scope
,
deniedList
)
->
scope
.
showForwardToSettingsDialog
(
deniedList
,
"您需要去应用程序设置当中手动开启权限"
,
"我已明白"
))
.
onForwardToSettings
((
scope
,
deniedList
)
->
scope
.
showForwardToSettingsDialog
(
deniedList
,
"您需要去应用程序设置当中手动开启权限"
,
"我已明白"
))
.
request
((
allGranted
,
grantedList
,
deniedList
)
->
{
.
request
((
allGranted
,
grantedList
,
deniedList
)
->
{
if
(
allGranted
)
{
if
(
allGranted
)
{
MediaHelper
.
getInstance
().
prepare
(
cachePath
,
maxAudioDuration
,
resultCallback
);
MediaHelper
.
getInstance
().
prepare
(
cachePath
,
maxAudioDuration
,
resultCallback
);
}
else
{
}
else
{
resultCallback
.
onFailed
(
ErrorCode
.
START_VOICE_FAILED
);
resultCallback
.
onFailed
(
ErrorCode
.
START_VOICE_FAILED
);
}
}
...
...
ccim/src/main/java/com/ccwangluo/ccim/manage/ContactManager.java
View file @
cd37fbf6
...
@@ -100,9 +100,15 @@ public class ContactManager {
...
@@ -100,9 +100,15 @@ public class ContactManager {
/**
/**
* 搜索好友
* 搜索好友
*/
*/
public
void
searchUser
(
String
userName
,
ResultEventCallback
<
List
<
User
>
>
resultEventCallback
)
{
public
void
searchUser
(
String
userName
,
Long
userId
,
int
page
,
int
size
,
ResultEventCallback
<
SearchRes
>
resultEventCallback
)
{
Chat
.
ChatRequestMessage
.
Builder
builder
=
Chat
.
ChatRequestMessage
.
newBuilder
();
Chat
.
ChatRequestMessage
.
Builder
builder
=
Chat
.
ChatRequestMessage
.
newBuilder
();
builder
.
setSearchReq
(
Chat
.
SearchRequest
.
newBuilder
().
setUsername
(
userName
).
build
());
Chat
.
SearchRequest
build
=
Chat
.
SearchRequest
.
newBuilder
()
.
setUsername
(
userName
)
.
setUserId
(
userId
)
.
setPage
(
page
)
.
setSize
(
size
)
.
build
();
builder
.
setSearchReq
(
build
);
int
id
=
socketManager
.
sendRequest
(
builder
);
int
id
=
socketManager
.
sendRequest
(
builder
);
callBackManager
.
addCallBack
(
id
,
new
ResultEventCallback
<
Chat
.
ChatResponseMessage
>()
{
callBackManager
.
addCallBack
(
id
,
new
ResultEventCallback
<
Chat
.
ChatResponseMessage
>()
{
@Override
@Override
...
@@ -112,7 +118,7 @@ public class ContactManager {
...
@@ -112,7 +118,7 @@ public class ContactManager {
try
{
try
{
String
print
=
JsonFormat
.
printer
().
print
(
searchRes
);
String
print
=
JsonFormat
.
printer
().
print
(
searchRes
);
SearchRes
searchRes1
=
new
Gson
().
fromJson
(
print
,
SearchRes
.
class
);
SearchRes
searchRes1
=
new
Gson
().
fromJson
(
print
,
SearchRes
.
class
);
resultEventCallback
.
onSuccess
(
searchRes1
.
getUsers
()
);
resultEventCallback
.
onSuccess
(
searchRes1
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
...
...
ccim/src/main/java/com/ccwangluo/ccim/modle/SearchRes.java
View file @
cd37fbf6
...
@@ -15,4 +15,13 @@ public class SearchRes {
...
@@ -15,4 +15,13 @@ public class SearchRes {
this
.
users
=
users
;
this
.
users
=
users
;
}
}
private
int
total
;
public
int
getTotal
()
{
return
total
;
}
public
void
setTotal
(
int
total
)
{
this
.
total
=
total
;
}
}
}
ccim/src/main/proto/chat.proto
View file @
cd37fbf6
...
@@ -134,15 +134,19 @@ message PullContactsResponse {
...
@@ -134,15 +134,19 @@ message PullContactsResponse {
}
}
message
SearchRequest
{
message
SearchRequest
{
string
username
=
1
;
string
username
=
1
;
int64
user_id
=
2
;
int32
page
=
3
;
int32
size
=
4
;
}
}
message
SearchResponse
{
message
SearchResponse
{
message
User
{
message
User
{
int64
user_id
=
1
;
int64
user_id
=
1
;
string
username
=
2
;
string
username
=
2
;
}
}
repeated
User
users
=
1
;
repeated
User
users
=
1
;
int32
total
=
2
;
}
}
message
AddContactRequest
{
message
AddContactRequest
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment