2018年5月8日(現地時刻)に開催されたGoogle I/OのKeynoteからAndroid関係のトピックをお届けします。 ※現地通信環境が悪くて画像のアップロードは随時実施しています(一日ぐらいのんびり更新するのでお楽しみください) 5月8日16時51分(現地時刻):Developer Keynoteのまとめを更新しました! すべての機能に入るGoogle AI Androidの機能を紹介するまえに現在の技術的なトレンドについて理解しておく必要があります。2017年のGoogle I/OでもAI Firstとして提唱されたAIを活用した取り組みがベースとして存在しています。マシンラーニングをはじめとした画像処理技術の発展により 医療分野では医者の診断を手助けし、病気の早期発見に成果がでてきています。 また人々の生活に近いアクセシビリティ分野でも重なった音声も個人ごとに認識して複数の人
こんにちは。モバイル開発チームに所属している小島です。 めったにはありませんが、たまにOSのイベントからアプリが起動されたときのデバッグを行いたいことがあります。 例えば、プッシュを受けた時や、ディープリンクで起動したときの application:didFinishLaunchingWithOptions: や Application#onCreate の挙動などです。 iOS の場合 Xcode のメニューから 「Debug > Attach to Process > By Process Identifier (PID) or Name」を選択します。 「PID or Process Name」 の部分に開発中のアプリ名(プロセス名)を指定して、「Attach」ボタンを押します。 そうすると、Xcode は、アプリが未起動の場合はプロセスが起動するまでアタッチを待機してくれます。 な
前置き僕が所属しているソニックガーデンではRemottyというツールを自社で開発し、普段の業務に使っています。リモートワークをするためにオフィスと言ってもいいような場所で、業務中は常にオンラインとなり、リアルタイムチャット(対面の会話の代替)とトピックベースの掲示板(メールなど非同期コミュニケーションの代替)の両方を備えたオフィスとなるようなツールです。 https://www.remotty.net/オフィスにいられない間にもチャットや掲示板に反応できるように、iOSとandroidそれぞれにネイティブアプリのクライアントアプリがあり、それぞれを別の開発者が担当していました。iOS版はその当時新卒2年目だった若者が作ったものを僕が引き継ぐ形でメンテしていました。 もともと自社向けに開発していたプロダクトではありますが、働き方改革の流れなどの関係もあってここ1年〜2年ぐらいの間に有償で使っ
DroidKaigi 2018の2日目の17:40からRoom 2にて、「マルチログインの実装方法」というタイトルで登壇してきました。 スライド 概要 マルチログインの定義 複数アカウントで同時にログインできる機能 マルチログイン実装でよくある問題とその原因 別アカウントのデータが表示されてしまう グローバル変数や状態を持つシングルトン 別アカウントのデータを上書きしてしまう データや非同期処理がアカウント単位で管理されていないこと コードが複雑化してしまう 複数アカウントを扱えるアーキテクチャになっていないこと マルチログイン実装の設計方針 データや非同期処理をアカウント単位で管理する(アプリ内にアカウント毎のDockerコンテナを立ち上げるイメージ) 異なるライフタイムを持つインスタンス管理はDaggerなどのDIコンテナを使うと楽 サンプルアプリ 複数アカウントで同時ログイン可能なT
2018-03-27 プラットフォームをまたぎブレない仕様を実現するための、ネイティブアプリ開発施策 こんにちは、開発本部の高井です。オンライン診療アプリ「CLINICS」のアプリ開発を主に担当しています。 CLINICS では Web に加えて、iOS 版と Android 版の各プラットフォームの仕様変更や機能追加などをほぼ同時に開発しているのですが、担当する人数が増えたりすることで、仕様に差が出たり、その結果手戻りが起きるということも増え始めていました。 そうした課題を解決するために実践した様々な施策の中から、特に有効だった 3 つの改善策について、今日はご紹介します。 背景 CLINICS の開発チームでは 5 人ほどのエンジニアがタスク単位で全てのプラットフォームを実装したり、大きいタスクの場合はプラットフォーム毎に別の開発者が担当する形で開発しています。 そのような形で機能追加
現在の Android Developers の情報は非常に充実していて、Developer Guides を順に読み進んでいくだけで開発に必要な知識とGoogleが想定している(であろう)最も基本的な実装を学ぶことができる。 特にこの「基本的な実装」というものが重要で、これを知っておかないと開発者間の意思疎通がスムーズに行えなかったり、そもそも気をつけておくべき注意点を見落としがちになってしまう。 とはいえ、今の膨大な公式ドキュメントをただ読めというのは厳しいので、Android開発をする上で最低限理解しておいてほしい(と僕が思っている)事柄と、それについて知ることができるドキュメント類についてまとめてみることにする。 2018/03/25 : リリース周りについて別記事に追記した。 nein37.hatenablog.com 公式ドキュメントの重要ページ 公式ドキュメントと言った場合、
技術部モバイル基盤グループの宇津(@uzzu)です。 今年3月、クックパッドのAndroidアプリはこれまでサポートしていたクレジットカード、キャリア決済に加えて、Google Playアプリ内定期購入によるプレミアムサービス登録機能を追加しました。 Google Playのアプリ内定期購入機能は個人的に気に入っているので早速乗り換えました。 良い機会なので、この記事ではIn-app Billing version 3(以下IABv3)以降のアプリ内課金の実装を振り返りつつ、Google Play Billing Libraryの紹介も交えながら開発TIPSを紹介します。 TIPS1. Google Play Billing Libraryの採用 IABv3以降のアプリ内課金を実施するためには(ざっくりですが)以下のフローを実装する必要がありました。 ServiceConnection を
Flutter を実際にリリースしているプロダクトに採用してみて半年ほど経ったので、その経緯と Flutter についての感想を記しておきます。 The English version is on Medium! Flutter についてFlutter は、クロスプラットフォームでモバイルアプリを開発するための開発フレームワークです。 特徴- 言語は Dart - フルスタックのUI framework (Material and iOS) - Reactive (inspired by React) - Material and iOS - GPU を利用して UI を描画するところまで全て (Skia) - オープンソース on GitHub - developed by Google and community - ネイティブのARMコードにコンパイル - 開発用プラグイン - In
米Googleは2月27日(現地時間)、スペインのバルセロナで開催の「Mobile World Congress 2018」で、iOSおよびAndroidアプリ開発のためのSDK「Flutter」のβ版を公開したと発表した。無料でオープンソースのSDKを専用サイトからダウンロードできる。 GoogleはFlutterを「記録的短時間でiOSとAndroidの高品質なネイティブUIを構築するためのモバイルUIフレームワーク」と説明する。C/C++、GoogleのWebアプリ開発向新言語「Dart」、Googleの2Dレンダリングエンジン「Skia」で構築した。「Android Studio」、米Microsoftの「Visual Studio Code」、米Appleの「Swift」、チェコJetBrainsの「IntelliJ IDEA」をサポートした。 α版は昨年のGoogle I/Oで
こんにちは、フロントエンドエンジニアの権守です。 プログラミングをしていると頭を悩まされるものの1つにエラーハンドリングがあると思います。シンプルにできた実装に手を入れる必要が生じるなど、正直目を逸らしたくなることもあります。ですが、Androidアプリ開発を通して改めて考える機会があったので、そこで得られた知見を紹介しようと思います。 本記事では特に、エラー時にユーザーへどのようなフィードバックを返すかという点に注目して、それについての考えと取り入れている仕組みを紹介します。 Androidにおけるフィードバックのデザイン まず、エラー時のフィードバックにおいて、どのようなコンポーネントを使い分けているかについて説明します。 VASILYではAndroidアプリを開発する際にはMaterial Design Guidelinesにできるだけ準拠するように心がけています。エラー時のフィード
Androidアーキテクチャことはじめ ― 選定する意味と、MVP、Clean Architecture、MVVM、Fluxの特徴を理解する Androidアプリの開発において悩ましいアーキテクチャの選定。本記事では選定する意味を改めて整理し、 MVP・Clean Architecture・MVVM・Fluxといった最新の実例を紹介します。 はじめまして。Androidエンジニアの藤原聖(ふじわら・さとる/@satorufujiwara)です。 現在は株式会社サイバーエージェントで、エンジニアリングマネージャーを兼任しています。2017年で35歳になり、定年を迎えました(プログラマの定年については「体型を支える技術」などを参照)。 Androidアプリ開発には2010年から携わっていますが、今現在の関心事は何といっても公式開発言語に採用されたKotlin。そしてもう一つが、Androidの
これは Retty inc. Advent Calendar 2017 5日目の記事です.昨日は @shinichi-nakagawa-r の Webなエンジニアのための「Pythonデータラングリング」入門 でした. 始末 今年のはじめ,2月か3月くらいの頃のことです.Retty の Android 版に ReactNative を導入するかどうかが検討された時期がありました.プロトタイプの作成を経て導入の可否はある二人に委ねられることになりました.絶対に ReactNative 入れたいマンと絶対に ReactNative 入れたくないマンです.議論は当然のように平行線でした.双方の主張はそれぞれありましたが,だいたい View だけでなくロジックが記述できてしまう点と ReactNative で Android App らしい UI を組み立てるのが難しい点から来る,メンテナンスコス
ソフトウェア・エンジニアを長くやっていると、自然と得意分野というものが出来る。 自分だったら、Androidアプリ開発やJavaの仕様についてはそれなりに知っているつもりだけれど、LinuxカーネルやGPUについて詳しいとはお世辞にも言えない。 得意分野というと聞こえはよいけれど、それは裏を返すと、他のことを学ぶのに及び腰になるということだ。さっきの例でいえば、LinuxカーネルについてもGPUについても知っておくにこしたことはない。それでも、「興味はあるけれど、いますぐに必要じゃないからいいか」という気分になって後回しにしてしまう。 この記事で紹介する『Androidを支える技術』はそういう知っておくにこしたことはないことを解説している。 『Androidを支える技術』とは Androidを支える技術〈I〉──60fpsを達成するモダンなGUIシステム (WEB+DB PRESS plu
Boostnoteとは オープンソースのプログラマ向けノートアプリです。 現在190を超える国と地域まで拡がっており、多くのプログラマーの方々に愛されています。 これまでMac, Windows, Linuxのアプリを提供してきましたが、予てより希望の声が多かったモバイルアプリを本日リリースしました! iOS: https://itunes.apple.com/jp/app/boostnote/id1273066636 Android: https://play.google.com/store/apps/details?id=io.boostnote Boostnote mobileで出来ること 手軽にmarkdownを用いたメモを取ることが出来ます。 モバイルアプリでmarkdown?と思われるかもしれませんが、慣れると案外便利でした😄👍 知識を簡単にストック Boostnoteが
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く