アプリなどを開発するブログ

React Native / Swift / Ruby on Railsなどの学習メモ。


Rails プロジェクト が GitHub Actions で実行失敗する場合の対処

先日まで動いていたRailsプロジェクトのCI (GitHub Actionsで構築) で、rails関連コマンドが失敗している事に気がついた。 Run ./bin/rails db:reset rails aborted! LoadError: libffi.so.6: cannot open shared object file: No such file or directory - …

AWSでスイッチロールを設定する

スイッチ先でロールを作成する https://console.aws.amazon.com/iam/home#/roles$new?step=type&roleType=crossAccount このURLに飛ぶと以下の画面に遷移するので、遷移元のAWS アカウントIDを入力する。 割り当てたい権限を選択して次へ。 次の画面でタグを…

DynamoDBのオンデマンドモードとプロビジョニングモードの料金損得分岐点

DynamoDBのオンデマンドモードとプロビジョニングモード、どういう条件だとどっちがお得なのか。 自分で計算するのめんどいなーと思ってたらclass methodさんがやってくれた。 dev.classmethod.jp ReadとWriteのそれぞれの操作に関してはそれぞれプロビジョ…

お試し価格をAppStoreConnectから登録する手順

iOS 定期購読課金のお試し価格について調べた

一旦リンクのまとめだけ 実装について https://developer.apple.com/jp/documentation/storekit/in-app_purchase/implementing_introductory_offers_in_your_app/ Apple公式の自動更新サブスクリプションの説明ページ https://developer.apple.com/jp/app-st…

App Store ConnectでiOS Appの有効なバンドルIDがありません。 こちらからご登録ください。

iOSアプリをApp Store Connectから公開しようとした所、 iOS Appの有効なバンドルIDがありません。 こちらからご登録ください。 と表示が出てしまう事象が発生した。 バンドルIDはDeveloper Portalで作成しているのにも関わらず、だ。 ブラウザのキャッシュ…

react-native 0.60系にアップグレードする

0.5X系から 0.60系にアップグレードするのはなかなか大変な作業である。 大きな変更点としては autolinking Android X cocoapodsがデフォルト ちなみにこの記事書いてる時点で早くも0.61のRCが来ている。早い。 作業手順忘れそうなのでメモ。 Upgrade Helper…

Apple Developerプログラムのsigning certificateについての公式のまとめページ

Apple Developerプログラムのsigning certificateについての公式のまとめページです。 いつもよくわからなくなってググるのですが、公式の説明ページが一番分かりやすかった。。 忘れないようにメモです。 https://help.apple.com/xcode/mac/current/#/dev3a…

GastbyJSでGoogle Fontsやセルフホステッドフォントを使う

