public void ActivateHaptic()
        {
            VibrationEffect effect   = VibrationEffect.CreateOneShot(100, VibrationEffect.DefaultAmplitude);
            Vibrator        vibrator = (Vibrator)global::Android.App.Application.Context.GetSystemService(Context.VibratorService);

            vibrator.Vibrate(effect);
        }
Ejemplo n.º 2
0
 static T CreateWordEffect <T, U>(U effectData) where T : WordEffect where U : WordEffectData
 {
     if (typeof(T).Equals(typeof(TypeWriterEffect)))
     {
         TypeWriterEffect effect = new TypeWriterEffect();
         effect.ConstructWordEffect(effectData);
         return((T)(object)effect);
     }
     else if (typeof(T).Equals(typeof(InstantDisplayAfterDurationEffect)))
     {
         InstantDisplayAfterDurationEffect effect = new InstantDisplayAfterDurationEffect();
         effect.ConstructWordEffect(effectData);
         return((T)(object)effect);
     }
     else if (typeof(T).Equals(typeof(VibrationEffect)))
     {
         VibrationEffect effect = new VibrationEffect();
         effect.ConstructWordEffect(effectData);
         return((T)(object)effect);
     }
     else
     {
         throw new Exception("try to create unimplemented word effect");
     }
 }
Ejemplo n.º 3
0
        public void Vibration(TimeSpan?vibrateSpan = null)
        {
            using (var vibrator = (Android.OS.Vibrator)CrossCurrentActivity.Current.Activity.GetSystemService(Context.VibratorService))
            {
                if ((int)Android.OS.Build.VERSION.SdkInt >= 11)
                {
                    if (!vibrator.HasVibrator)
                    {
                        Console.WriteLine("Android device does not have vibrator.");
                        return;
                    }
                }

                var milliseconds = vibrateSpan.HasValue ? vibrateSpan.Value.TotalMilliseconds : 500;
                if (milliseconds < 0)
                {
                    milliseconds = 0;
                }

                try
                {
                    vibrator.Vibrate(VibrationEffect.CreateOneShot((long)milliseconds, VibrationEffect.DefaultAmplitude));
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Unable to vibrate Android device, ensure VIBRATE permission is set.\r\n{ex.Message}");
                }
            }
        }
Ejemplo n.º 4
0
        private SimpleMessageDialog LogErrorInternal(Exception ex, bool silent = false)
        {
            if (ex is LocalizedException)
            {
                WriteLine((ex as LocalizedException).InnerException, LogPriority.Error);
            }

            else
            {
                WriteLine(ex, LogPriority.Error);
            }

            if (silent)
            {
                return(null);
            }

            Vibrator vibrator = (Vibrator)_context.GetSystemService(Context.VibratorService);

            vibrator.Vibrate(VibrationEffect.CreateOneShot(100, VibrationEffect.DefaultAmplitude));

            var simpleMessageDialog = new SimpleMessageDialog(_context)
            {
                ButtonTextId  = Resource.String.mettarin_ok,
                MessageTextId = (ex is LocalizedException) ?
                                (ex as LocalizedException).ResourceId : Resource.String.mettarin_error_text,
                TitleTextId = Resource.String.mettarin_error
            };

            return(simpleMessageDialog);
        }
Ejemplo n.º 5
0
        public override void OnReceive(Context context, Intent intent)
        {
            if (intent.Action.Equals(Intent.ActionBootCompleted))
            {
                var _intent = new Intent(context, typeof(MobileService));
                context.StartService(_intent);
            }

            if (intent.Action.Equals("com.google.android.c2dm.intent.RECEIVE"))
            {
                var _data  = intent.Extras;
                var _alarm = new Intent("android.intent.action.BADGE_COUNT_UPDATE");

                // 패키지 네임과 클래스 네임 설정
                _alarm.PutExtra("badge_count_package_name", "kr.co.odinsoftware.LION");
                _alarm.PutExtra("badge_count_class_name", "Lion.XDroid.LoginActivity");

                // 업데이트 카운트
                _alarm.PutExtra("badge_count", _data.GetString("badge"));
                context.SendBroadcast(_alarm);

                var _vibrator = context.GetSystemService(Context.VibratorService).JavaCast <Vibrator>();
                if (Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.O)
                {
                    _vibrator.Vibrate(VibrationEffect.CreateOneShot(500, VibrationEffect.DefaultAmplitude));
                }
                else
#pragma warning disable CS0618 // Type or member is obsolete
                {
                    _vibrator.Vibrate(500);
                }
#pragma warning restore CS0618 // Type or member is obsolete
            }
        }
