version:1.1

fix:
add:应用使用数据统计
This commit is contained in:
2021-12-25 17:04:52 +08:00
parent 6c2eb5a1a3
commit b481df8671
55 changed files with 3184 additions and 300 deletions

View File

@@ -0,0 +1,125 @@
package com.uiui.os.activity;
import androidx.appcompat.app.AppCompatActivity;
import androidx.constraintlayout.widget.ConstraintLayout;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import com.blankj.utilcode.util.FileUtils;
import com.uiui.os.R;
import com.uiui.os.bean.AlarmClockData;
import com.uiui.os.utils.AlarmUtils;
import com.uiui.os.utils.Utils;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.function.Predicate;
import java.util.stream.Collectors;
import butterknife.BindView;
import butterknife.ButterKnife;
public class NoticeActivity extends AppCompatActivity {
@BindView(R.id.tv_title)
TextView tv_title;
@BindView(R.id.bt_ok)
Button bt_ok;
@BindView(R.id.constraintLayout)
ConstraintLayout constraintLayout;
private AlarmClockData alarmClockData;
int code;
private MediaPlayer mediaPlayer;
private String TAG = NoticeActivity.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_notice);
ButterKnife.bind(this);
Intent intent = getIntent();
code = intent.getIntExtra("id", -1);
if (code == -1) {
finish();
} else {
HashMap<Integer, AlarmClockData> oldData = AlarmUtils.getInstance().getOldData();
alarmClockData = oldData.get(code);
if (alarmClockData == null) {
finish();
}
showData(alarmClockData);
}
}
private void showData(AlarmClockData alarmClockData) {
tv_title.setText(alarmClockData.getRemarks());
bt_ok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
HashMap<Integer, AlarmClockData> oldData = AlarmUtils.getInstance().getOldData();
List<AlarmClockData> data = new ArrayList<>();
for (AlarmClockData alarm : oldData.values()) {
if (alarm.getId() == code) {
alarm.setFinished(true);
}
data.add(alarm);
}
AlarmUtils.getInstance().setAlarmString(data);
finish();
}
});
String url = alarmClockData.getVoice();
String md5 = alarmClockData.getVoice_md5();
if (!TextUtils.isEmpty(url)) {
constraintLayout.setVisibility(View.VISIBLE);
String fileName = Utils.getFileNamefromURL(url);
File file = new File(Utils.getDownLoadPath(NoticeActivity.this) + fileName);
String fileMD5 = FileUtils.getFileMD5ToString(file);
// if (!md5.equals(fileMD5)) {
// // TODO: 2021/12/16
// } else {
mediaPlayer = new MediaPlayer();
try {
// 切歌之前先重置,释放掉之前的资源
mediaPlayer.reset();
FileInputStream fis = new FileInputStream(file);
mediaPlayer.setDataSource(fis.getFD());
// 设置播放源
// mediaPlayer.setDataSource(file.getAbsolutePath());
// 开始播放前的准备工作,加载多媒体资源,获取相关信息
mediaPlayer.prepare();
// 开始播放
mediaPlayer.start();
} catch (IOException e) {
e.printStackTrace();
Log.e(TAG, "showData: " + e.getMessage());
}
// }
} else {
constraintLayout.setVisibility(View.GONE);
}
}
@Override
protected void onDestroy() {
super.onDestroy();
if (mediaPlayer != null) {
if (mediaPlayer.isPlaying()) {
mediaPlayer.stop();
}
mediaPlayer.release();
mediaPlayer = null;
}
}
}