Android 는 app 에 사용자 정의 벨 소리 기능 을 설정 합 니 다.

3504 단어 Androidapp벨 소리
자신의 앱 에 벨 소 리 를 추가 해 재생 해 야 한 다 는 요구 가 있 었 는데,그동안 인터넷 에서 관련 자 료 를 찾 아 봤 는데 도 대부분 휴대 전화 전화 전화,알 람 등 휴대 전화 시스템 을 어떻게 설치 하 는 지 가르쳐 주 는 기능 이 었 기 때문에 이 글 을 기록 했다.
1.이 글 의 대략적인 내용 은?
1.시스템 벨 소리 인터페이스 에서 벨 소 리 를 선택 합 니 다.
2.선택 한 벨 소리 재생 하기;
3.시스템 벨 소리 인 터 페 이 스 를 다시 호출 할 때 이전에 선택 한 벨 소 리 를 기본적으로 선택 합 니 다.
4.매우 중요 한 권한 을 더 해 야 한다.
도시

인터페이스 코드 는 말 그대로 간단 하 다.
3.부분 논리 코드 실현
① 시스템 벨 소리 인터페이스 로 현재 벨 소리 데 이 터 를 전달 하고 새로운 벨 소 리 를 선택 합 니 다.

//     
 public void toChoose(View view) { 
  Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER); 
  intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_NOTIFICATION); 
  intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "      "); 
  if (myUriStr != null) { 
   <span style="color:#3366ff;">intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, Uri.parse(myUriStr));</span>//                       
  } 
  startActivityForResult(intent, 0); 
 } 
 
 
 @Override 
 protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
  try { 
   <span style="color:#3366ff;">Uri pickedUri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);</span>//            
   myUriStr = pickedUri.toString(); 
 
  } catch (Exception e) { 
   e.printStackTrace(); 
  } 
 } 
② 현재 선택 한 벨 소리 재생

//     
 public void toPlay(View view) { 
  if (myUriStr == null) {//        ,           
   mMediaPlayer = MediaPlayer.create(this, getSystemDefaultRingtoneUri()); 
  } else { 
   mMediaPlayer = MediaPlayer.create(this, Uri.parse(myUriStr)); 
 
   if(mMediaPlayer == null){ 
    Toast.makeText(this,"      ,     ",Toast.LENGTH_LONG).show(); 
    return; 
   } 
  } 
  mMediaPlayer.setLooping(false); 
  try { 
   mMediaPlayer.prepare(); 
  } catch (IllegalStateException e) { 
   e.printStackTrace(); 
  } catch (IOException e) { 
   e.printStackTrace(); 
  } 
 
  mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
   @Override 
   public void onPrepared(MediaPlayer mediaPlayer) { 
    mMediaPlayer.start(); 
   } 
  }); 
 } 
이로써 너 는 끝 이 라 고 생각 하 니?
사실 아직 매우 중요 한 단계 가 부족 하 므 로 상응하는 권한 을 더 해 야 한다.

<!--  SDCard       --> 
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
 <!--  SDCard           --> 
 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> 

이상 의 권한 을 추가 하지 않 으 면 문제 가 될 수 있 습 니 다.어떤 벨 소 리 는 재생 할 수 있 고 어떤 벨 소 리 는 재생 할 수 없습니다(음악 노래 파일 은 재생 할 수 없습니다).일 지 를 보면 모든 벨 소 리 는 음악 을 포함 한 노래 에 우리 가 있 는데 우리 가 있 는데 왜 안 나 오지?일반적으로 휴대 전화 시스템 의 오류 가능성 은 매우 작 을 수 있 는데,하물며 이렇게 큰 오류 가 어떻게 나 올 수 있 겠 는가?모든 음악 노래 파일 을 재생 할 수 없 기 때문에 이 파일 들 은 sd 카드,즉 외부 파일 에 놓 여 있 기 때문에->해당 하 는 외부 파일 접근 등 권한 이 필요 합 니 다.
마지막 으로 전체 코드 는 여기에 찍 을 수 있 습 니 다>:클릭 하여 링크 열기
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기