Skip to content

Commit 63a8b25

Browse files
committed
提交语音消息模块到Message_Voice分支
Signed-off-by: Carlos2015 <[email protected]>
2 parents 1d800d4 + 152df24 commit 63a8b25

50 files changed

Lines changed: 2526 additions & 250 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

app/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ dependencies {
2323
compile fileTree(dir: 'libs', include: ['*.jar'])
2424
compile 'com.android.support:support-v4:21.0.+'
2525
compile 'com.android.support:appcompat-v7:21.0.+'
26+
compile 'com.skyfishjy.ripplebackground:library:1.0.1'
2627
compile 'com.loopj.android:android-async-http:1.4.6'
2728
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
2829
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'

app/src/main/AndroidManifest.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" />
1616
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
1717
<uses-permission android:name="android.permission.CAMERA" />
18+
<uses-permission android:name="android.permission.RECORD_AUDIO" />
19+
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
20+
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
1821

1922
<!-- 友盟,腾讯push需要 -->
2023
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

app/src/main/java/net/coding/program/MyApp.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.app.ActivityManager;
44
import android.app.Application;
55
import android.content.Context;
6+
import android.os.Environment;
67
import android.util.Log;
78

89
import com.baidu.mapapi.SDKInitializer;
@@ -11,6 +12,7 @@
1112
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
1213
import com.nostra13.universalimageloader.core.assist.QueueProcessingType;
1314

15+
import net.coding.program.common.FileUtil;
1416
import net.coding.program.common.Global;
1517
import net.coding.program.common.PhoneType;
1618
import net.coding.program.common.RedPointTip;
@@ -115,6 +117,14 @@ public void onCreate() {
115117
Global.HOST = host;
116118
Global.HOST_API = Global.HOST + "/api";
117119

120+
try{
121+
Global.sVoiceDir = FileUtil.getDestinationInExternalFilesDir(this, Environment.DIRECTORY_MUSIC,FileUtil.DOWNLOAD_FOLDER).getAbsolutePath();
122+
Log.w("VoiceDir",Global.sVoiceDir);
123+
}catch (Exception e){
124+
Global.errorLog(e);
125+
}
126+
127+
118128
MyAsyncHttpClient.init(this);
119129

120130
initImageLoader(this);

app/src/main/java/net/coding/program/common/Global.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,10 @@ public class Global {
7474
private static final String IMAGE_URL_SCAL = "%s?imageMogr2/thumbnail/!%s";
7575
public static String HOST = DEFAULT_HOST;
7676
public static String HOST_API = HOST + "/api";
77+
/**
78+
* 语音文件存放目录
79+
*/
80+
public static String sVoiceDir;
7781
public static SimpleDateFormat DateFormatTime = new SimpleDateFormat("HH:mm");
7882
public static SimpleDateFormat MonthDayFormatTime = new SimpleDateFormat("MMMdd日");
7983
public static SimpleDateFormat WeekFormatTime = new SimpleDateFormat("EEE");
@@ -770,8 +774,12 @@ public static void start2FAActivity(Activity activity) {
770774

771775
public static class MessageParse {
772776
public String text = "";
773-
public ArrayList<String> uris = new ArrayList<>();
774-
777+
public ArrayList<String> uris = new ArrayList<>();
778+
public boolean isVoice;
779+
public String voiceUrl;
780+
public int voiceDuration;
781+
public int played;
782+
public int id;
775783
public String toString() {
776784
String s = "text " + text + "\n";
777785
for (int i = 0; i < uris.size(); ++i) {
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package net.coding.program.common;
2+
3+
import android.media.MediaPlayer;
4+
import android.util.Log;
5+
6+
import java.io.IOException;
7+
8+
/**
9+
* Created by Carlos2015 on 2015/8/14.
10+
*/
11+
public class MyMediaPlayer extends MediaPlayer {
12+
private MediaPlayer.OnCompletionListener onCompletionListener;
13+
private String path;
14+
private OnPreparedListener mOnPreparedListener;
15+
16+
@Override
17+
public void setOnCompletionListener(OnCompletionListener onCompletionListener) {
18+
super.setOnCompletionListener(onCompletionListener);
19+
this.onCompletionListener = onCompletionListener;
20+
}
21+
22+
@Override
23+
public void setOnPreparedListener(OnPreparedListener listener) {
24+
super.setOnPreparedListener(listener);
25+
this.mOnPreparedListener = mOnPreparedListener;
26+
}
27+
28+
@Override
29+
public void setDataSource(String path) throws IOException, IllegalArgumentException, SecurityException, IllegalStateException {
30+
super.setDataSource(path);
31+
this.path = path;
32+
}
33+
34+
public String getDataSource(){
35+
return path;
36+
}
37+
38+
@Override
39+
public void stop() throws IllegalStateException {
40+
super.stop();
41+
path = null;
42+
onCompletionListener.onCompletion(this);
43+
onCompletionListener = null;
44+
mOnPreparedListener = null;
45+
}
46+
}

app/src/main/java/net/coding/program/common/RedPointTip.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ public enum Type {
6868
Topic,
6969
Task315,
7070
MaopaoTopicSearch315,
71-
MaopaoListSearch315
71+
MaopaoListSearch315,
72+
Voice
7273
}
7374

7475
}

0 commit comments

Comments
 (0)