我刚刚第一次将我的应用程序部署到了我的iPhone上.每次启动它都会在跑步前振动,并且运行正常.构建是Debug | iPhone是我的应用之一.
任何想法为什么它在启动时振动以及如何阻止它?这绝对不是我编写的东西,在模拟器中运行时没有任何异常或问题.
是否可以让手机在程序中为任何Toast消息振动?或者你必须在每个吐司上插入一个振动命令?
干杯.
我想在通话时关闭设备振动设置.我为此功能实现了BroadcastReceiver,它执行接收PHONE_STATE广播的操作.问题是我根本无法关闭振动.我尝试过以下方法:
AudioManager audioManager = (AudioManager)
context.getSystemService(Context.AUDIO_SERVICE);
audioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_OFF);
Run Code Online (Sandbox Code Playgroud)
要么
Vibrator vib = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
vib.cancel();
Run Code Online (Sandbox Code Playgroud)
第一种方法对我来说似乎很理想.它甚至适用于在收到呼叫时"开启"振动.但是,在这种情况下,我无法将它们"关闭".
有人试过吗?
编辑:我查看了Android的手机应用代码.以下代码存在于Ringer.java中:
if (shouldVibrate() && mVibratorThread == null) {
mContinueVibrating = true;
mVibratorThread = new VibratorThread();
mVibratorThread.start();
}
Run Code Online (Sandbox Code Playgroud)
最初通过电话应用程序启动一个线程,使手机振动.当我将振动设置更改为关闭时,将跳过此检查但已启动的线程继续运行.
这也解释了来电时如何打开振动.在这种情况下,线程最初没有运行.然后,当我打开振动设置时启动它.如果不更改Phone应用程序,我认为没有任何解决方案.
我正在使用AS3在Flash for Android中制作游戏.我希望用户知道他按下了一个按钮,让设备振动了一小段时间.有人可以向我解释我是如何实现这一目标的吗?我是否需要导入特定的类以及代码应该是什么样的?
提前致谢!
我正在尝试创建一个Android应用程序,我在其中过滤一个特定频率的蜂鸣声并使手机振动.
我从移动设备的MIC中获取输入并使用MediaRecorder类,通过使用这个类,我可以记录,保存和播放输入.现在,只要有哔哔声或任何声音,我就需要我的手机振动.
输入是通过电线给移动设备的耳机插孔,所以我知道只有一个频率输入.
我有一个按钮,点击开始录制.我已经拥有振动并在我的清单文件中记录的权限.
record.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
isRecording=true;
myAudioRecorder.prepare();
myAudioRecorder.start();
...
}
Run Code Online (Sandbox Code Playgroud)
我也尝试搜索互联网,在这里发现了类似的问题,但我找不到任何正确的答案.
但是,我可以点击另一个按钮让手机振动,这里是代码片段,
Vibrator vibrate;
vibrate = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
Btn1.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
vibrate.vibrate(800);
}
}
Run Code Online (Sandbox Code Playgroud)
我试着在recorder.start()中调用一个振动器; 功能但这使手机即使在没有声音时也会振动.我也试过从这个问题得到帮助,所以每当有沉默,手机不应该振动,但我感到困惑,我知道应该有一个布尔值,当有声音并使手机振动时,它会变为真,但我我无法将此逻辑放入代码中.请让我知道在这种情况下我该怎么办?我应该在哪个方向搜索?
更新 我发现这个动作用于显示输入声音幅度的进度条,它工作正常,我试图让手机在缓冲区有一些值时振动,现在它振动甚至当振幅为零时,我猜那是因为事实上,每一次振动都会产生噪音,导致手机振动.由于java.lang.RuntimeException,我无法通过TOAST检查函数:无法在未调用Looper.prepare()的线程内创建处理程序.有什么建议吗?
我想让iPhone震动,我找到了代码
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
Run Code Online (Sandbox Code Playgroud)
但Xcode 4.3.2报告错误:未声明的标识符kSystemSoundID_Vibrate
有什么问题?
即使在设置中打开时,我也希望iPhone在静音模式下不会振动.我想通过App以编程方式进行.这对我来说,所以我可以使用私有API.是否有api管理设置中的声音?你知道任何解决方案吗?
谢谢,
弗洛
我目前正在使用Xamarinandroid 进行应用程序.我无法获得该设备vibrate.
Vibrator vibrator = (Vibrator)Activity.GetSystemService(Context.VibratorService);
vibrator.Vibrate(100);
Run Code Online (Sandbox Code Playgroud)
当我按下链接到代码的按钮时,它会构建但崩溃.
我正在swift中编写一个基于sprite kit的应用程序,需要使用振动进行简短的触觉反馈
所以首先我导入AudioToolbox并使用它
AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))
Run Code Online (Sandbox Code Playgroud)
它运作良好,但它振动太久,无法控制这个持续时间.
经过一番搜索,我在这里读到了Kevin Cao的答案:
但不幸的是,AudioServicesPlaySystemSoundWithVibration私有功能仅在iOS 6中可用.
还有其他可能的方法吗?
我尝试使用设备的默认振动设置振动我的应用程序,但我不能使用振动.我尝试了下面的代码.
case AudioManager.RINGER_MODE_VIBRATE:
Vibrator vibrator = (Vibrator) this.context.getSystemService(Context.VIBRATOR_SERVICE);
long[] pattern = { 0, 1000, 2000, 3000, 2000 };
vibrator.vibrate(pattern, 0);
Run Code Online (Sandbox Code Playgroud)
有没有办法用默认设置振动设备.我使用了模式,但我需要设备来电默认振动设置.
或者我怎样才能获得设备的振动模式?
谢谢.