Ejemplo n.º 6
0
        static Task DoRun(int milliseconds)
        {
            using var vibrator = CreateVibrator();
            vibrator.Vibrate(VibrationEffect.CreateOneShot(milliseconds, VibrationEffect.DefaultAmplitude));

            return(Task.CompletedTask);
        }
Ejemplo n.º 7
0
        private static bool PlatformSetVibration(
            int index, float leftMotor, float rightMotor, float leftTrigger, float rightTrigger)
        {
            var gamePad = GamePads[index];

            if (gamePad == null)
            {
                return(false);
            }

            var vibrator = gamePad._device.Vibrator;

            if (!vibrator.HasVibrator)
            {
                return(false);
            }

            const long durationsMs = 500;

            if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
            {
                vibrator.Vibrate(VibrationEffect.CreateOneShot(durationsMs, VibrationEffect.DefaultAmplitude));
            }
            else
#pragma warning disable CS0618
            {
                vibrator.Vibrate(durationsMs);
            }
#pragma warning restore CS0618

            return(true);
        }
Ejemplo n.º 8
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().PermitAll().Build();
            StrictMode.SetThreadPolicy(policy);

            var wifi = (WifiManager)GetSystemService(WifiService);
            var ConnectivityManager = (ConnectivityManager)GetSystemService(ConnectivityService);

            wifilock = wifi.CreateWifiLock(WifiMode.FullHighPerf, "WifiLock");
            wifilock.Acquire();

            game = new Game1(
                CreateUdpService(wifi, ConnectivityManager)
                , RuningOnAndroid: true
                );

            if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
            {
                Vibrator vibrator = (Vibrator)GetSystemService(VibratorService);
                Game1.AndroidVibrate = f => vibrator.Vibrate(VibrationEffect.CreateOneShot(f, VibrationEffect.DefaultAmplitude));
            }
            else
            {
                //TODO:
            }

            SetViewFullScreen();

            //PowerManager pm = (PowerManager)GetSystemService(PowerService);
            //this.mWakeLock = pm.NewWakeLock(WakeLockFlags.ScreenDim, "My Tag");
            //this.mWakeLock.Acquire();
            game.Run();
        }
Ejemplo n.º 9
0
        public static void AlertWithVibration(TimeSpan?vibrateSpan = null)
        {
            if (CanVibrate)
            {
                var milliseconds = vibrateSpan.HasValue ? vibrateSpan.Value.TotalMilliseconds : 500;
                using var vibratorManager = (VibratorManager)Android.App.Application.Context.GetSystemService(Context.VibratorManagerService);
                if ((int)Build.VERSION.SdkInt >= 11)
                {
#if __ANDROID_11__
                    if (!vibratorManager.DefaultVibrator.HasVibrator)
                    {
                        Console.WriteLine("Android device does not have vibrator.");
                        return;
                    }
#endif
                }
                if (milliseconds < 0)
                {
                    milliseconds = 0;
                }

                try
                {
                    vibratorManager.DefaultVibrator.Vibrate(VibrationEffect.CreateOneShot((int)milliseconds, VibrationEffect.DefaultAmplitude));
                }
                catch { }
            }
        }
Ejemplo n.º 10
0
        public void ReceiveDetections(Detections detections)
        {
            if (this.ViewModel.State == RegisterDeviceViewModel.RegistrationState.New)
            {
                SparseArray qrcodes = detections.DetectedItems;
                if (qrcodes.Size() != 0)
                {
                    try
                    {
                        Vibrator vibrator = (Vibrator)GetSystemService(Context.VibratorService);
                        vibrator.Vibrate(VibrationEffect.CreateOneShot(1000, 1));
                    }
                    catch { }
                    var value = ((Barcode)qrcodes.ValueAt(0)).RawValue;

                    string networkSSID = value;

                    if (!string.IsNullOrEmpty(networkSSID))
                    {
                        Task.Run(async() => await this.ViewModel.ProvisionDevice(new Common.WiFi.WifiNetwork()
                        {
                            SSID = networkSSID
                        }));
                    }
                }
            }
        }
Ejemplo n.º 11
0
 private static void VibrateWhenNotified()
 {
     if (Preferences.Get("IsVibrate", false))
     {
         var vibrator = (Vibrator)Application.Context.GetSystemService(Context.VibratorService);
         vibrator.Vibrate(VibrationEffect.CreateWaveform(vibrationPattern, -1));
     }
 }
Ejemplo n.º 12
0
 private void Vibrate(int duration)
 {
     if (Database.GetPropertyBoolValue("Vibrate"))
     {
         Vibrator vibrator = (Vibrator)GetSystemService(Context.VibratorService);
         vibrator.Vibrate(VibrationEffect.CreateOneShot(duration, VibrationEffect.DefaultAmplitude));
         //vibrator.Vibrate(duration);
     }
 }