Google FontsやTypeKitはプラグインがサクッとやってくれる。 www.gatsbyjs.org しかし自分で用意したフォントを導入するのはなかなか入れるのに手こずった。 自分用にメモ。 $ yarn add gatsby-plugin-web-font-loader gatsby-config.js { resolve: 'gatsby…

Apache 2.0 License の ボーントラッキングライブラリ Open Pose Plus

センサー無し、画像のみで骨格や顔、手のトラッキングができる Open Pose。 しかし商用利用は$25,000 / 年 と高い。 しかし、調べているうちにOpen Pose Plus というライブラリがApache 2.0で公開されているのを見つけた。 github.com まだ動作確認などでき…

Firebase + iOSでCrashlyticsのクラッシュレポートが送信されない場合

iPhoneアプリにCrashlytics入れてたら、consoleでクラッシュが反映されなかったのでメモ。 公式ドキュメントのように、一度デバッガーからのアプリの実行を止め、 ホーム画面からアプリを起動してクラッシュさせると、意図通りレポートが送信される。 Fireba…

Macで自分のipアドレスを調べる

WiFi利用の際のIPアドレスはとりあえずこのコマンドで表示される。 $ ipconfig getifaddr en0 Macではen0 (イーサネット0の略)というインターフェイスがWiFiに割り当てられているので、このコマンド一発で表示される。 ネットワークサービスの一覧を表示 $ n…

Android Studio を立ち上げずにAVDエミュレーターをローンチする

以前は重くて使い物にならないと感じていたAVD。 開発のときはもっぱらGenyMotionを使用していた。 しかし、最近はAVDの方が動作が軽い! ので、AVDを使いたいが、FlutterやReact Nativeで開発している時にいちいちAndroid Studio を立ち上げるのが面倒。 以…

macOSで有線ネットワーク一覧を取得する

System Preferences の NSUserDefaults にplistとして保存されている。 defaults シェルコマンド か NSTask 経由で取得可能。 $ defaults read /Library/Preferences/SystemConfiguration/com.apple.airport.preferences | grep SSIDString 参考 stackoverfl…

atomでrubyの文字列をシンボルに置換する

プログラム上でシンボライズするって話じゃなくて、 ソースコード上で文字列になってるのを一括置換で 文字列 => シンボルにするメモ。 Atomの検索 / 置換は正規表現が使えるので以下が可能。 Replace AllすればOK。

プロダクションのWordPressをローカルにDockerで再現する[調査中メモ]

WordPressって別に詳しくないしあまり好きではない。 できるだけ触りたくないんだけど、男には長い人生においてWordPressを触らないといけない事象がしばし発生する。 今まさにやってて、うまくいかなかったんだけど、とりあえずメモを残しておく。 いいやり…

ubuntuの勉強メモ

$ #ユーザーを作成 $ adduser <ユーザー名> $ # sudo グループに追加 $ gpasswd -a <ユーザー名> sudo $ ユーザー切り替え $ su - <ユーザー名> $ ユーザー切り替え (PATHなどの環境変数を引き継がない) $ su <ユーザー名>

Kindleでamazon.com (co.jpではなく) に接続される時の対処法

Kindle for Macを利用してKindle本を読もうとしたら、 購入した本がKindleサーバーから同期されず、全然ダウンロードされません。 何でやろ、と思ったら、どうやら日本のAmazon (amazon.co.jp) サーバーではなく、USのamazon.com サーバーにつなぎに行ってる…

AWS EC2 + ubuntu + nginx でサーバー立ち上げてみる

サーバーの種別を整理 Webサーバー 静的コンテンツを返すサーバー。 例 nginx apache nginxはいろんなクライアントにつながっている状態をさばくのが得意。 今回はnginxを使用する。 アプリケーションサーバー 動的コンテンツを返すサーバー。 例 unicorn pu…

AndroidのcompileSdkVersion, targetSdkVersion, minSdkVersion とは何かをざっくり

こちらのブログに分かりやすい説明があったのでメモ。 backport.net compileSdkVersion コンパイル時に使うAndroid SDKのバージョン 変更してもアプリの動作は変化しない SDK ManagerでそのバージョンのSDK Platformがインストールされている必要あり target…

PSequel.app でcsv export

Macで Postgresql を使うとき、レコードのviewerとして PSequel.app を使ってます。 csvにカジュアルに書き出したいときにちょっと迷ったのでメモ。 PSequelでcsv書き出す手順 ① レコードを全て選択する ② 右クリックして「Export as CSV」を選択 ③ 新規ファ…

docker コマンド チートシート

自分用メモです。 コンテナ系 コンテナ一覧を表示 # 起動中のコンテナのみ $ docker ps # 停止中のコンテナも含む $ docker ps -a # コンテナIDだけ列挙 $ docker ps -q コンテナを起動 $ docker start <コンテナID or NAME> コンテナを停止 $ docker stop <…

Unityでの設計について考える

Unityでコーディングしてると、依存性解決のためにUnityのGUIエディタつかって手動でポチポチしたり、 シングルトンパターンが多発するみたいなことありがち。 あとScene初期化のたびにFindObjectでシーン上のGameObject探してきたりとか、 バグが混入しそう…

gitでリモートのブランチをローカルに持ってくる

git でリモートの他の人のブランチを持ってきて作業したい時ってありますよね。 今まで自分はこれやりたい時、ネットで検索して出てきた以下のコマンドでやってました。 $ git fetch $ git checkout -b branch_name origin/branch_name しかし、こんな長った…

【iOS】フェードで切り替わるContainer ViewController メモ

iOS (or macOS) でアプリを作る際、ログイン中なら普通の画面、未ログインの場合はログイン画面を表示、という処理は頻発すると思います。 モーダルでログイン画面を出すという方法もありますが、色々面倒なのでApple公式で「Container View Controller」と…

App Kitで自動フルスクリーン

NSWindowのtoggleFullScreenメソッドを使う。 import Cocoa class ViewController: NSViewController { override func viewDidLoad() { super.viewDidLoad() } override func viewDidAppear() { super.viewDidAppear() view.window?.collectionBehavior = NS…

App Kit でバッテリーの状態を取得

WWDC 2018でiOS アプリをMacに移行できるようにする方針が発表されました。 Apple は AppKitをUIKitっぽく作り直して発表するはず、という噂はかなり前から囁かれていましたが、 UIKitがMacOSでも動くようにしてる、という理解が正しそうです。 おそらく、UI…

reduxのreselectについて調べた

reselectは主にreduxで利用される、計算結果のメモ化を担うライブラリ。 とはいえreduxに依存しているわけではないので、単体でも使える。 github.com 使い方はざっくりこんな感じ。 createSelector 関数で、メモ化selectorをつくる。 input-selectors の値…

iOS マルチディスプレイ Swift 4

iOSでマルチディスプレイする際のコードをswiftで書き直してみたメモ。 // 複数 window 対応 private func checkForExistingScreenAndInitializeIfPresent() { if UIScreen.screens.count > 1 { // 外付けディスプレイを表す画面オブジェクトを取得…

Unable to resolve module 'events' from /node_modules: Module does not exist in Haste module map

FeedMe とか xml2js とかをtypescript + React Native で使おうとしたら出たエラー。 解決方法は以下のライブラリを追加することだそうです。 npm install events buffer stream timers --save github.com