Rubyist for iOSについて
この記事は SecHack365 Advent Calendar 2020 1日目の記事です。初日なので軽めに書いていきます。
まえがき
こんにちは、arataです。学校のテストが終わったのにタスクは増える一方です。怖いですね。
今日はとくに書くことがなかったので、最近知ったRubyistというアプリについてちょっと語ろうと思います。
Rubyistとは
iOSで動くRubyの開発環境です。現在(2020/12/1時点)はベータ版となっており、TestFlight経由で配布されています。
できること
Rubyのコードを書いて実行できます。内部でmrubyを使用しているため若干の制限がありますが、一般的な用途で困ることはないと思います。
さらにiOSのショートカットとの連携も可能で、ショートカットからRubyのコードを実行できます。
API
mrubyの標準ライブラリに加え、Rubyist独自のAPIも実装されています。以下にその一部を紹介します。
Browser
設定されているデフォルトブラウザで、指定されたURLを開きます。
Clipboard
クリップボードにアクセスできます。
Device
デバイスについての情報を取得できます。バッテリー情報やシステム情報などが取得できるようです。
個人的には、デバイスがどの向きで置かれているかを取得できるのが好きです。
HttpRequest
HTTPリクエストを送ることができます。
あとがき
以前はRubyPicoというアプリを利用していたのですが、AppStoreから姿を消してしまったのでまたこのようなアプリが開発されているのはとても嬉しいです。将来的にはmrbgemsのインストールやAPIの実装を進めていくとのことなので、楽しみにしています。
ところで、私の愛用するiPhone SE(Gen 1)はそろそろサポートが切られるそうです。次は何にしようか、、、
補遺1
ちょっとだけRubyistをいじった記録を残しておきます。
Kernel#open
を使ったファイルの書き込み・読み込みは可能だった。TCPServer
を使ってサーバは建てられなかった。(IO#popen
のエラーが発生する)- →v1.0(11)で
uninitialized constant TCPServer
のエラーに変わった
- →v1.0(11)で