タグ

shinlinsuiのブックマーク (1,247)

  • AndroidエミュレータとVirtualBox、Docker for Macを同時に実行できない問題の対処法 - Qiita

    AndroidエミュレータとVirtualBox、Docker for Macを同時に実行できない問題の対処法AndroidVirtualBoxDockerHAXM Docker for Macなどを起動中にAndroidエミュレータが起動できない状況がずっと続いていました。こういったメッセージが表示されるやつです。 Unfortunately, VirtualBox 4.3.30+ does not allow multiple hypervisors to co-exist.In order for VirtualBox and the Android Emulator to co-exist, VirtualBox must change back to shared use.Please ask VirtualBox to consider this change here: ht

    AndroidエミュレータとVirtualBox、Docker for Macを同時に実行できない問題の対処法 - Qiita
  • Fragment使用時のIllegalStateException回避 - Qiita

    前置き このページの内容はstackoverflowの素晴らしい回答を参考にしている。 IllegalStateException? Fragmentを使っていると、画面遷移の際に以下の様が例外が発生することがある。 java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState これは非同期処理などでFragmentの操作タイミングがonSaveInstanceState()よりも後になってしまった場合に発生するものだ。 onSaveInstanceState()ではFragmentの状態も含めた画面情報を保存するため、それ以降のタイミングでFragmentを操作するとおかしくなるぞ!ということだろう(多分)。 詳しいことは(解決策も)下記リンクに詳しくまとめられているので、じっ

    Fragment使用時のIllegalStateException回避 - Qiita
  • GoogleスプレッドシートでGopherを描く with Go - Qiita

    Goで作るので、もちろんこいつを描きます! 経緯 以前Googleスプレッドシートをプログラムから操作という記事を書いたのですが、その延長でなにか作ろうと思ってたところ Excelで佐々木希を描く with pythonが面白かったのでそのスプレッドシート版を作ってみました。 結果 ブラウザで画面を開きながら裏でAPIを実行しています。 スプレッドシートなのでリアルタイムに反映されていくのが面白いですね。 普通ブラウザで同時編集していると誰が編集しているかがわかりますが、APIだとそれがわかりません。 そのためポルターガイストてきな悪戯も可能です (誰得 @このgifは実際の画面の描画速度ですがAPI自体はこんなに遅くないです。 ブラウザの描画が追いついていない感じです。 知見 1APIあたりの同時変更セル数 上記Gopherは横200✕縦20ピクセルずつで流しているのですがこれぐらいだと

    GoogleスプレッドシートでGopherを描く with Go - Qiita
  • ファイルの拡張子によって、vimに自動でインデント幅を変えてもらおう! - Qiita

    pythonrubyだと、コーディングルールのインデント幅が違います。これを毎回設定するのはわずらわしいので、vimに自動で切り替えてもらいましょう。拡張子で処理を切り分けることができます。 FileTypeで処理を分ける vimにはFileTypeというオプションが定義されています。もしFileTypeがpythonの時に実行したい設定がある場合は、~/.vim/ftplugin/python.vimを作成します。次の設定だと、ファイルを開いた時に"filetype python"という文字列が画面の下に出力されます。 上記のファイルを自動実行させるために、開いたファイルの拡張子によって自分でファイルタイプを定義する必要があります。拡張子がpyの時はpython、rbのときはrubyというFileTypeを定義することにしましょう。setfiletypeで設定するファイルタイプ名は大文

    ファイルの拡張子によって、vimに自動でインデント幅を変えてもらおう! - Qiita
  • GitHub - hatena/Hatena-Textbook: はてな研修用教科書

    Hatena-Textbook はてな教科書は、はてなエンジニアとして最低限必要とされる技術を身につけるための教科書です。 Web開発における重要なトピックを順番に学びながら、課題をといていくことで、Webアプリケーションをひととおり構築できるようになります。 実装言語としてPerlScalaのどちらを選ぶことができます。 トピックごとに学びたい言語の方の教科書を読み進めてください。 目次 プログラミングの基礎 Perlによるプログラミングの基礎 Scalaによるプログラミングの基礎 データベースの基礎 Perlによるデータベースプログラミング Scalaによるデータベースプログラミング Web開発の基礎 PerlによるWebアプリケーション開発 ScalaによるWebアプリケーション開発 Webフロントエンド開発 はてな教科書JavaScripthatena/Hatena-Tex

    GitHub - hatena/Hatena-Textbook: はてな研修用教科書
  • 「セマンティック バージョニング」を読んだのでバージョニングについてまとめた - Qiita

    はじめに バージョニングをどうやって行えばいいのかよくわからなかったので自分用まとめも兼ねてまとめておこうと思いました。 今回はセマンティック バージョニングを参考にしました。 上のサイトから要点をまとめました。 メジャーバージョン、マイナーバージョン、パッチバージョン バージョンを上げるには3つのバージョンを使って表記します。 APIの変更に互換性のない場合は メジャーバージョン 後方互換性があり機能性を追加した場合は マイナーバージョン 後方互換性を伴うバグ修正をした場合(1)は パッチバージョン このシステムをセマンティック バージョニングと呼び、各々上の条件の時、バージョンをあげます。 なぜセマンティック バージョニングを使うのか? 名前を正確な定義を与えることで、開発するソフトウェアにいて、意図が伝わりやすくなる 意図を正確に理解すれば、柔軟な依存性の仕様を作れる バージョニング

    「セマンティック バージョニング」を読んだのでバージョニングについてまとめた - Qiita
  • 猿でも分かる! Dependency Injection: 依存性の注入 - Qiita

    はじめに アホでもわかるように解説してみるテスト。 あらゆる方向で説明してみる。 大雑把にまとめると「依存していた部分を、外から注入すること」です。 勘違い、間違いが沢山ありそうなので、是非ご指摘を! 登場人物 (用語) 依存性の注入 (日語) Dependency Injection (英語) DI (Dependency Injectionの略語) 依存関係を設定ファイル等で定義してよろしくやってくれる「DIコンテナ」については書いておりません! 何が問題なの? クラス内などで固定化されたものがあると 柔軟性がない テストしにくい 解決方法 「依存している部分を外から注入する」 DIにおける「依存性」と「注入」の意味 依存性 (大雑把に)とあるクラスに、固定の定数、変数、インスタンスが入っちゃっている状態 つまりそのクラスは、その定数、変数、インスタンスに依存している 注入 そのクラ

    猿でも分かる! Dependency Injection: 依存性の注入 - Qiita
  • アプリのAPIリクエストのトレースはどうするのが効率的か? - ZOZO TECH BLOG

    こんにちは。iOSエンジニアの庄司です。 普段のアプリ開発において、バックエンドチームから「○○のページで△△のデータ取得するためにリクエストしているURLってどんなの?」と聞かれることがよくあります。 その都度、APIリクエストとリクエスト結果をprintで表示するフラグをONにしてアプリをビルドするということをしていたため、かなり手間がかかっていました。 こういった作業を楽にするためにネットワークデバッグライブラリをいくつか比較してみました。 ライブラリ ResponseDetective https://github.com/netguru/ResponseDetective NSURLSessionのリクエストやレスポンスをデバッガのログに流してくれるライブラリです。 特徴・利点 フルSwiftで書かれており、NSURLProtocolのメソッドに割り込んでログを落とす事ができます

    アプリのAPIリクエストのトレースはどうするのが効率的か? - ZOZO TECH BLOG
    shinlinsui
    shinlinsui 2017/03/17
    [Android][iOS]
  • Android エンジニアが Android の WebView で苦しんだ話 - Qiita

    はじめに Gingerbread から Android を触り続けて、たぶん5年くらい。 ネイティブのアプリ作るのは困らないくらいの Android エンジニアになりました、わーい。 で、この間お仕事でちょっと WebView を触らなければいけなくなった。 まぁいろいろ噂は聞いていたんだけど、 「結局のところ、ビューに HTML 設定するだけっしょ?余裕っすわ!」と舐めきっておりました。 もうね、大変だった。 大変だった! ということで、困ったポイントをメモしておきます。 やりたいこと 動的に HTML を生成 WebView のサイズにスケーリングして表示 リンクをタッチしたらブラウザアプリを起動 困ったポイント1. 謎のパディング じゃあ、とりあえず WebView に HTML を設定してみよう!と実装して、ファ!?ってなったのがコレ。 コンテンツに謎のパディングが発生する…。 お

    Android エンジニアが Android の WebView で苦しんだ話 - Qiita
  • viでgtagsを使う(for Debian) - 黒猫のWeb的開発

    gtagsはctagsの強力版。 エディタに取り込んで、楽々コードリーディング。 gtagsを使うためにglobalをインストールする。 $ sudo apt-get install global gtagsファイルの設定ファイルをviのプラグインディレクトリに追加する。 $ mkdir .vim/plugin $ cp /usr/share/doc/global/examples/gtags.vim.gz ~/.vim/plugin/ $ cd ~/.vim/plugin/ $ gzip -d gtags.vim.gz~/.vimrcに以下を設定する nmap <C-g> :Gtags -g nmap <C-l> :Gtags -f %<CR> nmap <C-j> :Gtags <C-r><C-w><CR> nmap <C-k> :Gtags -r <C-r><C-w><CR> nma

    viでgtagsを使う(for Debian) - 黒猫のWeb的開発
  • Android Thingsを使って、部屋のマジックミラーデバイスを作って見た - Qiita

    忙しい朝に携帯を開かず、最寄駅の次の電車の時間や、現在の時刻や、降水率などを鏡に表示されると便利だと思って、マジックミラーのディスプレーを作りました。 下記の記事を読んでマジックミラーを欲しくなったのと、Raspi上でAndroidアプリを作れるというニュースを聞いたので、土日を使ってマジックミラーとAndroid things を作ってみました。 https://www.hackster.io/Techblogogy/magic-mirror-with-stylist-4b3ff7?ref=search&ref_id=magic%20mirror&offset=2 実際、RaspiがWifiにうまく接続できなかったり、Wifi接続できたのにWifi経由でADBデバッグできなかったり、諸々のトラブルがあって完成したのは2,3週間後でした。 Android thingsの開発環境 * Mac

    Android Thingsを使って、部屋のマジックミラーデバイスを作って見た - Qiita
  • 【Android】savedInstanceStateの意味と開発者オプション【初心者向け】 - Qiita

    はじめに。 savedInstanceStateとかって何?何なの?普通に気にせず開発してても何も問題ないんだけど? 何?無視してもいいの? え?画面回転するときにActivity破棄される?その時使われる?じゃあ回転させなかったらいいの? っていう人向け。 パズドラとかGoogleMapとか他のアプリ開いてしばらくいじったあと戻ってきたらアプリがなんか変!またはアプリが落ちた! こんなことがあなたの作ってるアプリに起きるかもしれません。 Activityは死にます。 プロセスも死にます。 なのでたまに開発者オプション「アクティビティを保持しない」「バックグラウンドプロセスの上限」を使うと良いよって話です。 savedInstanceState系の理解の出発点になれれば。 ActivityのonCreateの引数 Bundle savedInstanceState さん @Override

    【Android】savedInstanceStateの意味と開発者オプション【初心者向け】 - Qiita
  • 無自覚で「他人をバカにする人」「上から目線でキツイ」と言われてしまう人の原因と対策 - ひびわれたまご

    どうも。志乃です。 世の中、色んな人がいるものですね。「無意識のうちに、人をバカにする態度を取ってしまうタイプ」の人間が、あなたの周りにも、いらっしゃるのではないでしょうか。 今日はそのことについて考えていきたいと思います。 関連記事 blog.shinoegg.com 人を小馬鹿にした喋り方はクセになる 「馬鹿にされている」という印象を持たれやすい態度とは? 受け手の問題?言う側の問題? 無自覚のうちに「上から目線」になってしまう原因とは? 対策方法は? そんなつもりもないのに「傷ついた」と言われたら 人を小馬鹿にした喋り方はクセになる 「人をバカにした喋り方」って、癖になりやすいし、自覚も持てなくなるから怖いもんだなあ、と。 — 望月志乃🌞ADHDだヨ!全員遅刻 (@shinoegg) 2017年3月13日 身に覚え、ありませんか?わたしはあります。 「馬鹿にされている」という印象を

    無自覚で「他人をバカにする人」「上から目線でキツイ」と言われてしまう人の原因と対策 - ひびわれたまご
  • Android Studioで覚えておくと便利なこと - Qiita

    EclipseからAndroid Studioに乗り換えたのですが、設定画面の見方やショートカットの違い等にいろいろ戸惑ったのでメモ。 ※Macの場合での説明中心です。 →Windowsの説明が追加されました!ありがとうございます! 設定画面 Menu > Preferences からAndroid Studio全体の設定が確認・変更できます。 Windowsの場合は、 File > Settings... から確認できるようです。 テーマを変更する Appearance > Theme マウスオーバーでドキュメントを表示する Editor > Show quick doc on mouse over 行番号・空白文字をつける Editor > Appearance > Show line numbers Editor > Appearance > Show whitespaces ゲッタ

    Android Studioで覚えておくと便利なこと - Qiita
  • Android/iOSアプリのテストの区分戦略 - クックパッド開発者ブログ

    技術部の松尾(@Kazu_cocoa)です。 クックパッドのモバイルアプリ開発では、どのようなテストを書き、どのようなタイミングで、どのようなテストを実施するか?に関してエンジニア各位が意識を合わせるためにテストサイズを定義し運用してきました。ここでは、そんなテストサイズに関して簡単ですがまとめておこうと思います。 テストサイズとは ソフトウェアテストに関わったことがある方なら テストレベル という言葉には出会ったことがあるかと思います。JSTQBでは、このテストレベルは"管理していくテストの活動のグループ"と定義しています*1。 そうでない方も、俗に言う単体テスト/統合テストなど聞いたことがあるかと思いますが、その区分がここで示しているテストレベルとなります。 一方、このテストレベルはV字型と言われる開発工程と合わせて世の中で広く使われているため、社内における共通認識を構築するにあたり個

    Android/iOSアプリのテストの区分戦略 - クックパッド開発者ブログ
  • Android Studioの超高速コーディングを支える技術(テクニック) - Qiita

    追記(宣伝): 今年の夏から大阪でフルリモートなフリーランスAndroid/iOS/Webエンジニアをやっています。ただいま週1-2または請負のお仕事お待ちしております・・! 画面見た人から(Enterやらショートカットやら連打で)何やってんだかわからないって言われることがたまにあるので、Android Studioでどうやってコーディングしているのかを書きました。 単なるショートカット集ではなく、あえてエラーのある状態を作るなどのテクニック集です。 なおMacかつAndroid Studio標準のキーバインドを前提としているので違う方は読み替えてください。(もちろんIntelliJでも同じことができるはずです・・!) 原則 考えるな、感じろ。: Alt+Enterや補完キーなどを押した次の状態を頭の中に思い浮かべながらに対して反射的に操作すると、超高速コーディングできる エラーだろうが汚

    Android Studioの超高速コーディングを支える技術(テクニック) - Qiita
  • アプリケーションのレイアウト - Qiita

    レイアウトとは レイアウトとは、GUIの配置を決めるための仕組みです。 このレイアウトを使うことによって、Androidアプリの画面を簡単に作成することができます。 Android開発においては.xmlで記述してGUIを配置していきます。 流れとしては.xmlでセットしたView部品(後述)を.javaで制御していく形になります。 レイアウトを構成する要素 画面を構成する要素(パーツ)は大きくわけて2種類あります。 Wedget(ウィジェット) Layout(レイアウト) です。これらの要素をまとめてViewといいます。 これらのViewは.javaで記載されており継承することでCustomのViewも作ることができます。 WedgetとLayoutの違いを超わかりやすく説明します。 ざっくり言うと、Layoutの中(要素)にWedgetを配置していくイメージです。 枯山水で例えると一番親

    アプリケーションのレイアウト - Qiita
  • GitHub - navasmdc/MaterialDesignLibrary: This is a library with components of Android L to you use in android 2.2

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - navasmdc/MaterialDesignLibrary: This is a library with components of Android L to you use in android 2.2
  • 【Android】マテリアルデザインのモーション実装カタログ - Qiita

    ※1 サードパーティのライブラリに依存せず、公式で、Canvasなどに手を入れたり大変な実装を行わない場合のAPI Levelのものです。 APIレベルとAndroidのバージョン 7 = Android 2.1 Eclair MR1 11 = Android 3.0 Honeycomb 14 = Android 4.0 ICS 21 = Android 5.0 LOLLIPOP ※2 参考程度に。 ★3つでもだいたいの機能の実装よりは小さいはず、、です。。 継続時間とイージング この章はアニメーションの継続時間とイージングについて書かれています。 基的には認識できて、最速というところを目指していくと良いみたいです。 またイージング、動く速度の変化などは方法が提供されているので、それを利用しましょう。 動的な継続時間 一般的な継続時間 動的な継続時間、一般的な継続時間では、どのような時間

    【Android】マテリアルデザインのモーション実装カタログ - Qiita
  • MultiDexでクソはまった - おすしたべたい

    普段はLollipopで開発していて、ゴリゴリ進めていたら突然のDexIndexOverflowExceptionなるものが発生。 よくわからなかったのでググッてどこかのStackOverflowの回答で出てた対策で適当に対応していた。 内容は、build.gradleに以下を追加するというもの。 android { defaultConfig { multiDexEnabled true } } この時は普通に動いたので特に何も気にしていなかった。 が、時は過ぎひと通り出来上がったところで(今更)KitKatでチェックしてみると、謎のエラーを吐きまくって実行できない。 java.lang.NoClassDefFoundErrorなんていう悲しい例外がスローされまくって(自分が育てたクラスなのに…)アプリが起動する前に落ちてしまう。。 ということで一生懸命調べました。 …6時間経過… そし

    MultiDexでクソはまった - おすしたべたい