Soru & Cevap

Android Flash Işığının yanıp/sönme hızını nasıl ayarlarım? ...

03.02.2014 - 03:00

Arkadaşlar bu konuyla ilgili bilgisi olan var mı?

Try-Catch bloğunu kullandım fakat hata verdi.Yardımcı olabilir misiniz?

3 Görüntülenme

3 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-2176-1429627808.jpg
bekirdursun
04.02.2014 - 03:02

Yavuz ben şöyle bir şey çıkardım, gayet düzgün çalışıyor, bir dene istersen :) Deneme yaptıktan sonra sayılar üzerinde değişiklik yapabilirsin.

 

Global olarak tanımla;

int x = 200;
CountDownTimer flash_time;

 

Buton onClick içine (Başlat butonu);

        flash_time = new CountDownTimer(10000000, 200) {

            @Override
            public void onTick(long millisUntilFinished) {
                if(x%200==0){
                    flashCalistir();
                }else if(x%100==0){
                    flashDurdur();
                }
                x += 100;
            }

            @Override
            public void onFinish() {
            flash_time.start();
          }

         }.start();

 

Buton onClick içine (Durdur butonu);

flash_time.cancel();

 

 

Yavuz Selim Ekim
04.02.2014 - 02:54
Bekir hocam cevabınız için teşekkürler fakat ben buton kullanmıyorum.Arama geldiğinde flaş aktif oluyor ve hızını ayarlayamıyorum.Arama sonlandığında ise otomatik kapanıyor.Sadece flaş yanıp sönme hızını ayarlayamadım.Verdiğiniz kod bir kez çalıştıktan sonra çöküyor.
Bekir Dursun
04.02.2014 - 11:42
Sonlandırma işlemini de yapman gerekiyor. Son olarak flash_time.cancel(); altına x = 200; bunu eklersen sorunun çözülür diye düşünüyorum.
Yavuz Selim Ekim
05.02.2014 - 12:27
Hocam şimdi çalışıyor fakat arama sonlandığında yada iptal edildiğinde flaş yanıp sönmeye devam ediyor.Cevaplarınız için teşekkür ederim. if (state.equals(TelephonyManager.EXTRA_STATE_IDLE)) { flash_time.cancel(); }
Bekir Dursun
05.02.2014 - 01:09
if (state.equals(TelephonyManager.EXTRA_STATE_IDLE)) { flash_time.cancel(); flashDurdur(); } bu şekilde dener misin?
Profile picture for user sultanselim94
sultanselim94
04.02.2014 - 12:38

try
        {
        String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
        
        if(state.equals(TelephonyManager.EXTRA_STATE_RINGING))
        
        {
            flashCalistir();

          //Bu kısımda flash ışığının yanıp sönme hızını ayarlamaya çalışıyorum.Döngü kullandım fakat olmadı.Flash ışığının hızlı yanıp sönmesini ayarlayamadım bir türlü.

        for(int i=0;i<50;i++){
                flashCalistir();
                Thread.sleep(500);
                flashDurdur();
            }

           }
            
        }
        
        if(state.equals(TelephonyManager.EXTRA_STATE_OFFHOOK))
        
        {
            
            
        }
        
        if (state.equals(TelephonyManager.EXTRA_STATE_IDLE))
        
        {
            
            flashDurdur();
            
        }
        
            } catch (Exception e) { // TODO: handle exception
                
            }
        
    }
    
    public void flashCalistir()
        {
            cmobj=Camera.open();
            Parameters p = cmobj.getParameters();
            p.setFlashMode(Parameters.FLASH_MODE_TORCH);
            cmobj.setParameters(p); cmobj.startPreview();
            
        }
        public void flashDurdur()
        {
            cmobj=Camera.open();
            Parameters p = cmobj.getParameters();
            p.setFlashMode(Parameters.FLASH_MODE_TORCH);
            cmobj.setParameters(p); cmobj.stopPreview();
            
            cmobj.release(); }
        }

picture-19-1368044513.jpg
gorkem
03.02.2014 - 11:43

Genel olarak nasıl bir kod kullandınız ve nasıl bir hata aldınız? Bunları söylerseniz arkadaşlar daha fazla yardımcı olabilirler.