投稿

7月, 2019の投稿を表示しています

Flutter + Firebaseでアプリ開発のチュートリアル

FlutterとFirebaseを使う方針が立ったので、具体的なアプリ開発に向けてFlutterを勉強しているときの覚書。

環境: Windows 10 Pro 64bit 1903, Flutter SDK v1.7.8, Android Studio 3.4.2

下記のチュートリアルを進める。
Write Your First Flutter App, part 1 | Google CodelabsWrite Your First Flutter App, part 2 | Google CodelabsFirebase for Flutter | Google Codelabs
感想など
昔は一文字変えるだけでもビルドし直していたので、ホットリロードは感動する。アプリ開発がウェブ開発と同じくらいやりやすくなってきた。Dart言語もJavaScriptに似ているので全く気にならない。「全てがWidget」の考え方が分かってきた。

あとは必要なときにGitHubにあるサンプルをみれば大丈夫そう。
firebase/quickstart-android: Firebase Quickstart Samples for Android | GitHub


【関連記事】
Firebaseを理解するためにウェブチャットのサンプルを試すFlutterでアプリ開発。サンプルアプリを試す

Googleマイビジネスで追加した写真が反映されない

Googleマイビジネス(GMB)に登録した写真がGoogle検索しても表示されないので調査したときの覚書。

サポートに問い合わせすれば対応してくれるらしい。
ビジネスオーナーが登録した写真が2週間たっても反映されない - Google 広告主コミュニティ

サポートに問い合わせする方法
Googleマイビジネスの管理画面の左メニューにある「サポート」「ご不明な点がある場合」「ビジネス情報と編集」「住所を変更する」「メールサポート」

追加可能な写真の仕様
複数のビジネス情報に写真を追加する - Google マイビジネス ヘルプ
写真は JPG、GIF、PNG、TIFF、BMP のいずれかの形式にしてください。各写真のサイズは 5 MB 未満としてください。追加する写真は 720×720 ピクセル以上、3,000×3,000 ピクセル以下にすることをおすすめします。写真の長い方の長さが、短い方の長さの 2 倍を超えないようにする必要があります。Google のサービスでは縦長の写真よりも横長の写真の使用をおすすめします。1 つのビジネス情報に登録できる追加の写真は 25 枚までです。ピントの合った十分に明るい写真を使用します。Photoshop などの画像編集ソフトによる加工や、過度のフィルタ使用は避けてください。画像は現実に則している必要があります。
引用元:ビジネス情報一括処理時の写真についてのガイドライン - Google マイビジネス ヘルプ

追加した写真はPhotoshopで明るさなど調整しているけど、傷を消したりなどの加工はしていない(撮影するときに現場でキレイに見せるための努力はしている)。
あと、一眼レフ+広角レンズで撮影しているので、スマホでは撮れない絵にはなっている。


またサポートから返信があったら追記予定。
(2019/07/30追記)3日後サポートから「反映処理を行いました」と返信あり。


Googleマイビジネスの概要はさいたま起業家協議会で書いたコラムを参考に。
最低限知っておくべきSEO対策:「Googleマイビジネス」編 | さいたま起業家協議会

【関連記事】
Googleマイビジネスの「更新内容の確認」が消えない

Firebaseを理解するためにウェブチャットのサンプルを試す

Flutterを使ったアプリ開発のバックエンドとしてFirebaseを検討しているときの覚書。

環境: Windows 10 64bit

チュートリアルに従って単純なチャットアプリを試してみる。
Codelabsにチュートリアルがまとまっている。
Google Codelabs

個人的にウェブが得意なので、今回はこちらのチュートリアルを進める
Firebase Web Codelab

チュートリアルが分かりやすいので特に書くことはない。(笑)

