import android.content.res.AssetManager; import android.util.Log; import com.huawei.devices.hapticsengine.HapticAttributes; import com.huawei.devices.hapticsengine.HapticPlayer; import java.io.IOException; import java.io.InputStream;
HapticPlayer mHapticPlayer = new HapticPlayer(this);
private boolean parseStream(String fileName) {
boolean ret = false;
// 获取asset资源管理的对象
AssetManager assetManager = getAssets();
if (assetManager != null) {
try {
// 通过assetManager打开asset目录的json文件
InputStream inputStream = assetManager.open(fileName);
HapticAttributes attr = new HapticAttributes();
// 设置波形的使用场景
attr.setUsage(HapticAttributes.USAGE_GAME);
// 加载配置文件,获取文件输入流,调用波形配置文件接口
ret = mHapticPlayer.setHapticWave(attr, inputStream);
} catch (IOException e) {
Log.e(TAG, "Failed to open file");
return false;
}
}
return ret;
} mHapticPlayer.setLooping(true); boolean isLoop = mHapticPlayer.isLooping();
int ret = mHapticPlayer.play();
boolean isPlaying = mHapticPlayer.isPlaying();
int duration = mHapticPlayer.getDuration();
mHapticPlayer.stop();