酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

開発

In-Houseバイナリに変更した途端プッシュ通知が送れなくなったので問題を切り分けた

諸事情があって、Apple Developer ProgramなアカウントAで作成していたAd-Hocアプリを、Apple Developer Enterprise ProgramなアカウントBで作り直すことになりました*1。 作り直すといっても署名関係だけの問題で、すんなりとProvisioning Profileを変えて …

Google Play Consoleでapkファイルをアップロードしたらエラーが発生した

Google Play用のアカウントが2つあって(仮にアカウントAとアカウントBとする)、いつもはアカウントBの方でAndroidアプリを公開していました。諸事情があってアカウントAの方に統合したいということになり、現在開発中のアプリをアカウントAで公開することに…

AndroidでButtonに勝手に影が入ってしまう

SDKレベルを25から27に上げた影響か今まで気付いていなかっただけか、AndroidアプリのButtonに影(shadow)が入ってしまうようになりました。今まで問題なかったのにどうして……

UIImageViewやUIButtonのbackgroundImageに特定の画像を設定するとなぜか間延びして表示されていた

特定の画像をUIImageViewやUIButtonで表示させると一部分を伸ばして表示したような……9patchみたいな表示がされていた。Images.xcassetsから特定の画像を削除して、再度追加したところ問題は発生しなくなった。 gitで差分を確認するとImages.xcassets/button_…

pythonでIPHubを使って接続元が悪意のあるユーザーかどうか判断する

アクセスしてきた相手をIPアドレスから信用してよいのかどうかを調べるためのWebサービス「IPHub」をpythonから実行してみました。 freeプランで2000リクエスト/日まで利用することができます。登録をするとメールが届くのでvalicationリンクをクリックする…

python3でSQLiteをoratorを使って操作する

pythonからSQLiteを操作するスクリプトを考えたのですが「SQL文書きたくないなぁ……」と躊躇していたところ、pythonには「orator」というO/Rマッパーがあることを知って実際に使ってみました。 python3でSQLiteをoratorを使って操作する pythonのスクリプトは…

tipbotが使っている機能をbitcoin-cliを使って再現するにはどうしたらいいんだろう?

仮想通貨(暗号通貨)をTwitterとかDiscordで@tipmona tip @ch3cooh 393や./tip sakusan 393のように投げ銭の仲介役をするBotを総じてtipbot(ちっぷぼっと)と呼びます。 tipbotを作るためにはどうしたらいいんだろう? 「tipbotってどうやって作っているんだろ…

macOS向けのQt製アプリを配布する

たまたまmacOS向けのアプリをビルドする機会がありました。ビルドしたマシンでは問題なく動いていたのですが、別のマシンで動かそうとしたところエラーがでてしまいました。 macOS向けのQt製アプリを配布できる状態にするまでのやり方を書きました。 Qtアプ…

Pheromona利用規約

Privacy policy of this app is written in Japanese . プライバシーポリシーについて これは本アプリケーションを利用されるユーザーのためのプライバシーポリシーです。本アプリケーションは、ユーザーのプライバシーを尊重し、ユーザーの個人情報およびア…

iOSでジオフェンス機能を実装する

「目的地に近づいたよー」的なことができるのがジオフェンス機能です。アプリを閉じていても反応するのでとても便利と聞いたので実装してみました。 LocationManagerで位置情報を取得する ジオフェンス機能を実装する コード アプリが起動していなくても処理…

2018/03/12 平成29年の確定申告を倒した

今朝はJenkinsの手入れをしていた。Mac Miniをビルドマシンにしているのでストレージにあまり余裕がなくて定期的にバイナリや中間データを削除する必要があります。近いうちに時間を取ってUSBメモリ上にバイナリを保存するようにしたい。 午後からは資料の作…

2018/03/10 つつじヶ丘まで散歩した

最近、仕事をしてるとあっという間に18時になってドッと疲れが出てしまい、しばらく休憩してからは夕飯を作ったりなんやらしていると1日が終わってしまう。 疲れているのもあってあまり家にから外に出ていない。もう少し運動をしないといけないのはわかって…

Google Home Miniを買いました

先日半額になっていたGoogle Home Miniを買いました。設定が面倒くさかったのでしばらく箱に入れっぱなしにしていましたが、嫁にスマートスピーカーを使ってもらいたかったので、自室(仕事部屋)にGoogle Home Miniを置いて、ダイニングにAmazon Echo Dotを置…

Flutterでプロジェクトを作成する

前回、インストールする方法を書きました。本記事ではFlutterでプロジェクトを作成します。 空プロジェクトを作成する flutter create -i swift --org jp.ch3cooh ~/Desktop/hoge $ flutter create -i swift --org jp.ch3cooh ~/Desktop/hoge Creating proje…

(未解決)UINavigationBarで大きなタイトルを使っている時にスクロールさせると稀に画面タッチができなくなる問題

iOS 11から大きなタイトルが使えるようになりました。 UINavigationBarの大きなタイトルを使っている時に、UITableViewをスクロールさせると稀に画面タッチができなくなる問題が発生しています。発生確率はかなり低くて何が原因で発生するのかがわかっていま…

FlutterをmacOSにインストールする