Ejemplo n.º 13
0
        public void Vibrate(int duration)
        {
            if (!ShouldVibrate())
            {
                return;
            }

            s_vibrator?.Vibrate(VibrationEffect.CreateOneShot(duration, VibrationEffect.DefaultAmplitude));
        }
 private void VerificationVibrate()
 {
     if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
     {
         _vibrator.Vibrate(VibrationEffect.CreateOneShot(100, 100));
     }
     else
     {
         _vibrator.Vibrate(100);
     }
 }
Ejemplo n.º 15
0
 public static void VibrateClick()
 {
     if (Settings.AllowVibration)
     {
         Vibrator v  = (Vibrator)Application.Context.GetSystemService(Context.VibratorService);
         var      fx = Build.VERSION.SdkInt >= BuildVersionCodes.Q ?
                       VibrationEffect.CreatePredefined(VibrationEffect.EffectHeavyClick) :
                       VibrationEffect.CreateOneShot(20, 128);
         v.Vibrate(fx);
     }
 }
Ejemplo n.º 16
0
        public void Success()
        {
            if (!ShouldVibrate())
            {
                return;
            }

            var pause  = 50;
            var action = 80;

            s_vibrator?.Vibrate(VibrationEffect.CreateWaveform(new long[] { 0, action, pause, action }, -1));
        }
Ejemplo n.º 17
0
        private void Vibrate()
        {
            Vibrator vibrator = (Vibrator)GetSystemService(Context.VibratorService);

            if (Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.O)
            {
                vibrator.Vibrate(VibrationEffect.CreateOneShot(ONE_HUNDRED_MILLISECONDS, VibrationEffect.DefaultAmplitude));
            }
            else
            {
                vibrator.Vibrate(ONE_HUNDRED_MILLISECONDS);
            }
        }
Ejemplo n.º 18
0
    public static void UploadEffect(VibrationEffect effect)
    {
        switch (effect.EffectType)
        {
        case VibrationEffectType.Constant:
            UploadConstantEffect(effect.UnityName, effect.Magnitude, effect.Duration);
            break;

        case VibrationEffectType.Periodic:
            UploadPeriodicEffect(effect.UnityName, effect.Magnitude, effect.Duration, (int)effect.PeriodicType, effect.Offset, effect.Period, effect.Phase);
            break;
        }
    }
Ejemplo n.º 19
0
 internal void NotifyTransacting(Vibrator vibrator)
 {
     logger.Info("Init new Transaction");
     if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
     {
         vibrator.Vibrate(VibrationEffect.CreateOneShot(150, 100));
     }
     else
     {
         vibrator.Vibrate(150);
     }
     IsTransacting = true;
 }
        public void Run()
        {
            var vibrator = (Vibrator)Android.App.Application.Context.GetSystemService(Context.VibratorService);

            if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
            {
                var effect = VibrationEffect.CreateOneShot(20, VibrationEffect.DefaultAmplitude);
                vibrator?.Vibrate(effect);
            }
            else
            {
                vibrator?.Vibrate(20);
            }
        }
        internal static void Vibrate(Context applicationContext, int milliseconds)
        {
            var v = (Vibrator)applicationContext.GetSystemService(Context.VibratorService);

            if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
            {
                v.Vibrate(VibrationEffect.CreateOneShot(milliseconds, VibrationEffect.DefaultAmplitude));
            }
            else
            {
                v.Vibrate(milliseconds);
            }
            //Android.Widget.Toast.MakeText(applicationContext, "Vibrating", Android.Widget.ToastLength.Short).Show();
        }
Ejemplo n.º 22
0
        public void HeavyClick()
        {
            if (!ShouldVibrate())
            {
                return;
            }

            if (Build.VERSION.SdkInt <= BuildVersionCodes.P)
            {
                s_vibrator?.Vibrate(VibrationEffect.CreateOneShot(20, VibrationEffect.DefaultAmplitude + 10));
            }
            else
            {
                s_vibrator?.Vibrate(VibrationEffect.CreatePredefined(VibrationEffect.EffectHeavyClick));
            }
        }
Ejemplo n.º 23
0
 public void Vibe()
 {
     new Thread(() = \ > \
     {
         try
         {
             Vibrator v = (Vibrator)GetSystemService(Context.VibratorService);
             {
                 v.Vibrate(VibrationEffect.CreateOneShot(50, VibrationEffect.DefaultAmplitude));
             }
         }
         catch
         {
         }
     }).Start();
 }
