7

これは、iOS にカスタム バイブレーション用の API はありますか?に関する質問です。. カスタムの振動パターンを作成できますが、強度を制御できません。

これは、カスタム振動パターンを有効にする Kevin Cao の回答からコピーされたものです。

NSMutableDictionary* dict = [NSMutableDictionary dictionary];
NSMutableArray* arr = [NSMutableArray array ];

[arr addObject:[NSNumber numberWithBool:YES]]; //vibrate for 2000ms
[arr addObject:[NSNumber numberWithInt:2000]];

[arr addObject:[NSNumber numberWithBool:NO]];  //stop for 1000ms
[arr addObject:[NSNumber numberWithInt:1000]];

[arr addObject:[NSNumber numberWithBool:YES]];  //vibrate for 1000ms
[arr addObject:[NSNumber numberWithInt:1000]];

[arr addObject:[NSNumber numberWithBool:NO]];    //stop for 500ms
[arr addObject:[NSNumber numberWithInt:500]];

[dict setObject:arr forKey:@"VibePattern"];
[dict setObject:[NSNumber numberWithInt:1] forKey:@"Intensity"];


AudioServicesPlaySystemSoundWithVibration(4095,nil,dict);

@"Intensity"キーに値を追加するコード行はintそのトリックを実行せず、メソッド内を調べてそれを理解する方法がわかりませんAudioServicesPlaySystemSoundWithVibration。実際に強度を変更するには、何を渡す必要がありますか? 現時点では、1、1000、0.4、0.0001 のどれを渡しても問題ありません。常に同じ強度です (iOS7 を搭載した iPhone 4 の場合)。誰でもこれを再現できますか?

振動パターンだけでなく、滑らかな振動エンベロープを作成できるようにしたいと考えています。方法?


(これは計測器設計の研究プロジェクトであるため、App Store の制限については (まだ) 心配していません。)

4

1 に答える 1