4-2-4.翵
¸Þ½ÃÁö ¹Ú½º´Â Àü´Þ »çÇ×À» ½Ã°¢ÀûÀ¸·Î »ç¿ëÀÚ¿¡°Ô ¾Ë¸®´Âµ¥ ºñÇØ Áøµ¿Àº ÃË°¢À¸·Î ¾Ë¸®´Â Ãâ·Â ÀåÄ¡ÀÌ´Ù. ÀÌ ÀåÀÇ ÁÖÁ¦ÀÎ ÄÁÆ®·Ñ°ú Á÷Á¢ÀûÀÎ »ó°üÀº ¾øÁö¸¸ ¸Þ½ÃÁö ¹Ú½º¿Í »ç¿ë ¿ëµµ°¡ ºñ½ÁÇϹǷΠ°£´ÜÇÏ°Ô ¼Ò°³Çϱâ·Î ÇÑ´Ù. Áøµ¿À» ¹ß»ý½ÃÅ°´Â Ŭ·¡½º´Â VibrateControllerÀÌ´Ù. º°µµÀÇ »ý¼ºÀÚ´Â ¾ø°í Default Á¤Àû »ý¼ºÀÚ·Î °´Ã¼¸¦ »ý¼ºÇÑ´Ù. ´ÙÀ½ µÎ ¸Þ¼­µå·Î Áøµ¿À» ½ÃÀÛÇϰųª ÁßÁöÇÑ´Ù.

 

void Start(TimeSpan duration)

void Stop()

 

Start ¸Þ¼­µå·Î Áøµ¿ÇÒ ½Ã°£À» ÁöÁ¤Ç쵂 ¹üÀ§´Â 0 ~ 5ÃÊÀÌ´Ù. À½¼öÀÏ ¼ö´Â ¾ø°í 5ÃÊ ÀÌ»óÀ» ÁöÁ¤ÇÏ¸é ¿¹¿Ü°¡ ¹ß»ýÇÑ´Ù. ªÀº Áøµ¿Àº 0.1ÃÊ Á¤µµ¸é »ç¿ëÀÚ°¡ ´À³¢±â¿¡ ÃæºÐÇÏ´Ù. StopÀº Áøµ¿À» Áï½Ã ÁßÁöÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¹öÆ°À» ´­·¯ ¿©·¯ ±æÀÌ·Î Áøµ¿À» ¹ß»ý½ÃŲ´Ù.

 

VibrateTest

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">

    <StackPanel>

        <Button Name="btn50" Content="0.05" Click="btn50_Click" />

        <Button Name="btn200" Content="0.2" Click="btn200_Click" />

        <Button Name="btn3000" Content="3" Click="btn3000_Click" />

        <Button Name="btnStop" Content="Stop" Click="btnStop_Click" />

    </StackPanel>

</Grid>

================================== CS =======================================

using Microsoft.Devices;

 

namespace VibrateTest

{

    public partial class MainPage : PhoneApplicationPage

    {

        VibrateController vibrate = VibrateController.Default;

 

        public MainPage()

        {

            InitializeComponent();

        }

 

        private void btn50_Click(object sender, RoutedEventArgs e)

        {

            vibrate.Start(TimeSpan.FromMilliseconds(50));

        }

 

        private void btn200_Click(object sender, RoutedEventArgs e)

        {

            vibrate.Start(TimeSpan.FromMilliseconds(200));

        }

 

        private void btn3000_Click(object sender, RoutedEventArgs e)

        {

            vibrate.Start(TimeSpan.FromMilliseconds(3000));

        }

 

        private void btnStop_Click(object sender, RoutedEventArgs e)

        {

            vibrate.Stop();

        }

    }

}

 

XAML ¹®¼­¿¡´Â ±æÀ̺°·Î Áøµ¿À» ¹ß»ý½ÃÅ°´Â ¹öÆ° 4°³¸¦ ¹èÄ¡ÇßÀ¸¸ç °¢ ¹öÆ°ÀÇ À̺¥Æ® Çڵ鷯°¡ ¼Ò½º ÆÄÀÏ¿¡ ÀÛ¼ºµÇ¾î ÀÖ´Ù. ¼Ò½º ÆÄÀÏ ¼±µÎ¿¡ using Microsoft.Devices; ¼±¾ð¹®ÀÌ ÀÖÀ½À» À¯ÀÇÇÏÀÚ. VibrateController Ŭ·¡½º´Â Microsoft.Devices ³×ÀÓ½ºÆäÀ̽º¿¡ Á¤ÀǵǾî ÀÖÀ¸¹Ç·Î ÀÌ ³×ÀÓ½ºÆäÀ̽º¿¡ ´ëÇÑ using ¹®À» ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ÀÌ ¼±¾ð¹®ÀÌ ¾øÀ¸¸é Ŭ·¡½º°¡ ¼±¾ðµÇÁö ¾Ê¾Ò´Ù´Â ¿¡·¯°¡ ¹ß»ýÇÑ´Ù.

