bugspotsのインストール

普通はrbenv使うがとりあえず動けばよいので。 RubyGemsのアップデート(多分いらない場合多し) $ sudo gem rubygems-update $ sudo update_rubygems BugSpotsのインストール(cmakeが必要) $ brew install cmake $ sudo gem install bugspots

LinearLayoutやRecyclerViewの、もともと用意されている区切り線について

LinearLayout android:divider="?android:dividerHorizontal" android:showDividers="beginning|middle|end" RecyclerView final DividerItemDecoration decoration = new DividerItemDecoration(getContext(), DividerItemDecoration.VERTICAL); recyclerVi…

Androidで、v7.Toolbarに高さ指定するときについて

ActionBarをMaterial対応させると、Heightは 56dp (デフォルト) 48dp (横向き) 64dp (タブレット、sw600dp) になると思うが、実際に直指定するのはださい。 ICSからNougatまでに対応し、なおかつ直指定しない方法として、

appcompat-v7 を使って、カスタマイズ可能な、 Dialog のような画面を超楽にめちゃ綺麗につくる

Androidで、カスタマイズ可能なDialogのような画面を楽につくる方法について考える。 Android でカスタマイズダイアログをつくるのは、AlertDialogよりはDialogFragmentのほうが楽にはなっているが、相変わらず骨が折れる。 今回は、DialogはAlertDialogやDi…

Androidで今開いているアクティブなActivityを調べるコマンド

adb shell dumpsys activity activities | grep mResumed

Nexus 6Pでfastboot oem unlockする

開発者向けオプションでOEMロックを解除して、 ``` $ fastboot oem unlock ``` してもFailする。 正しくは ``` $ fastboot flashing unlock ``` だった。

FragmentLifecycleCallbacksってのがあるらしいが…

https://developer.android.com/reference/android/support/v4/app/FragmentManager.FragmentLifecycleCallbacks.html 使えそうだなーと思い。 が、ドキュメントではstaticでメンバークラスぽいけど、実際のコードではインナークラスだった… なのでこんな感…

FirebaseCrashクラスにあるlogとlogcatメソッドの違い

# 致命的クラッシュや、FirebaseCrash.report()した場合に送られる際に、直近のログを同時に送信するため保存しておく。保存する内容はlogcatには出力しない。 FirebaseCrash.log(message); # 致命的クラッシュや、FirebaseCrash.report()した場合に送られる…

macOS Sierraで、Homebrew経由でMySQLをインストール&使用開始できる状態にする

