노래 이름 및 아티스트 이름과 같은 오디오 메타 데이터를 주기적으로 가져 오려고합니다. 나는 비동기 작업에서 미디어 메타 데이터 검색자를 사용하고 있습니다. 문제는비동기 작업을 일정 기간 동안 호출하는 방법
입니다. 1) AsyncTask 클래스에서 Taxt-view에 텍스트를 어떻게 할당 할 수 있습니까?
2) 어떻게 30 초 간격과 같이 특정 시간 내에 비동기 작업 클래스를 호출 할 수 있습니까?
3) 하루에 한 번만 가져와야하는 텍스트가 있습니다. 그래서 마지막으로 데이터를 가져 왔을 때 어떻게 확인할 수 있습니까? 또한이 데이터를 페치 저장 목록보기 위하여 사용하는 가장 좋은 방법? 인 (난 데이터베이스 또는 해시 맵 또는 어레이리스트에 해당하는 저장해야 의미?)
여기메타하다 retriver 코드
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.afragment, container, false);
}
@Override
public void onStart() {
super.onStart();
initfrag();
}
private void initfrag() {
// TODO Auto-generated method stub
lv1=(ListView)getView().findViewById(R.id.list);
tv=(TextView)getView().findViewById(R.id.tv1);
tv1=(TextView)getView().findViewById(R.id.tv2);
LongOperation task=new LongOperation();
task.execute();
}
class LongOperation extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
MediaMetadataRetriever metaRetriever = new MediaMetadataRetriever();
String link = "http://xyz-radio-link.ogg";
metaRetriever.setDataSource(link, new HashMap<String, String>());
// get mp3 info
title = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE);
artist = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST);
metaRetriever.release();
refreshtext();
return null;
}
@Override
protected void onPostExecute(String result) {
}
@Override
protected void onPreExecute() {
}
@Override
protected void onProgressUpdate(Void... values) {
}
}
public void refreshtext() {
// TODO Auto-generated method stub
Typeface tf = Typeface.createFromAsset(getActivity().getAssets(),"fonts/Roboto-Regular.ttf");
tv.setTypeface(tf);
tv1.setTypeface(tf);
tv.setText(artist);
tv1.setText(title);
}
에는 30 초마다 실행되는 서비스가 있습니다. – Raghunandan
@Raghunandan는 세부 사항을 말해 줄 수 있습니까? 30 초마다 서비스를 호출하는 방법과 서비스에서 비동기 작업을 사용해야합니까? 그렇다면 텍스트 뷰에 텍스트를 어떻게 할당 할 수 있습니까? ... 그리고 마지막 질문 json을 구문 분석하는 코드를 하루에 한 번, 다음 번에 데이터베이스에서 데이터를 가져 오는 방법은 무엇입니까? –