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
21709ae7
Commit
21709ae7
authored
Jun 20, 2022
by
sheteng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复语音播放
parent
a2f78463
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
44 additions
and
13 deletions
+44
-13
app/src/main/java/com/ccwangluo/im/adapter/ChannelMsgAdapter.java
...main/java/com/ccwangluo/im/adapter/ChannelMsgAdapter.java
+9
-3
app/src/main/java/com/ccwangluo/im/adapter/PrivateMsgAdapter.java
...main/java/com/ccwangluo/im/adapter/PrivateMsgAdapter.java
+9
-3
app/src/main/res/layout/activity_login.xml
app/src/main/res/layout/activity_login.xml
+1
-1
ccim/src/main/java/com/ccwangluo/ccim/CCIMClient.java
ccim/src/main/java/com/ccwangluo/ccim/CCIMClient.java
+3
-2
ccim/src/main/java/com/ccwangluo/ccim/listener/OnPlayAudioCallback.java
...java/com/ccwangluo/ccim/listener/OnPlayAudioCallback.java
+11
-0
ccim/src/main/java/com/ccwangluo/ccim/manage/MessageManager.java
...c/main/java/com/ccwangluo/ccim/manage/MessageManager.java
+2
-1
ccim/src/main/java/com/ccwangluo/ccim/util/MediaHelper.java
ccim/src/main/java/com/ccwangluo/ccim/util/MediaHelper.java
+9
-3
No files found.
app/src/main/java/com/ccwangluo/im/adapter/ChannelMsgAdapter.java
View file @
21709ae7
...
...
@@ -12,6 +12,7 @@ import androidx.annotation.NonNull;
import
androidx.annotation.Nullable
;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.listener.OnPlayAudioCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.im.R
;
...
...
@@ -81,15 +82,20 @@ public class ChannelMsgAdapter extends BaseAdapter {
@Override
public
void
onClick
(
View
v
)
{
if
(
messageContent
.
getMsgType
()
==
MessageContent
.
MessageType
.
MESSAGE_TYPE_VOICE
)
{
CCIMClient
.
getInstance
().
startPlayAudio
(
messageContent
.
getMsgId
(),
new
ResultEventCallback
<
Void
>
()
{
CCIMClient
.
getInstance
().
startPlayAudio
(
messageContent
.
getMsgId
(),
new
OnPlayAudioCallback
()
{
@Override
public
void
onSuccess
(
Void
unused
)
{
public
void
onStart
()
{
System
.
out
.
println
(
"start"
);
}
@Override
public
void
onSuccess
()
{
System
.
out
.
println
(
"success"
);
}
@Override
public
void
onFailed
(
int
errorCode
)
{
System
.
out
.
println
(
"onFailed"
);
}
});
}
...
...
app/src/main/java/com/ccwangluo/im/adapter/PrivateMsgAdapter.java
View file @
21709ae7
...
...
@@ -12,6 +12,7 @@ import androidx.annotation.NonNull;
import
androidx.annotation.Nullable
;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.listener.OnPlayAudioCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.im.R
;
...
...
@@ -87,15 +88,20 @@ public class PrivateMsgAdapter extends BaseAdapter {
@Override
public
void
onClick
(
View
v
)
{
if
(
message
.
getMsgType
()
==
MessageContent
.
MessageType
.
MESSAGE_TYPE_VOICE
)
{
CCIMClient
.
getInstance
().
startPlayAudio
(
message
.
getMsgId
(),
new
ResultEventCallback
<
Void
>
()
{
CCIMClient
.
getInstance
().
startPlayAudio
(
message
.
getMsgId
(),
new
OnPlayAudioCallback
()
{
@Override
public
void
onSuccess
(
Void
unused
)
{
public
void
onStart
()
{
System
.
out
.
println
(
"start"
);
}
@Override
public
void
onSuccess
()
{
System
.
out
.
println
(
"success"
);
}
@Override
public
void
onFailed
(
int
errorCode
)
{
System
.
out
.
println
(
"onFailed"
);
}
});
// CCIMClient.getInstance().getAudioDuration(message.getMsgId(), new ResultEventCallback<Long>() {
...
...
app/src/main/res/layout/activity_login.xml
View file @
21709ae7
...
...
@@ -27,7 +27,7 @@
android:layout_height=
"wrap_content"
android:layout_marginTop=
"8dp"
android:hint=
"UserId"
android:text=
"
16
"
android:text=
"
20
"
android:imeActionLabel=
"@string/action_sign_in_short"
android:imeOptions=
"actionDone"
android:selectAllOnFocus=
"true"
...
...
ccim/src/main/java/com/ccwangluo/ccim/CCIMClient.java
View file @
21709ae7
...
...
@@ -10,6 +10,7 @@ import android.text.TextUtils;
import
androidx.annotation.NonNull
;
import
com.ccwangluo.ccim.listener.OnClientConnectListener
;
import
com.ccwangluo.ccim.listener.OnConnectListener
;
import
com.ccwangluo.ccim.listener.OnPlayAudioCallback
;
import
com.ccwangluo.ccim.listener.OnPushMsgListener
;
import
com.ccwangluo.ccim.listener.RecordAutoSendCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
...
...
@@ -634,8 +635,8 @@ public class CCIMClient {
/**
* 播放音乐
*/
public
void
startPlayAudio
(
Long
msgId
,
ResultEventCallback
<
Void
>
resultC
allback
)
{
messageManager
.
playAudio
(
msgId
,
downloadPrefix
,
cachePath
,
resultC
allback
);
public
void
startPlayAudio
(
Long
msgId
,
OnPlayAudioCallback
c
allback
)
{
messageManager
.
playAudio
(
msgId
,
downloadPrefix
,
cachePath
,
c
allback
);
}
/**
...
...
ccim/src/main/java/com/ccwangluo/ccim/listener/OnPlayAudioCallback.java
0 → 100644
View file @
21709ae7
package
com.ccwangluo.ccim.listener
;
public
interface
OnPlayAudioCallback
{
void
onStart
();
void
onSuccess
();
void
onFailed
(
int
errorCode
);
}
ccim/src/main/java/com/ccwangluo/ccim/manage/MessageManager.java
View file @
21709ae7
...
...
@@ -7,6 +7,7 @@ import androidx.room.Room;
import
com.ccwangluo.ccim.CCIMClient
;
import
com.ccwangluo.ccim.database.AppDatabase
;
import
com.ccwangluo.ccim.listener.OnPlayAudioCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.ccim.modle.MessageContent
;
import
com.ccwangluo.ccim.modle.PullMessageRes
;
...
...
@@ -225,7 +226,7 @@ public class MessageManager {
}
public
void
playAudio
(
Long
msgId
,
String
downloadPrefix
,
String
cachePath
,
ResultEventCallback
<
Void
>
resultCallback
)
{
public
void
playAudio
(
Long
msgId
,
String
downloadPrefix
,
String
cachePath
,
OnPlayAudioCallback
resultCallback
)
{
executor
.
execute
(()
->
{
MessageContent
messageContent
=
db
.
messageDao
().
getMsgById
(
msgId
);
if
(
messageContent
==
null
)
{
...
...
ccim/src/main/java/com/ccwangluo/ccim/util/MediaHelper.java
View file @
21709ae7
...
...
@@ -4,6 +4,7 @@ import android.media.MediaPlayer;
import
android.media.MediaRecorder
;
import
android.os.Build
;
import
com.ccwangluo.ccim.listener.OnPlayAudioCallback
;
import
com.ccwangluo.ccim.listener.ResultEventCallback
;
import
com.ccwangluo.ccim.modle.MessageContent
;
...
...
@@ -105,21 +106,24 @@ public class MediaHelper {
*
* @param filePath
*/
public
void
play
(
String
filePath
,
ResultEventCallback
<
Void
>
resultCallback
)
{
public
void
play
(
String
filePath
,
OnPlayAudioCallback
resultCallback
)
{
if
(
mediaPlayer
==
null
)
{
mediaPlayer
=
new
MediaPlayer
();
}
else
{
mediaPlayer
.
stop
();
//
mediaPlayer.stop();
mediaPlayer
.
reset
();
mediaPlayer
.
release
();
mediaPlayer
=
new
MediaPlayer
();
}
try
{
mediaPlayer
.
setDataSource
(
filePath
);
mediaPlayer
.
prepare
();
mediaPlayer
.
start
();
resultCallback
.
onStart
();
mediaPlayer
.
setOnCompletionListener
(
new
MediaPlayer
.
OnCompletionListener
()
{
@Override
public
void
onCompletion
(
MediaPlayer
mp
)
{
resultCallback
.
onSuccess
(
null
);
resultCallback
.
onSuccess
();
}
});
}
catch
(
Exception
e
)
{
...
...
@@ -136,6 +140,8 @@ public class MediaHelper {
if
(
mediaPlayer
!=
null
)
{
mediaPlayer
.
stop
();
mediaPlayer
.
reset
();
mediaPlayer
.
release
();
mediaPlayer
=
null
;
}
}
}
\ No newline at end of file
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