Macにインストール $ brew install mysql MySQLの初期設定 $ mysqld --initialize --explicit_defaults_for_timestamp で初期設定。 --initialize specified but the data directory has files in it. Aborting というエラーメッセージが出た場合は、${Homeb…

Androidで表示されているViewをファイル保存する

View view = findViewById(R.id.preview); Bitmap bitmap = null; OutputStream stream = null; boolean result = false; try { final String filename = "saved.jpg"; final File saved = new File(Environment.getExternalStorageDirectory().getAbsoluteP…

Ubuntu の Unity ランチャーに任意のアプリケーションを登録する

$ cd /usr/local/applications $ vim 任意.desktop 以下は内容 Desktop Entry] Version=1.0 Type=Application Name=任意 Exec="コマンドの場所" %f Icon=アイコン画像の場所 Categories=Development;IDE; Terminal=false StartupNotify=true StartupWMClass=…

Facebook SDK for Android (4.5.0) がAndroid 6.0でクラッシュする

stackoverflow.comらしい。

Robolectric 3.0でApplicationクラスやConstantsクラスをrobolectric.propertiesに書き出す時の注意点

src/test/resources/robolectric.properties(正しい例) application=com.sample.MyApplication constants=com.sample.BuildConfig sdk=21 packageName=com.sample src/test/java/com/sample/test/MyTest.java(端折っています) import com.sample.MyAppli…

Android Studio, IntelliJ, Pycharmなどでプロジェクト全体から検索

Search EveryWhere。 IntelliJ系共通。 Shift2回。

Google App Engine for Pythonでdev_appserver.pyした際エラーが出たら

ImportError: cannot import name docker などと出るだろう。 以下の方法で対処可能。 $ pip install docker-py $ vim ~/google-cloud-sdk/platform/google_appengine/google/appengine/tools/docker/containers.py - from docker import docker + import do…

AndroidでLayoutの高さが変わった際アニメーションをつけたい

XMLから <LinearLayout android:id="@+id/container" android:animateLayoutChanges="true" /> Javaから LinearLayout mLinearLayout = (LinearLayout) findViewById(R.id.container); mLinearLayout.setLayoutTransition(new LayoutTransition()); 注意 Linearでなければ動かないわけでない。 課題 ViewGroup上部でAnimationするのだが、下部</linearlayout>…

Mac OS X YosemiteにGIMPをインストール

$ brew install Caskroom/cask/gimp

Macターミナル上でスマホアプリのHttpリクエストをとりあえず確認する

Mac標準にインストールされているApacheでProxyを立てて、スマホのネットワーク設定でProxyを経由するようにする。 Apache側の設定 $ sudo vim /private/etc/apache2/other/sample-proxy.conf <IfModule mod_proxy.c> ProxyRequests On ProxyVia On <Proxy *> Order deny,allow Deny from al</proxy></ifmodule>…

Facebook SDKのTokenから、現在許可されているパーミッションを確認する

Tokenにパーミッション情報などが含まれるので、Facebook側で用意しているDebuggerで確認することができる。 https://developers.facebook.com/tools/debug/accesstoken APIの挙動や、試験的にパーミッション等を付与しどういった情報を取得できるかを気軽に…

Android Studioで使用していないImportを自動削除する

Settingを開き、Editor > General > Auto Importで、Javaカテゴリの「Optimize imports on the fly」チェックボックスをつける。

PyCharm Community EditionでGoogle App Engineアプリ作成したい

本当はライセンス購入したいが、何分お金がないので…スマソ PyCharmでPure Python Projectとして開発していると、appengine系のパッケージが参照されないので結構つらい。そこで、virtualenvwrapperを使って、参照させるようにする。 環境 Ubuntu 14.04 PyCharm…

IntellijやPyCharm、Android Studioなどでクラスやメソッドの宣言元にジャンプする

SettingsまたはPreferenceで、Keymapの項目から「jump to source」で検索。 Main Menu -> View -> Jump to Sourceで、設定されたショートカットを確認。 あとはクラスやメソッド上でショートカットキー入れればOk。ググると、定義元にジャンプ、宣言元にジャ…

MacにMeldをインストール

まずはXQuartzをインストール XQuartz Macを再起動 再起動はよく忘れるポイントなので注意。 Meldをインストール $ brew install homebrew/x11/meld

Androidのadbコマンドからアプリを起動する

Android Studioのログを見ていればわかるが、一応メモ。 $ adb shell am -n start com.package.name/com.package.name.ActivityName

Androidのadbコマンドからタップイベントを起こす

エミュレータ・実機関係なく操作可能。 # adb shell input tap x y $ adb shell input tap 150 300 他の動作(文字列入力など)は、下記方法で調べられる。 $ adb shell shell@android:/ $ input

GitのSubmoduleを最新に同期する

$ git submodule foreach git pull origin master

TextViewのAutoLinkのURL起動先を、デフォルトブラウザでなく独自のActivityにする

基本的にはLinkMovementMethodの一部ソースをコピったあと、ブラウザに飛ばすであろう箇所のコードを削除し、自分でIntentを書けばOK。あまりいい解決法とも思えないが・・・MainActivity.java . . . @Override public void onCreate(Bundle savedInstanceSt…

Android StudioのGetter Setter生成機能の際PrefixやSuffixを取り除く

Setting -> Code Style -> Java -> Code Generation -> Name suffix にmを入れる。

AndroidのCompat版ToolBarにActionBarとして使いつつアイコンを表示したい

@Override public void onCreate(Bundle bundle) { super.onCreate(bundle); setContentView(R.layout.main_activity); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); toolbar.setNavigationIcon(R.drawable.ic_l…

Webサービスを退会する

Webサービスの中には、なかなか退会できないものがある。 そうした場合に、簡単に退会方法を探す方法があった。Just Delete Me | A directory of direct links to delete your account from web services. Just Delete Me | A directory of direct links to …