でしたが、また変わった🙁。。そしてiOS13ではJS側で許可したクリックイベント作るんですね。
出典:iOS 13でデバイスの動きと方向の許可を要求する方法
自作のWebAppで実装して動作確認をしたのでメモです
DeviceOrientationEvent ←→ DeviceMotionEvent
window.addEventListener('deviceorientation' ←→ window.addEventListener('devicemotion'
bunki.js
    if (typeof DeviceOrientationEvent.requestPermission === 'function') {
      // iOS 13+
      popupOpen("requestPermissionPopup");
    } else {
      // non iOS 13+
      window.addEventListener("deviceorientation", 今までのイベント);
    }
で、13+かを判定して、
なにかUIでクリックイベントを設定して、
hoge.html
<button onclick="requestPermission()">このエリアを押して モーションの利用を許可してください (iOS 13+) </button>
13+ で許可されたイベントリスナで
bunki.js
  // for ios13
  requestPermission = ()=> {
    DeviceOrientationEvent.requestPermission().then(response => {
      if (response === 'granted') {
        window.addEventListener("deviceorientation", ios13で許可したイベント);
      }
    }).catch(console.error);
  };
で自分のWebAppでdeviceorientation動くことは確認しました。
許可の1タップがまた増えるのがなんだかなぁ。個人の設定で永続性はできないんですかねぇ。IEの記憶再び。。。🙁
chromeは今の所何もせず動いています。:追記 v78 ios requestPermission になった模様。
