FileDocCategorySizeDatePackage
FixVibrateSetting.javaAPI DocAndroid 5.1 API3884Thu Mar 12 22:22:42 GMT 2015com.android.fixvibratesetting

FixVibrateSetting

public class FixVibrateSetting extends android.app.Activity implements View.OnClickListener

Fields Summary
android.media.AudioManager
mAudioManager
android.app.NotificationManager
mNotificationManager
android.widget.TextView
mCurrentSetting
android.view.View
mFix
android.view.View
mUnfix
android.view.View
mTest
Constructors Summary
Methods Summary
private voidfix()

        mAudioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
                AudioManager.VIBRATE_SETTING_ON);
    
private java.lang.StringgetSettingValue(int vibrateType)

        int setting = mAudioManager.getVibrateSetting(vibrateType);
        switch (setting) {
            case AudioManager.VIBRATE_SETTING_OFF:
                return "off";
            case AudioManager.VIBRATE_SETTING_ON:
                return "on";
            case AudioManager.VIBRATE_SETTING_ONLY_SILENT:
                return "silent-only";
            default:
                return "unknown";
        }
    
public voidonClick(android.view.View v)

        if (v == mFix) {
            fix();
            update();
        } else if (v == mUnfix) {
            unfix();
            update();
        } else if (v == mTest) {
            test();
            update();
        }
    
public voidonCreate(android.os.Bundle icicle)

        super.onCreate(icicle);

        setContentView(R.layout.fix_vibrate);

        mAudioManager = (AudioManager)getSystemService(AUDIO_SERVICE);
        mNotificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);

        mCurrentSetting = (TextView)findViewById(R.id.current_setting);

        mFix = findViewById(R.id.fix);
        mFix.setOnClickListener(this);

        mUnfix = findViewById(R.id.unfix);
        mUnfix.setOnClickListener(this);

        mTest = findViewById(R.id.test);
        mTest.setOnClickListener(this);
    
public voidonResume()

        super.onResume();

        update();
    
private voidtest()

        Notification n = new Notification(R.drawable.stat_sys_warning, "Test notification",
                        System.currentTimeMillis());
        Intent intent = new Intent(this, FixVibrateSetting.class);
        PendingIntent pending = PendingIntent.getActivity(this, 0, intent, 0);
        n.setLatestEventInfo(this, "Test notification", "Test notification", pending);

        n.vibrate = new long[] { 0, 700, 500, 1000 };
        n.flags |= Notification.FLAG_AUTO_CANCEL;
        mNotificationManager.notify(1, n);
    
private voidunfix()

        mAudioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
                AudioManager.VIBRATE_SETTING_OFF);
    
private voidupdate()

        String ringer = getSettingValue(AudioManager.VIBRATE_TYPE_RINGER);
        String notification = getSettingValue(AudioManager.VIBRATE_TYPE_NOTIFICATION);
        String text = getString(R.string.current_setting, ringer, notification);
        mCurrentSetting.setText(text);