サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
インタビュー
backport.net
Flutterでアプリ全体の配色を変えたいときに手っ取り早いのはThemeDataのprimarySwatchを変える方法です。 Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.lightBlue, ), home: MyHomePage(title: 'Flutter Demo Home Page'), ); } これでlightBlueを基調とした配色になります。FlutterはMaterial Designに準拠しているので Material Designのcolor system に合わせて細かく設定することもできますが、とりあえずの雰囲気を変えたかったらprimarySwatch だけで十分
Windows10にDockerの環境を作りたかったのですが、Docker for WindowsはHomeエディションでは動かせないし、Docker ToolboxはVirtualBoxを使うので起動が遅い。以前にVagrantを使って環境作ったこともありますが、今となってはDocker Toolboxの下位互換的な感じがします。 ということで第三の選択肢であるDocker on WSLを試してみました。 ネットを見たら書いてあることがまちまちで混乱。紐といてみた感じ、 もともとはWSLでDockerは動かなかった(恐らく)Windows 10 1803 (April 2018 Update) でWSLがバージョンアップしてDockerが動くようになったDocker 17.09.1 でマウントに MS_SLAVE を使うようになったが、これにWSLが対応していなかったWindows 10
画像加工なら大抵のことができるImageMagick。余白除去もできるんです。 使うオプションは2つだけ。コマンド体系が複雑かつ難解なImageMagickにしては黒魔術感薄めですね。 trim: 余白を除去するfuzz: ノイズに対する感度を指定する(100%に近づくほどノイズを背景と同一視 しやすくなる)fuzzがキモです。やってみましょう。 $ convert --version Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC Features: OpenMP $ convert pizza_01.jpg -trim pizza_01_trim.jpg 画像の境界線を分かりやす
Android8以下で問題なく通信できていたアプリがAndroid9になった途端に通信NGに失敗する、という問題に直面。Android 9.0 (Pie) の仕様変更が原因でした。 何が変わった?Android 9.0では暗号化されていない接続はデフォルトで無効になります。iOSの ATS (App Transport Security) と同じような考え方ですね。 ちなみに、暗号化されていない接続を「クリアテキスト接続」と呼ぶようです。「平文」と同義ととらえればよさそう。 望ましい対応全ての通信をTransport Layer Security (TLS) に対応するのがベストプラクティス。一般的なアプリだとHTTPを使わずHTTPSにすればOK。Socketとかを使っている場合はそちらもケアしましょう。 (好ましくはないが手軽な)代替案AndroidManifest.xmlのappli
Re:VIEWで書いた原稿のクオリティを多少なりとも上げるため、textlintでチェックする環境を整えてみたので備忘録を。 textlintはテキスト向けのlintツール。自然言語に対してルールに基づいた機械的な文章チェックを行えます。 nodeで動くデフォルトではルールがひとつも組み込まれておらず、用途に応じてルールを選ぶ(もしくは作る)スタイル日本語専用ではないが、作者が日本人なこともあってか日本語向けのルールが充実しているといったあたりが特徴。 作者が書かれている解説記事を読むと網羅的な概要を把握できます。 textlintで日本語の文章をチェックする | Web Scratchそれでは環境を構築してみます。今回はWSL上のUbuntuで検証しましたが、WindowsやMacでもだいたい同じ流れになるはず。 textlintをインストール。 $ cat /etc/os-releas
Asciidoctor PDFの表紙をあれこれ弄ってみた記録です。 その1:標準レイアウトまずは標準レイアウトで出力してみましょう。 = Asciidoctor PDFにおける表紙生成サンプル: 標準レイアウト :author: 田中 太郎 :revdate: 2018/12/8 :revnumber: 1.0 :lang: ja :doctype: book こんな感じの表紙が生成されます。特に凝っていないドキュメントならこれで十分。 サンプル1 標準レイアウト (PDFを開く) その2:表記のカスタマイズまずは簡単なところから。アトリビュートを変更することでいくつかの表記をカスタマイズできます。 = Asciidoctor PDFにおける表紙生成サンプル: 表記のカスタマイズ :author: 田中 太郎 :revdate: 2018年12月8日 :revnumber: 1.0版 :l
ここ数日バタバタと対応していたGoogle Playのプライバシーポリシー対応が一段落したので経緯をまとめてみました。 発端Googleから警告のメールを受け取りました。7日以内に対応しないとGoogle Playからアプリを消すよ、という警告です。警告理由と対応方針についてメールに記載されているポイントを引用すると 警告の理由: Android 広告 ID の使用ポリシー及び Google Play デベロッパー販売 / 配布契約 4.8 への違反 お客様のアプリは Android 広告 ID の収集及び転送を行うことが確認されましたので、プライバシーポリシーを掲載して頂く必要があります。 また、お客様のアプリから個人情報や機密情報に関するアクセス権限リクエストを削除していただくことで、今回の警告を回避することも可能です。 とのこと。 Twitterを覗いてみたら不意打ちに近い受け止め方
Android8.0で導入されたAdaptive Icon。 とりあえず対応するには何をすればいいのかがイマイチはっきりしないので実際に試してみました。 (2018/6/16 追記 ここから) Android Studioを使ってもっと簡単に対応する方法を記事にしました。 Android StudioでAdaptive Iconを作る | backport(2018/6/16 追記 ここまで) まずはAndroid 7.0での表示。いままで通りですね。 Android 7.0 - API level 25 次にAndroid 8.0。これまた今まで通り。API level 25以下でbuildしたapkは旧来通りの表示になるようです。 Android 8.0 - API level 25 API levelを26に上げてapkを作り直してみます。なんか変な表示になりました。 Android
今後も夏(8月ごろ)と冬(12月ごろ)の年2回バージョンが上がると推測されます。このサイクルを踏まえてアプリ側の対応を考えるのが基本です。 targetSdkVersion を変えるとどうなる?targetSdkVersion について、<uses-sdk> | Android Developersから抜粋します。 Android は新しいバージョンのリリースに伴って進化しているため、一部の動作や、ときには外観まで変更されることがあります。 しかしプラットフォームの API レベルがアプリで宣言した targetSdkVersion よりも高い場合、システムは互換動作を有効にして、アプリが引き続き想定どおりに動作できるようにします。 これだけだとよくワカランのでもうちょっと整理してみましょう。 例えば、targetSdkVersionが25だと仮定すると 端末のOSがAndroid 7.1
<ul> {{ range $name, $items := .Site.Taxonomies.archives }} <li><a href="{{ $.Site.BaseURL }}archives/{{ $name | urlize | lower }}">{{ $name }} ({{ .Count }})</a></li> {{ end }} </ul> あとは各記事のFront Matterにarchivesを定義するだけ。 2017/09のようにスラッシュ区切りで名前をつけるといい感じにディレクトリを作ってくれます。 なので、月別じゃなくて年別で作りたかったらarchivesを2017とかにすればOK。月別も年別も、ということなら両方定義すればいけるはずです。 +++ date = "2017-09-08T22:13:57+09:00" slug = "hugo_monthl
Androidアプリ開発にオープンソースライブラリは欠かせません。そして、たいていのオープンソースライセンスはクレジット表示が必須です。AndroidアプリだとAbout画面やヘルプあたりに表示するのが一般的でしょうか。 必須とは言えアプリのキモではないのであまり手をかけたくないところでもあります。そんなときにはLicensesDialogがおススメ。クレジット表示のダイアログを簡単に作れるライブラリです。 シンプルにクレジットを表示するだけならとっても簡単。 Notices notices = new Notices(); notices.addNotice(new Notice(”foo library”, ”https://www.example.com”, "Copyright 2016 Jane Doe", new ApacheSoftwareLicense20())); not
備忘のためのメモエントリー。 React.jsのonClickに引数を渡したいときはdata属性が使えます。 呼び出す側。
頑張ればスクレイピングできるんでしょうけどまずは正攻法で。Product Advertising APIを使います。 Amazon Product Advertising API関連リンク集 - Qiitaあたりを参考にアカウントを作っておいてください。 Product Advertising APIはいろんな言語向けのラッパーライブラリがあるので素直に力を借りるのが吉かと思います。 今回はPHPとapai-ioの組み合わせでやってみましょう。apai-ioはcomposerを使ってインストールします。 [vagrant@localhost amazon]$ ls -l total 1 -rwxrwxrwx. 1 vagrant vagrant 58 Dec 5 13:04 composer.json [vagrant@localhost amazon]$ cat composer.jso
HugoにはShortcodesという独自のsnippetを作る機能があります。 Markdownに独自タグを追加できるような感じですね。 TwitterやYouTube、GitHub gistsあたりが組み込みで用意されているだけでなく、独自のShortcodesを作ることもできます。 今回はAmazonの商品紹介をするShortcodesを作ってみました。 layouts\shortcodesの中にamazon_shortcodes.htmlという名前でファイルを配置しておきます。ソースコードは長くなるので後述。 あとはmarkdownの中に といった風に表示されます。 ShortcodesはHTMLにGo Template Primerを組み合わせて書きます。自分はGoに馴染みがないのでTemplateの書き方に面喰いましたが、見よう見まねでなんとかなるレベルです。 また、Hugoに
このページを最初にブックマークしてみませんか?
『backport.net』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く