Android LollipopではMaterial Designが本格的に採用され、Material Designを実現するために、Material Themeという新しいテーマが用意されました。 Material Designに関しては非常に挑戦的かつ包括的な内容のため、アプリ全体の見直しが必要になりますが、まずMaterial Themeを適用することでその第一歩を始めることが出来ます。 新規でLollipop向けのアプリをつくるには良いのですが、既にアプリを公開済みのものに対してMaterial Themeを適用するにはいくつかの注意点が有ります。 Material Themeを適用する2つの方法従来と互換性をもたせたままMaterial Themeを適用するには2種類の方法があります。 ・LollipopではMaterial Themeを使用し、従来のバージョンではHoloを使う
It's that time of year again. The Google I/O 2015 annual developer conference is scheduled to kick off in San Francisco today. Tickets already went on sale in March and were priced around $900 for general admission or $300 for academic admission. If you weren't able to score one, you can simply tune into Google's live-streamed keynote, which we are hosting here. The company uses the timeslot to no
By Chris Welch, a reviewer specializing in personal audio and home theater. Since 2011, he has published nearly 6,000 articles, from breaking news and reviews to useful how-tos. Just as it's done in years past, Google will unveil the latest version of Android at its annual I/O developer conference. The company hasn't officially come out and confirmed this directly, but a session description that b
サーバーとの通信、HTML5のAPIを使ったアプリケーションの開発に必要不可欠な「非同期処理」について学びましょう。 非同期処理とは背景処理の「非同期」化サーバーとの通信を例に考えてみようPromiseパターン基本的な考え方コードの基本形(1)呼び出した関数がPromiseパターンに従っている場合(2)自分で作成する関数でPromiseパターンを利用したい場合非同期処理の「失敗」の扱い方(1)呼び出した関数の失敗通知を受け取る(2)自分が作成する非同期処理関数で失敗を通知する複数の非同期処理をつなげて順番に行う複数の非同期処理を並列に実行して、全てが完了したら最終処理を行う非同期処理とは背景Webブラウザは基本的に、JavaScriptコードを実行するとき、コードを上から順に1行ずつ実行します。 また、関数を呼び出すと、その関数の実行が終了するまで(return文によって呼び出し元の関数に
Intel EdisonとPythonを使って植物を育てるためのセンサデータを取得して可視化してみました. 回路がわからない僕みたいな初心者でもBase Shieldとセンサーがあればコードを書くだけで簡単に値が取得できて楽しいです. EdisonでPythonを用いて書かれているものが少ないので書いてみることにしました. サーバーと連携はしていないのでIoTっぽくはないです. #今回行ったこと edisonのセットアップ pythonによるセンサー値取得・csvファイル保存 nvd3.jsによる可視化 #Intel Edisonの設定 これは以下を参考にして設定しました.Arduinoボードです http://nonnoise.github.io/Edison/ #センサー 以下のセンサーを使いました. Grove - Temperature Sensor Grove - Light S
基本無料であらゆる音楽が聴けるとうたっていたストリーミングサービス「Grooveshark」が4月30日(現地時間)、閉鎖された。大手レコード会社との法的紛争の終結に伴うもので、サイトには「重大な過ちを犯した」として、膨大な楽曲についてライセンス取得に失敗していたとして謝罪する告知文が掲載されている。 同サービスはユーザーがアップロードした曲を無料で聴ける仕組みだった。Universal Music Group、Sony Musicなど大手レコード会社が著作権を侵害されたとして、運営元の米Escape Media Groupを提訴。今年4月、米連邦地裁は同サイトによる著作権侵害で7億3600万ドルの被害があったと認め、サイト閉鎖を条件に和解することで合意していた。 サイトの告知文では、大手レコード会社との和解条件としてサイトを終了することを明らかにし、Spotifyなどの合法的なストリーミ
「MVNOに関する勉強会を開きますので、ぜひご参加ください」 4月の半ば、楽天から案内があった。ありがたい話である。 MVNO(仮想移動体通信事業者)とは、最近人気の格安スマートフォンのことだ。巷では楽天モバイルやイオン・モバイルといった格安スマホが大人気。何でも月々の料金がNTTドコモなど大手キャリアの3分の1になるらしい。おまけに5月からは「SIMフリー」というスマホがどどっと発売され、キャリアに縛られず好きな端末が使えるようになるという。 実はシニア記者もかねて興味津々だった。だが人間だれしも年を取ると保守的になる。「安かろう、悪かろうだったらどうしよう」。若いころ、やたらめったら新しいものに手を伸ばし、「だからやめろって言ったのに」と笑いものになった経験は知れず。 記者デビューを果たしたばかりの1989年、スマホはおろかパソコンですら一般的でなかったあの頃、最初のボーナスをはたいて
声に出して読みたいObjective-Cのライブラリ8種(2014.7) に触発されて書いてみます。 第一回はこちら 前回はこちら 今回は、アノテーションを用いた、アスペクト指向っぽいものを中心に紹介します。 hugo 安心と信頼の JakeWharton 先生のライブラリでございます。 デバッグ時にメソッドコールをロギングしてくれるライブラリで、ログ出力をしたいメソッドに対して@DebugLogアノテーションをつけることで、そのメソッドの呼び出しと終了がロギングされます。呼び出されたスレッドと、終わるまでに要した時間も出力されます。 アノテーションの実体はhugo-annotationsにありますが、ログ出力処理そのものはhugo-runtimeにあります。hugo 自体は、AspectJ をベースに、@DebugLogアノテーションのついたメソッドが呼ばれたのを検知して処理を実行してい
RxJava は ReactiveX (Reactive Extensions) の JVM 実装で、平たく言うと非同期のイベント処理を簡素に書ける、単なるライブラリです。 "Rx = Observables + LINQ + Schedulers" などと表現されます。なんですかこれ?大げさな抽象概念を掲げすぎて意味不明になる現象(モナド現象)になっていませんか? Observable とは Observable は発生順に並んだイベントのストリームです。 Java8 では、何らかの型Tの並びを Stream として表現し、この並びに対して関数的な操作を適用する API が用意されています。例えば Stream.map() は関数 Function を引数に取り、関数で変換された新しい Stream を返します。戻り値として Stream が得られるので、同じように操作を連結して定義して
JUnitに追いつこう(2周回遅れ、男子一万メートルだと2分近くの差、箱根駅伝なら4分40秒の差)という趣旨のエントリーです。 要約はこっちを見るほうが早かった kyon-mm.hatenablog.com irof.hateblo.jp Parameterized Test Parameterized TestがこれまではIterable<Object[]>だったのが、Iterable<Object>になったらしい。で、これに合わせるかのようにIntelliJ IDEAもParameterized Testでテストデータごとに結果を表示・再実行できるようになってた。で僕は、これまでパラメタライズドテストする場合は、Iterable<Object[]>を嫌って@RunWith(Theories.class)でテストしてたわけで、IntelliJ IDEAがParameterized Tes
線分上の最も近い点 「 線分ABと点Pが与えられたとき、AB上でもっともPに近い点を求めるには? 」と質問されました。 なるほど、マウスカーソルの位置を線分上にフィットさせたいんですね。あ、それともGPSから取った座標を道路にフィットさせたい? 垂線をおろして交点を求めるだけの簡単なプログラムのように思えて、これはちょっと工夫が必要です。 ナイーブな解法 垂線をおろして交点を求めればいいわけです。ただし、もし交点がなければ線分の端点AかBのどちらかが答え。 実際に手順を書いてみましょう。 ABの傾きaを求める。 垂線の傾きは -1/a。ただしABが垂直なら垂線の傾きは0。垂線の傾きをbとする。 点Pを通り傾きがbとなる直線を求める。【一次方程式を解く】 ABを直線の式で表し、垂線との交点を求める。【連立一次方程式を解く】 交点の座標がAとBの間にあるなら、交点が求める点。 交点の座標がAの
図形情報はベクトルで考えるときれいにプログラミングできるというコツを書きました。 * 座標系 - 図形情報を扱うのに大事なことは、全部高校で教わった - Qiita その続編として、高校で習わなかった アフィン変換 を使うと図形の回転・ズーム・移動がすべて行列で表現できて便利になるのをご紹介します。 拡大縮小と回転には変換行列、これは高校で習いました 座標をベクトルで表せば、特定の行列をかけるだけで拡大縮小と回転ができると習いました。 横にx倍、縦にy倍のズームは$\left(\begin{array}{ccc} x & 0 \\ 0 & y\end{array}\right)$で、 原点を中心にθ度の回転は$\left( \begin{array}{ccc} \cos \theta & -\sin \theta \\ \sin \theta & \cos \theta \end{arra
JUnit4.12がでました!……2014/12/4に。なんと6ヶ月経ってる。まぁいいや。 JUnit 4.12の新機能紹介まとめ / うさぎ組(2014/8/5) JUnit 4.12から入ったTestRuleを軽く見てみる / 裏紙(2015/2/28) JUnit4.12時代のParameterized Test / mike-neckのブログ(2015/5/6) ググっても4.12の情報があまり引っかからなかったので書いてみますね。 リリースノート斜め読み とりま、Summary of changes in version 4.12 を斜め読み致して、気になるところ(★)は後でもう少し詳しく書く事にします。なお、バグフィックス、メッセージ変更、挙動の統合などの特にテストコーディングに影響を与えないものはスルー。 Assersions floatのassertNotEquals →
Incremental test design 昨年度追加されたISTQBのFoundation Level Extension Syllabus Agile TesterのAgile Testing Practicesの項にはテスト設計に関する興味深い記述がある [1]。 Incremental test design: Test cases and charters are gradually built from user stories and other test bases, starting with simple tests and moving toward more complex ones. アジャイルテストのテスト設計の特徴として ユーザーストーリーをテストベースとして用いる事 シンプルなテストケースの追加から始まり、より複雑なものへと変化して行く事 Increme
##概要 Androidで作成した自作ライブラリをGithubを利用して公開するための手順。結構躓いたので備忘録として手順をひと通りまとめてみる。mavenについて理解が甘いのでとりあえず手順だけ。 ##準備 公開するライブラリはこちら。以前自分のブログで書いたTabオペレーションのための簡易UIライブラリ。鋭意開発中。。。 【Android】MenuTabのFragmentの遷移を自前のスタックで管理する at 情報系の凡才日記 ##手順 githubでリポジトリを作る gradleにMavenリポジトリに登録するためのスクリプトを書く 書いたタスクを動かしてできた生成物をgithubにpush 利用 ###1. リポジトリを作る ここは普通に作るだけなので省略。 ###2. gradleにMavenリポジトリに登録するためのスクリプトを書く apply plugin: 'android
レスポンス用のオブジェクトを生成 jsonschema2pojoを利用してjsonから生成 ※基本的には、Source typeはJSON、Annotation styleはNoneでOK 注意!! レスポンスパラメータがスネークケースだと自動変換してくれないので、 サーバ側で返すパラメータはキャメルにしておきましょう。 各部実装 ちょっと長いですが、今回はObserverパターンを利用して汎用的に使えるコールバックも併せて定義しています。 一度作っておくとあとで非常に楽になります。 まずはマニフェスト <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.test.hoge.hogehoge" > <!
Square社のRetrofitはREST通信を簡潔に行うことができる出来た子ですが、いろいろと面倒なMultipartのPOST(PUT)送信も簡潔にできます。 いつもどおりにRestAdapterからAPIアクセス用のインスタンスを作成します。 final Executor executor = Executors.newCachedThreadPool(); final OkHttpClient okHttpClient = new OkHttpClient(); RestAdapter mRestAdapter = new RestAdapter.Builder() .setClient(new OkClient(okHttpClient)) .setExecutors(executor, new MainThreadExecutor()) .setEndpoint("https:
はじめに Androidアプリからインターネット上のAPIにHTTP経由でリクエストし、レンスポンスの結果を画面に表示したいということがあると思います。通信をすると結果が返ってくるまでにブロッキングしないようにしたい。レスポンスの結果をパースすることが面倒ということがあります。本稿では、海外の話題webページの要約を翻訳したEpitomeのタイトルを表示するアプリを作ってみたいと思います。 特徴としては通信部分をRxAndroidを使用して、リクエストし、レスポンスをパース後にUI操作の流れをわかりやすく記述する。リクエストについてはRetrofitによりRESTfulに記述し、Gsonによるレスポンスをパースした結果を定義することにより、面倒なパースを自動的にパースします。 UI操作はメインスレッド、通信は別スレッド HTTP通信をメインスレッド(UIスレッド)で行うと、レスポンスが返っ
大坪 和久 OTSUBO Kazuhisa @otsubo “…任天堂の人気ゲーム「スーパーマリオブラザーズ」などのキャラクターを無断で複製し、自作したICカード乗車券などに貼るステッカーを販売目的で所持し、著作権を侵害した疑い” キャラ無断複製、秋葉原で販売=著作権法違反容疑で男逮捕-警視庁 paten.to/1wWPRRv 2015-01-08 14:47:49 リンク headlines.yahoo.co.jp キャラ無断複製、秋葉原で販売=著作権法違反容疑で男逮捕―警視庁(時事通信) - Y!ニュース Yahoo!ニュース(時事通信) - 人気ゲームのキャラクターを無断で複製し、自作したステッカーを販売目的で所持した
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く