最近Flutterが盛り上がっているらしいので、Flutterをみようと思う。 Flutter情報出てきたのでなんかアプリ作ろうかな— さくさん (@ch3cooh) 2018年3月2日 あらすじ 個人的にはTitaniumのように一瞬盛り上がって、Titaniumすげー!と言ってた人たちが後続の…

UIViewControllerを使っている場合にUINavigationBarの大きいタイトルが小さくならない/追従しない

久しぶりにiOSネタを投稿するような気がします。iOS 11からUINavigationBarに大きいタイトルが追加されました。 テーブルビューをスクロールさせた時に自動的に小さいタイトルに切り替わって欲しいので、largeTitleDisplayModeに.automaticを設定しています…

コードを書かずにJSONを出力するAPIモックを構築できるJSON Serverを試してみた

簡単にAPIモックが作れるJSON Serverを試してみました。 github.com JSON Serverは「30秒で構築できてコードを書かずにfull REST APIを提供する」を謳い文句にしています。実際にJSONを出力させるのはとても簡単でしたので、JSON Serverの導入と実際にJSONを…

UITabBarでタブの文字を消して画像だけを表示したい

久しぶりに汎用的なネタが書けそうです。本記事ではUITabBarのUITabBarItemの文字を消して画像だけを表示する方法を紹介します。 UITabBarで文字を消して画像だけを表示したい デザインガイドラインでは、通常タブバーはアイコンと項目名とをセットにして扱…

Amazon Echo Dotが届いたので設定しました

Amazon Echo Dotが届きましたので、早速開けてみました。 日本では貴重なAmazon Echoシリーズ 本国アメリカでは吊られて売られていたり、大きなカゴに入れて投げ売りされているらしいのですが、日本では貴重なAmazon Echo Dotです。 12月の頭くらいにAmazon …

SHNDコインの現在価格を見ることができるサイト「SHND2JPY」を作りました💪

1万円で1億コイン買えると言われている仮想通貨「StrongHand(SHND、通称:筋肉コイン)」を買いました。ストロングコインって呼ばれていたりもしますね。 何も考えずにネタで買ったのですが、次の日に起きたら価格が5倍になっていて驚きました。どのあたり…

Python3でXPコインの現在価格を取得するSlackbotを作る

本記事ではPython3でXPコインの現在価格を取得するSlackbotを作る方法を紹介します。 これまで社内連絡用にGitterを使っていましたが、Slackに移行するので諸々の処理にbotを使いたいと考えています。ただPython自体がいまいちわかっておらず、少しずつコー…

Python3でSlackbotを作る(準備編)

Slackで動くbotが欲しくなったので、先人たちの知恵をお借りしてPython3でslackbotを作りました。とりあえずはキーワードに対して返事をする程度の基礎部分を実装した感じとなります。 Python3でSlackbotを作る 環境 実行環境はmacOS High Sierraを想定。Hom…

Homebrewを使ってAnsibleをインストールしようとしたら`Error: Your Xcode (9.0) is outdated.`とエラーが発生した

Homebrewを使ってAnsibleをインストールしようとしたらエラーが発生したので解決方法を備忘録として残しておきます。 環境について macOS High Sieera (10.13.1) Homebrew 1.4.0 Ansibleのインストールに失敗する ビルドサーバーに異なるバージョンのXcodeを…

Android Studio 3.0にしてからエミュレータでのアプリ実行ができなくなった[解決済み]

Android Studio 3.0にしてからエミュレータでのアプリ実行ができなる自体に陥りました。過去の設定ファイル等が悪影響を及ぼしているのではないかと疑って試行錯誤していました。 本件は既に解決しております。 結論から書くと、プロジェクトの設定の「Deplo…

iOSでCIFilterを使ってバーコードを生成する

iOS/AndroidアプリでCode128のバーコードを生成する必要がでてきました。iOS 8.0くらいから標準APIだけで二次元コードの読み取りと生成ができるようになっていたようです。 昔からバーコード生成といえばZXingみたいなところがありましたよね。遡って調べて…

ポケモンのお見合い画面を画像解析して選出予想をしたい(1)

ここ最近、ポケモンのシングルレートをやっているのですが負けが続いています。 気晴らしではないのですが、バトル開始前のお見合い画面(選出画面)で相手が見せてきたポケモンをカメラで撮影して簡単に一覧化できないか試してみました。ポケモンの特定までは…

iOS向けAd-Hocビルドバイナリを「インストールできない」と言われた時の対処方法

僕の頭の中でいつも悩むことを明文化してみました。まだ体系化できていないし検証が必要なものも多いです。不足があったり対処方法が間違っているかもしれませんので、その時は教えてくださると嬉しいです。 そもそもUDIDが間違っているかもしれないケース U…

Ad-Hocビルド時に連続したFで始まっているUDIDを貰ったときに気をつけたいこと

久しぶりにXcodeビルドマンとして活動していました。 少し前までは、In-Houseなバイナリばかりビルドしていたので特に意識していなかったのですが、最近Ad-Hocなバイナリをビルドする機会が増えてきました。色んな方のUDIDを頂いてApple Developer Centerに…

Xcode 9 GM SeedでJenkinsのビルドに失敗する

Xcode 9 GM SeedでIn-HouseなアプリをJenkinsでビルドさせるときにエラーが発生しました。 Xcode 9 GM SeedでJenkinsのビルドに失敗するようになってしまった Jenkinsのコンソールログを見ると、Archiveには成功しているけれどExportに失敗しているログでし…