Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:在按键时启用触觉反馈和声音_Java_Android_Dalvik - Fatal编程技术网

Java Android:在按键时启用触觉反馈和声音

Java Android:在按键时启用触觉反馈和声音,java,android,dalvik,Java,Android,Dalvik,我在安卓操作系统设置时遇到问题。长话短说,我们正在开发一个应用程序,使用不同的输入设置进行一些用户实验。我们需要通过不同的实验以编程方式启用和禁用按键声音和按键振动 我已经探索了一些选项,但是如果可能的话,我想避免实际设置一个监听器和手动振动 我已授予自己修改系统设置的权限: <uses-permission android:name="android.permission.WRITE_SETTINGS" /> android.provider.Settings.System

我在安卓操作系统设置时遇到问题。长话短说,我们正在开发一个应用程序,使用不同的输入设置进行一些用户实验。我们需要通过不同的实验以编程方式启用和禁用按键声音和按键振动

我已经探索了一些选项,但是如果可能的话,我想避免实际设置一个监听器和手动振动

我已授予自己修改系统设置的权限:

<uses-permission android:name="android.permission.WRITE_SETTINGS" />
   android.provider.Settings.System.putInt(getContentResolver(),
             android.provider.Settings.System.HAPTIC_FEEDBACK_ENABLED,
             1);
但是,这些更改不会反映在系统设置中

下面的代码正在工作,通过仿真程序上“系统设置”窗口中的设置实际更改的事实进行验证

   android.provider.Settings.System.putInt(getContentResolver(),
             android.provider.Settings.System.TEXT_AUTO_PUNCTUATE,
             0);

   android.provider.Settings.System.putInt(getContentResolver(),
             android.provider.Settings.System.TEXT_AUTO_REPLACE,
             0);
我还尝试在视图上设置特定设置,例如:

    EditText inputArea = (EditText) findViewById(R.id.editText1);
    inputArea.setHapticFeedbackEnabled(true);
    inputArea.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP, HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING | HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING);
    inputArea.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY, HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING | HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING);
我把这个推到了手机上,它对手机也没有任何影响

我需要的是一种在实验过程中通过编程启用/禁用触觉反馈和按键声音的方法。我搜索了堆栈溢出,但没有找到任何有用的东西

有人知道什么窍门吗?或者我会不得不使用按键手柄手动振动手机吗


谢谢

设置监听器并手动振动是正确的方法(这就是
performhappicfeedback
方法的目的)。你为什么要逃避它?