「7. Set up user sign-in」のGoogleログインするときに下記エラー
Error: restricted_client
Application: Friendly Chat Web
You can email the developer of this application at:
This app is not yet configured to make OAuth requests. To do that, set up the app’s OAuth consent screen in the Google Cloud Console.このIssuesを参考にGoogle Cloud Platform(GCP)のFirebase用に作ったプロジェクトを選択、
APIとサービス→認証情報
を開いて、OAuth同意画面のロゴにpublic\images\にあるfirebase-logo.pngを指定(何でもいい)で保存。
これで動いた。


「11. Show notifications」では下記エラーでdevice tokenを取得できなかった。
Unable to get messaging token. FirebaseError: Messaging: We are unable to register the default service worker. Failed to register a ServiceWorker: A bad HTTP response code (404) was received when fetching the script. (messaging/failed-serviceworker-registration). localhostでhttpsの環境で…

ミラーレス一眼カメラ「Nikon Z6」を購入。開封後の感想。

今まで仕事でもNikon D5500を使ってきたけど、一つ上のステップに進もうとZ6を買ったときの覚書。

D850、Z7、Z6で迷っていた。


ニコンZ6にした理由
瞳オートフォーカスが仕事で役に立ちそう無音撮影がしたい。「カシャカシャ」が気になるお客様が多いフルサイズにしては軽いSnapBridgeでスマホ転送が便利そう評判がいいZ7の間に10万円分の機能差はなさそう

買ったのはFTZマウントアダプターキット: 238,200円
価格.com - ニコン Z 6 FTZ マウントアダプターキット 価格比較

その他買ったのは
替えバッテリーXQDメモリーカード 64GBXQDアダプター

レンズは前に持っていたものを使う。
AF-S NIKKOR 35mm f/1.8G ED - 概要 | NIKKORレンズ | ニコンイメージングAF-S DX NIKKOR 10-24mm f/3.5-4.5G ED - 概要 | NIKKORレンズ | ニコンイメージング

持ってみると意外にずっしりくるので、重量を比較してみた(バッテリー、メモリーカード込み)。
D6 + FTZ: 810g(675g + 135g)
D5500: 470g

プラス340gでもD5500に慣れていると重く感じる。
D5500は右手だけで持っていても全然疲れない。
でもZ6は持っていると疲れるので、どこかに置きたくなる。
「軽さは正義」を実感。

ちなみに現場ではネックストラップを付けずに
Nikon FLX スリングバッグ + Peak Design キャプチャー v2で機動力を発揮するのが自分にあっている。


まだZ6を仕事で使ってないので、しっかり使いこなしていきたい。


【関連記事】
一眼レフカメラデビュー。「ニコン D5500」を買った

アプリ開発プラットフォームFlutterをMacにインストール

FlutterをWindowsにインストールすることは成功したので、iOS開発用に古いMac mini(Mid 2010)でも可能か試したときの覚書。

環境: macOS High Sierra 10.13.6, Flutter SDK v1.5.4, Android Studio 3.4.1, Xcode 10.1

公式サイトを参考に。
MacOS install  - Flutter
以下はWindowsからTeraTermで操作している。

SDKインストール SDKをダウンロードして展開
$ cd Downloads/
$ curl -O https://storage.googleapis.com/flutter_infra/releases/stable/macos/flutter_macos_v1.5.4-hotfix.2-stable.zip
$ unzip flutter_macos_v1.5.4-hotfix.2-stable.zip

ApplicationsディレクトリへインストールしてPATHの設定
$ mv flutter /Applications/
$ less ~/.bash_profile

# Flutter
export PATH=$PATH:/Applications/flutter/bin
反映して開発用バイナリデータをダウンロード。確認
$ source ~/.bash_profile
$ flutter precache
$ flutter doctor

Warningになっているのをひとつずつ解決していく。

Android SDKの設定 Android Studioを最新にしてFlutterプラグインをインストール。
SDK ManagerからAndroid SDK 29をインストール。
Androidライセンスへ同意
$ flutter doctor --android-licenses

これでAndroid toolchainにチェックマークが付いた。

iOS開発の設定 flutter doctorに表示されているコマンドを実行
$ sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer

同じくbrewコマンドを実行していく
$ brew update
$ b…