¸¶¹ý»ç°¡ ¸¸µé¾îÁØ ¼Ò½º ÆÄÀÏ ¼±µÎ¿¡´Â ÀÚÁÖ »ç¿ëÇÏ´Â ³×ÀÓ½ºÆäÀ̽º¿¡ ´ëÇÑ using ¼±¾ð¹®ÀÌ ¹Ì¸® ÀÛ¼ºµÇ¾î ÀÖ¾î ÀÌ ¼±¾ð¹®¸¸À¸·Îµµ ´ëºÎºÐÀÇ Å¬·¡½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀϺΠƯ¼öÇÑ Å¬·¡½ºµéÀº Ãß°¡·Î using¹®À» ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ¼Ò½º ¸ñ·Ï¿¡´Â ¸¶¹ý»ç°¡ ÀÛ¼ºÇÑ using¹®Àº Á¦¿ÜÇÏ°í Ãß°¡·Î ÇÊ¿äÇÑ using¹®¸¸ Ç¥½ÃÇϹǷΠÁ÷Á¢ ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé ¶§´Â using ¹®À» »© ¸ÔÁö ¾Êµµ·Ï ÁÖÀÇÇÏÀÚ.

MainPage Ŭ·¡½ºÀÇ ¼±µÎ¿¡¼­ vibrate °´Ã¼¸¦ ÆäÀÌÁöÀÇ ¸â¹ö·Î ¼±¾ðÇÏ°í Default Á¤Àû ¸Þ¼­µå·Î ÃʱâÈ­Çß´Ù. °¢ ¹öÆ°ÀÇ Çڵ鷯´Â ½Ã°£À» ´Þ¸®ÇÏ¿© ´Ù¾çÇÑ ÇüÅ·ΠÁøµ¿À» ¹ß»ý½ÃŲ´Ù. Áøµ¿ÇÒ ½Ã°£Àº TimeSpan Ŭ·¡½ºÀÇ FromMilliseconds ¸Þ¼­µå·Î 1/1000ÃÊ ´ÜÀ§·Î ÁöÁ¤ÇÑ´Ù. ¿¡¹Ä·¹ÀÌÅÍ¿¡¼­ÀÇ ½ÇÇà °á°ú´Â ´ÙÀ½°ú °°´Ù.

¾ÈŸ±õ°Ôµµ ¿¡¹Ä·¹ÀÌÅÍ¿¡¼­´Â ¹öÆ°À» ´­·¯ ºÃÀÚ È­¸é»óÀ¸·Î´Â ¾Æ¹«·± ¹ÝÀÀÀÌ ¾ø´Ù. º°´Ù¸¥ ¿¡·¯´Â ¹ß»ýÇÏÁö ¾ÊÁö¸¸ Áøµ¿ Ãâ·ÂÀº ¹«½Ã´çÇÑ´Ù. ¿¡¹Ä·¹ÀÌÅÍ´Â ½ÇÀåºñ°¡ ¾Æ´Ï¹Ç·Î Áøµ¿ ¸ðÅÍ°¡ ¾ø±â ¶§¹®ÀÌ´Ù. ÀÌ·± ¿¹Á¦´Â ¹Ýµå½Ã ½ÇÀåºñ·Î Å×½ºÆ®ÇØ ºÁ¾ß Á¦´ë·Î µ¿ÀÛÇÏ´ÂÁö È®ÀÎÇÒ ¼ö ÀÖ´Ù. ½ÇÀåºñ¿¡¼­ Å×½ºÆ®ÇÏ·Á¸é °³¹ßÀÚ µî·ÏÇÏ°í Àåºñ¸¦ ¾ð¶ôÇÏ´Â ´Ù¼Ò º¹ÀâÇÑ ÀýÂ÷°¡ ÇÊ¿äÇÏ´Ù.

½ÇÀåºñ·Î Å×½ºÆ®ÇØ º¸¸é ¹öÆ°À» ´©¸¦ ¶§ Àåºñ°¡ ¶³¸®´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. 0.2ÃÊ°¡ ²Ï ªÀº ½Ã°£ÀÌÁö¸¸ Áøµ¿À» ´À³¢±â¿¡´Â »ó´çÈ÷ ±ä ½Ã°£À̶ó´Â »ý°¢ÀÌ µé °ÍÀÌ´Ù. ªÀº ¾Ë¸² Áøµ¿À̶ó¸é ±æ¾îµµ 0.1Ãʸ¦ ³Ñ±âÁö ¾Ê´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù.