kindly post the logcat error here.

On Thu, Nov 17, 2016 at 9:51 PM, Timothy Hopfer <timothyhop...@gmail.com>
wrote:

> I made an app that tests the speakers in an HTC phone.  it tests both the
> bottom speaker, the top speaker, and the headphones, all while the
> headphones are plugged in.  It works perfectly in the HTC Desire Eye that
> is running KitKat 4.4.4, but it does not work correctly on the HTC Desire
> that is running Lollypop 5.1.  In the lollypop phone, it only plays from
> the bottom speaker, and if the headphones are plugged in, it goes through
> the headphones instead.  I have been looking everywhere but cant find the
> answer.  Does anyone know what I should do to make my app work in
> Lollypop?  I have included the code in case you see some deprecated code
> that I should update.  Also, the app does not crash on Lollypop, just does
> the audiomanager or mediaplayer doesn't work the correctly.  Thanks so much.
>
>     public class LeftSpeakerActivity extends Activity {
>         int default_mode; //Saves the default mode of the device
>         int music_volume; //Saves the default volume of the music stream
>         int call_volume; //Saves the default volume of the in call stream
>         String device_type = null;//Stores the device type
>         AudioManager audioManager; //Object to provide access to system
> volume controls and settings
>         String model = android.os.Build.MODEL;
>         String Manufacturer = android.os.Build.MANUFACTURER;
>         boolean isNexus = false;
>         TextView title_text;
>         MediaPlayer mp;
>         //preset volume
>         int volume = 10;
>         public final static String log_tag = "LeftSpeaker";
>
>         Handler mHandler = new Handler();
>         /*
>         * (non-Javadoc)
>         * @see android.app.Activity#onCreate(android.os.Bundle).
>         * First function entered when the application is created
>         * This function is used to initialize the layout and the device
> type
>         * based on the model and device Manufacturer.This function also
> stores
>         * the default audio stream value and modes to reset it back to
> these
>         * values once we exit the application
>         */
>         @Override
>         protected void onCreate(Bundle savedInstanceState) {
>             super.onCreate(savedInstanceState);
>
>             /*
>              * API's to launch the application when the tablet is locked or
>              * display is turned off
>              */
>             getWindow().addFlags(WindowManager.LayoutParams.
> FLAG_TURN_SCREEN_ON);
>             getWindow().addFlags(WindowManager.LayoutParams.
> FLAG_DISMISS_KEYGUARD);
>             getWindow().addFlags(WindowManager.LayoutParams.
> FLAG_SHOW_WHEN_LOCKED);
>     //        setRequestedOrientation(ActivityInfo.SCREEN_
> ORIENTATION_LANDSCAPE);
>             setRequestedOrientation(ActivityInfo.SCREEN_
> ORIENTATION_LOCKED);
>             setContentView(R.layout.activity_left_speaker);
>
>
>             title_text = ((TextView) findViewById(R.id.textView3));
>             title_text.setTextColor(Color.RED);
>             title_text.setText("LEFT SPEAKER TEST IN PROGRESS" + "\n" +
> "VOLUME IS SET AT" + volume);
>             Context mContext = getApplicationContext();
>             createTempFile("Status_LeftSpeaker.txt", "INPROGRESS");
>
>             audioManager = (AudioManager) getSystemService(Context.
> AUDIO_SERVICE);
>             default_mode = audioManager.getMode();
>             music_volume = audioManager.getStreamVolume(
> AudioManager.STREAM_MUSIC);
>             call_volume = audioManager.getStreamVolume(
> AudioManager.STREAM_VOICE_CALL);
>
>             //Setting the volume level
>             audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,volume,
> AudioManager.FLAG_SHOW_UI);
>             audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,
> volume, AudioManager.FLAG_SHOW_UI);
>             audioManager.setSpeakerphoneOn(true);
>
>             //start_playing();
>             playSound(true);
>
>         }
>         //TRUE PLAYS OVER SPEAKERS
>         private void playSound(boolean speakers){
>
>             mp = MediaPlayer.create(getApplicationContext(),
> R.raw.tone_right);
>             if (speakers){
>                 mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
>
>             }else {
>                 mp.setAudioStreamType(AudioManager.STREAM_VOICE_CALL);
>
>             }
>             mp.start();
>             mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener()
> {
>                 @Override
>                 public void onCompletion(MediaPlayer mp) {
>                     createTempFile("Status_LeftSpeaker.txt", "COMPLETED");
>                     exit_function();
>                 }
>             });
>         }
>
>
>         private void exit_function() {
>             onDestroy();
>         }
>
>         @Override
>         /*
>          * (non-Javadoc)
>          * @see android.app.Activity#onDestroy()
>          * Function invoked before we exit the application . Reset all the
> volume
>          * and stream values in this function
>          */
>         protected void onDestroy() {
>             Log.i(log_tag,"Entered onDestroy()");
>             super.onDestroy();
>             //mp.reset();
>             if (mp != null) {
>                 mp.release();
>             }
>             //Reset to the default settings here
>             audioManager.setMode(default_mode);
>
>             audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,
> music_volume, AudioManager.FLAG_SHOW_UI);
>             audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,
> call_volume, AudioManager.FLAG_SHOW_UI);
>
>             this.finish();
>
>         }
>
>         /*
>          * Function to create the a text file in the application directory
> context. This function
>          * takes the file name and the string that is to be written in it
> as the input. This function is invoked
>          * to create the Result.txt file.
>          */
>         private void createTempFile(String filename, String text) {
>
>             try {
>                 FileOutputStream fOut = openFileOutput(filename ,
> MODE_WORLD_READABLE);
>                 OutputStreamWriter osw = new OutputStreamWriter(fOut);
>                 osw.write(text);
>                 osw.flush();
>                 osw.close();
>
>             } catch(IOException e) {
>                 e.printStackTrace();
>             }
>
>         }
>
>
>     }
>
>
>
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Android Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to android-developers+unsubscr...@googlegroups.com.
> To post to this group, send email to android-developers@googlegroups.com.
> Visit this group at https://groups.google.com/group/android-developers.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/android-developers/d120db29-97d4-4d6b-a5f6-
> 247d2bd93269%40googlegroups.com
> <https://groups.google.com/d/msgid/android-developers/d120db29-97d4-4d6b-a5f6-247d2bd93269%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to android-developers+unsubscr...@googlegroups.com.
To post to this group, send email to android-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/android-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/android-developers/CABHzXASQry6CM2kZoRedXJ87QRx%3DTFsV5LDG3ukGsE3yDMCnBA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to