是否可以使用语音命令而不是使用滑动手势进行导航?
Is it possible to using voice commands for navigating instead of using swipe gesture?
你好
目前,我正在开发一个沉浸式应用程序以在屏幕上提供文本,用户可以 swipe_right 转到另一个。
实际上,它改编自名为 charades(谷歌开发网站)的样本沉浸模式。
我的 objective 是,我想使用语音命令,而不是滑动手势。
例如;
- 用户打开沉浸演示,屏幕首先显示TEXT。
- 用户想通过 使用语音 "GO NEXT".
转到下一个文本
- 屏幕将显示另一个文本。
考虑到这个 post!
请问有什么办法吗?
或任何建议?
这里,这是我的解决方案。希望这可能对正在寻找的人有所帮助。
我使用 Contextual voice commands
为用户提供 'Next'、'Save' 和 'Exit' 命令。您可以从 google 开发站点转到 this document 以查看执行此操作的想法。
我有我的布局 activity 来显示一些文本,所以我把这个代码结构。在我的布局中 activity
//contextual voice command
import com.google.android.glass.view.WindowUtils;
import android.view.Menu;
import android.view.MenuItem;
@Override
public boolean onCreatePanelMenu(int featureId, Menu menu) {
if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
// Pass through to super to setup touch menu.
return super.onCreatePanelMenu(featureId, menu);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS) {
switch (item.getItemId()) {
case R.id.save_menu_item:
Log.d("Contextual", "go save checks");
break;
case R.id.next_menu_item:
Log.d("Contextual", "go next checks");
break;
case R.id.exit_menu_item:
Log.d("Contextual", "go exit checks");
break;
default:
return true;
}
return true;
}
return super.onMenuItemSelected(featureId, item);
}
不要忘记 向您的 onCreate() 声明此行 getWindow().requestFeature(WindowUtils.FEATURE_VOICE_COMMANDS);
;在你的 setContentView()
.
之前
接下来,我在其中创建了 'menu folder' 和 main.xml
以提供我的项目选择。像这样
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/next_menu_item"
android:title="@string/next">
</item>
<item
android:id="@+id/save_menu_item"
android:title="@string/save_this">
</item>
<item
android:id="@+id/exit_menu_item"
android:title="@string/exit">
</item>
和我的 strings.xml
文件。
<resources>
<string name="next">next</string>
<string name="save_this">save</string>
<string name="exit">exit</string>
</resources>
把这行
<uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT" />
给你的 AndroidMenifest.xml
.
对我来说效果很好!
你好
目前,我正在开发一个沉浸式应用程序以在屏幕上提供文本,用户可以 swipe_right 转到另一个。
实际上,它改编自名为 charades(谷歌开发网站)的样本沉浸模式。
我的 objective 是,我想使用语音命令,而不是滑动手势。
例如;
- 用户打开沉浸演示,屏幕首先显示TEXT。
- 用户想通过 使用语音 "GO NEXT". 转到下一个文本
- 屏幕将显示另一个文本。
考虑到这个 post!
请问有什么办法吗? 或任何建议?
这里,这是我的解决方案。希望这可能对正在寻找的人有所帮助。
我使用 Contextual voice commands
为用户提供 'Next'、'Save' 和 'Exit' 命令。您可以从 google 开发站点转到 this document 以查看执行此操作的想法。
我有我的布局 activity 来显示一些文本,所以我把这个代码结构。在我的布局中 activity
//contextual voice command
import com.google.android.glass.view.WindowUtils;
import android.view.Menu;
import android.view.MenuItem;
@Override
public boolean onCreatePanelMenu(int featureId, Menu menu) {
if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
// Pass through to super to setup touch menu.
return super.onCreatePanelMenu(featureId, menu);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS) {
switch (item.getItemId()) {
case R.id.save_menu_item:
Log.d("Contextual", "go save checks");
break;
case R.id.next_menu_item:
Log.d("Contextual", "go next checks");
break;
case R.id.exit_menu_item:
Log.d("Contextual", "go exit checks");
break;
default:
return true;
}
return true;
}
return super.onMenuItemSelected(featureId, item);
}
不要忘记 向您的 onCreate() 声明此行 getWindow().requestFeature(WindowUtils.FEATURE_VOICE_COMMANDS);
;在你的 setContentView()
.
接下来,我在其中创建了 'menu folder' 和 main.xml
以提供我的项目选择。像这样
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/next_menu_item"
android:title="@string/next">
</item>
<item
android:id="@+id/save_menu_item"
android:title="@string/save_this">
</item>
<item
android:id="@+id/exit_menu_item"
android:title="@string/exit">
</item>
和我的 strings.xml
文件。
<resources>
<string name="next">next</string>
<string name="save_this">save</string>
<string name="exit">exit</string>
</resources>
把这行
<uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT" />
给你的 AndroidMenifest.xml
.
对我来说效果很好!