問題タブ [cmmotionmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
332 参照

ios - iOS cmmotionanager のメモリ使用量

このチュートリアルに従いました: http://blogs.captechconsulting.com/blog/john-morrison/ios-getting-started-accelerometer-dataで、iPhone アプリに加速度計をリッスンさせました。CMMotionManager を AppDelegate に追加し、viewcontroller でアプリケーションの CMMotionManager を読み取るプロパティを追加しました。現在、アプリでメモリ使用量の警告が表示されています。

アプリをメモリ プロファイラ インストゥルメントに接続したところ、アプリケーションと対話しておらず、テーブルの上に静止しているときに、メモリ使用量が直線的に増加することがわかりました。犯人は次のコードにあるようです。

最初の例ではキューがインラインで定義されていましたが、最後の手段としてキューをビュー コントローラーのメンバー変数に移動しましたが、どちらもあまり効果がないようです。更新間隔をオンにしないと、メモリ使用量が増えません。更新間隔をオンにすると、メモリが大きくなります。

motionCount は、viewController のプライベート int として宣言され、最近の電話の動きを追跡するために使用されています。別のスレッドは、時間の経過とともにカウンターをゆっくりとゼロにリセットします...しかし、そのスレッドを有効/無効にしてもメモリ使用量に影響を与えないようですので、そのコードは省略しました...

CMMotionManager が過度のメモリ使用量を引き起こす可能性があるという Web 上の警告は何も表示されませんが、アプリを実行したままにしておくと、1 分ごとにさらに 5 メガバイトのメモリが消費されます...私の問題?...

0 投票する
2 に答える
5672 参照

ios - CMMotionManager と UIAccelerometer の効率

私はしばらくAR フレームワークに取り組んでおり、 UIAccelerometer (非推奨) から CMMotionManager に更新しようとしていますが、効率の問題が発生していますか?

基本的に、CMMotionManager は UIAccelerometer よりもはるかに大きく、遅いようです。以前に CMMotionManager でパフォーマンスの問題を経験した人はいますか?


ここでわかるように、私はこれを持っていました:

iPhone 4 のような「古い」デバイスでもすべてうまく動作します (それほど古いものではありませんが...)。

しかし、CMMotionManager を使用してまったく同じコードを試すと、次のようになります。

数学はそれからがらくたを遅らせるようです..! これは、すべての数学部分を削除するとうまく機能するためです。

iPhone 5 は問題なく動作しますが、iPhone 4S は遅延の兆候を示し、iPhone 4 はフリーズするだけです...

(必要に応じて詳細を説明できますが、説明するのは比較的複雑です)

0 投票する
2 に答える
1223 参照

iphone - CMMotionManager iPhone を使用したぎくしゃくした動き

デバイスが前後左右に傾いているので、CMMotionManager を使用してビュー上のボタンや画像などを移動しています。姿勢のピッチとロールを取得し、これらを使用して、画面上のピクセル配置を表す文字列に値を割り当てます。

これが私が情報を取得する方法です

これが私がそれらを割り当てる方法です。

画面上でx軸が連続的に上下(前後)するようにしました。つまり、-.01 は -.40、.01、および .40 と同じです。-.01 と .01 から値が大きくなり、-.40 と 4.4 から値が小さくなります。私はy軸でも同じことをしました。-.01 と .01 は 284 で、-.20 と .20 は 264 です。ただし、この場合、数値は -.01 から上がり、.01 から下がります。

下記は用例です

このように、ある方向から次の方向への連続的な流れがあります。

しかし、私は小さな問題を抱えています。電話が前方に傾けられ、.2 faceUp の向きから .2 faceDown の向きに変わるとき。ぎくしゃくした動きをします。faceUp .2 ではボタンなどが一気に左に移動し、faceDown .20 に移動すると右に移動します。それ以外の場合、ボタンなどは .19 と -.19 の中心にあり、そこに戻って正常に動作します (期待どおり)。DeviceOrientationFaceUp と FaceDown を呼び出そうとしましたが、これは役に立たなかったようです。

誰でもこの動作の経験があり、修正を知っているか、何か提案がありますか?

また、ボタンを上下左右に移動するためにこのパーツを追加します。この方法を使用すると、電話機の位置に関係なくボタンを上下左右に移動できます。

これは一種の視差運動です。

0 投票する
1 に答える
1896 参照

ios - Devicemotion が値を更新していません

ログに記録すると、ロール、ピッチ、ヨーの値が 0.0000 になる理由がわかりません。

これはコードです:

私はこの同様の質問を経験しました:SO Question

これを理解するのを手伝ってください..

ありがとう..


更新されたコード:

このコードの初期値の大部分は 0.000000 です。その後、値を取得し始めます...だから、にstartDeviceMotionUpdates値を提供するための遅延があると思いますdeviceMotion。最初のゼロ以外の値を保存する方法を理解する必要があるようです。

0 投票する
2 に答える
1315 参照

ios - ジャイロスコープの回転データとデバイスのモーション回転データの違いは何ですか?

ほとんどの人にとっては簡単な質問かもしれません。gyroscopeしかし、回転データと回転データの違いがわかりませんでしたdevice motion

私の問題 :

ユーザーが特定の軸 (例: X 軸) で IOS デバイスを傾ける場合 、傾き操作の結果に基づいてframe.origin.xプロパティを変更する必要があります。UIImageViewY 軸と同じです。

私の質問:

より良い結果を得るには、ジャイロスコープの回転データとデバイスのモーション回転データのどちらを使用する必要がありますか?

たまたまAppleのドキュメントを読んだところ、偏っgyroscopeたものだと書かれていました。どういう意味ですか?

ピクセル単位で 2 つの回転データの差を計算したいですか? どうすればできますか?

回答ありがとうございます。

0 投票する
1 に答える
978 参照

ios - iOSでサスペンド状態で動作するモーションアクティビティ

アプリケーションの 1 つで M7 プロセッサのモーション アクティビティを使用しています。アプリが一時停止状態のときにもモーション アクティビティの更新を取得したい。大量のバッテリーを消費するため、アプリが一時停止状態になるのを防ぐために startUpdatingLocation を呼び出したくありません。アプリがバックグラウンドに入ったときにリージョン モニタリングを設定しましたが、それでもモーション アップデートを取得できません。

startUpdatingLocation を呼び出して、中断状態のモーション アクティビティの更新を取得する以外に方法はありますか?