Lautlos umstellen geht nicht auf Gerät

  • 1 Antworten
  • Neuester Beitrag
Diskutiere Lautlos umstellen geht nicht auf Gerät im Android App Entwicklung im Bereich Betriebssysteme & Apps.
M

MSeiz5

Neues Mitglied
Ich habe mir das Android App entwickeln für Dummies Buch gekauft, um ein wenig in das Thema einzusteigen.
Jetzt gibt es da ein Beispiel (Lautlosmodus ein/-ausstellen per Knopfdruck).
Alles schön gelesen und getestet im Emulator.

Im Emulator wechselt das Bild schön und die Lautlosanzeige oben erscheint, bzw. verschwindet wieder.

Jetzt wollte ich das Ganze auf mein Samsung Galaxy S Gerät installieren und testen. Nun, das Bild wechselt anständig. Er erkennt auch den aktuellen Zustand (Lautlosmodus ein oder aus) aber wenn ich ihn wechseln will, ändert sich nur das Bild.

Über den Emulator:

Android 2.1
HVGA

Mein Handy:
Android 2.3.5 (Jokers MIUI)
Kernel: 2.35.24 platypus-rev-neo_17-galaxys+neo_17-r16

Hier der Code der App:

Code:
package ch.techdome.lautlosmodus;

import android.app.Activity;
import android.graphics.drawable.Drawable;
import android.media.AudioManager;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;


public class LautlosmodusActivity extends Activity {
	
		private AudioManager klingel_ermitteln;
		private boolean klingel_aus;
		private static final String TAG = "Silent Mode App";
		
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        
        klingel_ermitteln = (AudioManager)getSystemService(AUDIO_SERVICE);
        pruefen_klingel_aus();
        button();
        
        Log.d(TAG, "Dies ist ein Test");
    }
    
    private void button(){
	    Button cmd_umstellen = (Button)findViewById(R.id.cmd_umstellen);
	    cmd_umstellen.setOnClickListener(new View.OnClickListener() {
			
			public void onClick(View v) {
				if(klingel_aus) {
					//Klingelton einschalten
					klingel_ermitteln.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
					klingel_aus = false;
				}else{
					//Klintelton ausschalten
					klingel_ermitteln.setRingerMode(AudioManager.RINGER_MODE_SILENT);
					klingel_aus = true;
				}
				
				//UI umschalten
				grafik_tauschen();
			}
		});
    }
    
   /**
    * Testen, ob Telefon Lautlos
    */
    	private void pruefen_klingel_aus(){
    		int klingelModus = klingel_ermitteln.getRingerMode();
    		if(klingelModus == AudioManager.RINGER_MODE_SILENT){
    			klingel_aus = true;
    		}else{
    			klingel_aus = false;
    		}
    	}
    	
    /**
     * Grafik Tauschen
     */
    	private void grafik_tauschen(){
    		ImageView grafik_anzeige = (ImageView) findViewById(R.id.phone_on_icon);
    		Drawable neuesBild;
    		
    		if(klingel_aus){
    			neuesBild = getResources().getDrawable(R.drawable.phone_silent);
    		} else {
    			neuesBild = getResources().getDrawable(R.drawable.phone_on);
    		}
    		
    		grafik_anzeige.setImageDrawable(neuesBild);
    	}
    	@Override
    	protected void onResume(){
    		super.onResume();
    		pruefen_klingel_aus();
    		grafik_tauschen();
    	}
}
LogCat meint dazu:

11-14 12:25:09.347: W/TelephonyManager(7079): ch.techdome.lautlosmodus is rejected when check anti wiretapping permission


Wie kann ich den Fehler auf dem Gerät fixen?


Grüsse,
MSeiz5
 
Ähnliche Themen - Lautlos umstellen geht nicht auf Gerät Antworten Datum
10
8