Ejemplo n.º 24
0
 // to vibrate on key press
 private void VibrateOnKey(int ms)
 {
     if (ms > 0)
     {
         if (Build.VERSION.SdkInt >= (BuildVersionCodes)26)
         {
             vibrator.Vibrate(VibrationEffect.CreateOneShot(ms, Vibation_Amp));
             //public static VibrationEffect createPredefined(EFFECT_CLICK); for android but can't find here
         }
         else
         {
             vibrator.Vibrate(ms);
         }
     }
     Console.WriteLine("vibrate on key  call end");//debug
     Console.WriteLine("Preview enabled value is: " + kv.PreviewEnabled);
 }
Ejemplo n.º 25
0
        public void OnVibrateOneSHot()
        {
            if (!AGVibrator.HasVibrator())
            {
                Debug.LogWarning("This device does not have vibrator");
            }

            if (!AGVibrator.AreVibrationEffectsSupported)
            {
                Debug.LogWarning("This device does not support vibration effects API!");
                return;
            }

            AGVibrator.Cancel();
            //Create a one shot vibration for 1000 ms at default amplitude
            AGVibrator.Vibrate(VibrationEffect.CreateOneShot(1000, VibrationEffect.DEFAULT_AMPLITUDE));
        }
Ejemplo n.º 26
0
        public bool PlayWavSuccess()
        {
            //var am = (AudioManager)Android.App.Application.Context.GetSystemService(Android.App.Application.AudioService);

            //if (am.RingerMode == RingerMode.Normal)
            //{
            //    mediaPlayer = MediaPlayer.Create(global::Android.App.Application.Context, Resource.Raw.good);
            //    mediaPlayer.Start();
            //}

            //var v = (Vibrator)Android.App.Application.Context.GetSystemService(Android.App.Application.VibratorService);
            Vibrator vibrator = (Vibrator)Android.App.Application.Context.GetSystemService(Android.App.Application.VibratorService);

            vibrator.Vibrate(VibrationEffect.CreateOneShot(200, 1));

            return(true);
        }
Ejemplo n.º 27
0
        static void PlatformVibrate(TimeSpan duration)
        {
            Permissions.EnsureDeclared(PermissionType.Vibrate);

            var time = (long)duration.TotalMilliseconds;

            if (Platform.HasApiLevel(BuildVersionCodes.O))
            {
                Platform.Vibrator.Vibrate(VibrationEffect.CreateOneShot(time, VibrationEffect.DefaultAmplitude));
            }
            else
            {
#pragma warning disable CS0618 // Type or member is obsolete
                Platform.Vibrator.Vibrate(time);
#pragma warning restore CS0618 // Type or member is obsolete
            }
        }
Ejemplo n.º 28
0
 private void SetVibrator()
 {
     if (IsVibrateOn)
     {
         _vibrator = Vibrator.FromContext(this);
         long[] mVibratePattern = new long[] { 0, 400, 1000, 600, 1000, 800, 1000, 1000 };
         if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
         {
             var effect = VibrationEffect.CreateWaveform(mVibratePattern, 0);
             _vibrator?.Vibrate(effect);
         }
         else
         {
             _vibrator?.Vibrate(mVibratePattern, 0);
         }
     }
 }
Ejemplo n.º 29
0
        public static void ActivateVibration(this Vibrator vibrator, int duration, int amplitude)
        {
            // We can't control the amplitude/intensity of the vibration before Oreo
            // It might give a bad experience on lower end phones
            if (!vibrator.HasVibrator || !OreoApis.AreAvailable)
            {
                return;
            }

            try
            {
                vibrator.Vibrate(VibrationEffect.CreateOneShot(duration, amplitude));
            }
            catch
            {
                // Ignore potential permission exceptions
            }
        }
Ejemplo n.º 30
0
        static void PlatformVibrate(TimeSpan duration)
        {
            Permissions.EnsureDeclared <Permissions.Vibrate>();

            var time = (long)duration.TotalMilliseconds;

#if __ANDROID_26__
            if (Platform.HasApiLevelO)
            {
                Platform.Vibrator.Vibrate(VibrationEffect.CreateOneShot(time, VibrationEffect.DefaultAmplitude));
                return;
            }
#endif

#pragma warning disable CS0618 // Type or member is obsolete
            Platform.Vibrator.Vibrate(time);
#pragma warning restore CS0618 // Type or member is obsolete
        }
Ejemplo n.º 31
0
    public static void UploadEffect(VibrationEffect effect)
    {
        switch (effect.EffectType) {
			case VibrationEffectType.Constant:
				UploadConstantEffect(effect.UnityName, effect.Magnitude, effect.Duration);
                break;
Ejemplo n.º 32
0
 public static void PlayEffect(int controllerIndex, VibrationEffect effect)
 {
     _PlayEffect(controllerIndex, effect.UnityName);
 }