読者です 読者をやめる 読者になる 読者になる

woshidan's loose leaf

ぼんやり勉強しています。

$ANDROID_HOMEってどこさ

環境変数 JAVA_HOMEとANDROID_HOMEと、時々、PATH

Android SDKのパスのことで、ここだ。

f:id:woshidan:20170307024420p:plain

なお、$NDK_ROOTなどを聞かれた場合は、$ANDROID_HOME/ndk-bundleであることが多い。

sdk$ ls
add-ons     docs        lldb        platform-tools  sources     tools
build-tools extras      ndk-bundle <-    platforms   system-images
cmake       licenses    patcher     skins       temp

Xcode Command Line Toolsのインストール

Apple IDでサインインして下記URLへ。

Sign in with your Apple ID - Apple Developer

利用するバージョンのCommand Line Toolsを探してDL(いくつかツール種別のチェックを外した方が探しやすい).

f:id:woshidan:20170228005131p:plain

あとはDLしたインストーラをぽちぽちすればOK.

Homebrewでgitのバージョンを上げた後、実行されるバージョンを変える

本当は、

brew uninstall git
brew update
brew install git

すればいいんだけど、慌てて後者だけやって、Homebrewの管理するディレクトリが二つできて、名前順で古い方が優先されてどうしようかな、ということに(なぜだ)。

もう少し状況をまとめると

  • 新しい方のパス /usr/local/Cellar/git/2.12.0
  • 古い方のパス /usr/local/Cellar/git/1.9.0
  • 古い方のパスはHomebrewでインストールしたコマンド用のパス /usr/local/bin/git にリンクされてる

こういう感じ。

結局

// 古い方をてきとうなディレクトリへ退避
mv /usr/local/Cellar/git/1.9.0 ./temp/git
// 新しい方ので呼び出されてくれないだろうかと期待してgit --version
$ git --version
bash: /usr/local/bin/git: No such file or directory
// なるほどリンクされた先のパスのファイルはさっき消したのでそれはそうですね
// いまは一つしかgitいないし、新しい方のgitが使われるだろうから brew linkすればいいのかな
$ brew link git
Linking /usr/local/Cellar/git/2.12.0... 419 symlinks created
$ git --version
git version 2.12.0
// 古い方はいらないので消す
$ rm -rf ~/temp/git

なまら面白かったので単純に日記が書きたかった…

使い道がよくわからなかったのでScaleDrawableで遊んでみた

楽しい。

f:id:woshidan:20170210001205g:plain

        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                int i = new Random(System.currentTimeMillis()).nextInt(8000);
                ScaleDrawable sd = (ScaleDrawable)imageView.getDrawable();
                sd.setLevel(i);
            }
        });
<ImageView
  android:id="@+id/imageView"
  android:src="@drawable/scaletest"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" />
<?xml version="1.0" encoding="utf-8"?>
<scale
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/icon"
    android:scaleGravity="center"
    android:scaleHeight="80%"
    android:scaleWidth="80%"/>

Rubyのgemをインストール際に要求されるnative extensionとは何者か

stackoverflow.com

gemのnative extenstionは、それの事前インストールを必要とする別のライブラリ(gem)とリンクさせてもよいRubyが動く環境(rbenvなどの管理下ではなくPCなど)に入っている、主にCやC++などで書かれるライブラリ。

それの事前インストールを必要とする別のライブラリ(gem)とリンクさせてもよい

とは、たとえば、ImageMagicのnative extensionとして入れた画像処理系のライブラリをRMagickのnative extensionとして利用してもよい。

ただ、用語としては単に「(そのgemは)あなたのマシンにコンパイルされている必要があるいくらかのコードを含んでいる」ということを意味しているだけ。

あなたのマシンのRubyが、requireキーワードで、コンパイル & リンクされた結果のexeファイルを呼び出せるように(自信がない)。

下記のあたりを読んでみるとよさそうなので、また今度読みます。

library mkmf (Ruby 2.4.0)

StoryBoardを使わない方法 at Swift

qiita.com

上記の記事をSwiftでやりました、というお話です。

f:id:woshidan:20170120010246p:plain

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?


    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        // Override point for customization after application launch.
        
        // refs. http://qiita.com/shou1471/items/637f7500698c3c5b0bc0
        // UIWindowの生成
        self.window = UIWindow.init(frame: UIScreen.mainScreen().bounds)
        self.window?.backgroundColor = UIColor.greenColor() // Storyboardで作成したwindowは通常白背景なので区別するため
        
        // 最初に表示されるViewControllerを生成
        let viewController = ViewController()
        self.window?.rootViewController = viewController
        self.window?.makeKeyAndVisible()
        return true
    }

f:id:woshidan:20170120010355p:plain

Android StudioのEditorのフォントの色を編集する

~~ の箇所はIDE上に警告でません?

というようなことを一ヶ月で3回くらい言われて、 「あ、これ、普通に気付いてない。注意以前に見えてない」ということで、警告を目立つ色で表示させるために調べた。

f:id:woshidan:20170117000426p:plain

  1. メニューの「Android Studio > Preferences」から「Preferences」のメニューを開いて「Editor > Colors & Fonts」を選択
  2. 今回は言語関係なしの警告やコメントの文字色を変更したいのでGeneralを選択
  3. デフォルトで用意されているフォント設定は変更できないので、カスタム用の設定ファイルを「Save As ...」から作成
  4. 色を変更したい箇所をクリックするか、上の方の項目名を選択
  5. 色を変更したいプロパティを選択して、背景色なり、下線の引き方なりを変更してもう一回「Save As ..」を押す

と、警告が超目立つ色になってくれます。

f:id:woshidan:20170117001431p:plain

これで見落としが減ればいいですね。

本当はLintか特定のコードブロック弾いてくれる機能が欲しいんだけど、それはまた今度。