Dramsuko_wiki

Program

目次

Android アプリ開発

開発ソフト

eclipse

Android 開発のサポートが2015年12月で終了することが発表されています。

Android Studio

Eclipse 亡き後、無料の開発ツールはこちらにシフトしていくように感じます。
Windows,Mac,Linux 全てのOSに対応しているため、Eclipse 同様使い勝手は良さそうです。

Android Studio

Install

初期設定

ショートカットキーまとめ

  1. 全般
    • エラーの対策候補の表示:Alt + Enter
    • クイックフィックス:Alt + Enter
    • ハイライトされているエラーへ飛ぶ:F2 or Shift + F2
    • Refactor Rename:Shift + F6
    • メソッドパラメーターの表示:Ctrl + P
    • 使ったファイルの履歴からファイルを選択:Ctrl + E
    • ナビゲーションバーを開く:Ctrl + Home
    • コード生成メニューの表示:Alt + Insert
    • 「ビュー」の選択を表示:Alt + F1
    • 置換:Ctrl + R
    • 囲む(TryCatch?など):Ctrl + Alt + T
    • Introduce Variable:Ctrl + Alt + V
    • コメント(行):Ctrl + /
    • コメント(ブロック):Ctrl + Shift + /
    • 検索:Shift,Shift
    • Compile:Ctrl + F9
    • 自動Import:Ctrl + Alt + O
    • ソースの畳み込み:Ctrl + Numpad -
    • ソースの展開:Ctrl + Numpad +
  2. デバッグ
    • ブレークポイント:Ctrl + F8
    • デバッグの実行:F9
    • デバッグの停止:Ctrl + F2
    • プログラムの再開:F9
    • ステップオーバー:F8
    • ステップイン:F7
    • ステップアウト:Shift + F8
    • カーソル位置まで実行:Alt + F9
  3. 定義
    • 定義へジャンプ:Ctrl + B
    • 参照されている箇所の表示:Alt + F7
    • ローカル変数の定義:Ctrl + Alt + V
    • フィールドの定義:Ctrl + Alt + F
    • 定数定義:Ctrl + Alt + C
    • メソッドの定義:Ctrl + Alt + M
    • strings.xml へ書き出し:Alt + Enter -> Extract string resource
  4. エミュレーター
    • Android:Home ボタン
      • Home ボタン
    • Android:Menuボタン
      • F2
    • Android:Startボタン
      • Shift + F2,PageDown?
    • Android:Backボタン
      • ESCボタン
    • Android:発信・通話ボタン
      • F3
    • Android:終話ボタン
      • F4
    • Android:検索ボタン
      • F5
    • Android:電源ボタン
      • F7
    • Android:ボリュームアップボタン
      • テンキーのプラス,Ctrl + F5
    • Android:ボリュームダウンボタン
      • テンキーのマイナス,Ctrl + F6
    • Android:カメラボタン
      • Ctrl + Numpad 5, Ctrl + F3
    • Android:横レイアウトへ切り替え
      • Ctrl + Numpad 7, Ctrl + Numpad 9
    • Android:前のレイアウトに切り替え
      • Numpad 7, または Ctrl + F11
    • Android:次のレイアウトに切り替え
      • Numpad 9, または Ctrl + F12
    • Android:方向ボタン
      • Numpad 4,8.6.2
    • Android:方向ボタンの真ん中
      • Numpad 5

Android 開発の基本

ソースのディレクトリ構造

エミュレーター

カメラをエミュレートする

その他

Log.d 種類

実行中のメソッド名を取得

StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
for (StackTraceElement stackTraceElement : stackTraceElements) {
  System.out.println("-----------------------------");
  System.out.println("ClassName  : " + stackTraceElement.getClassName());
  System.out.println("FileName   : " + stackTraceElement.getFileName());
  System.out.println("MethodName : " + stackTraceElement.getMethodName());
  System.out.println("LineNumber : " + stackTraceElement.getLineNumber());
  System.out.println("-----------------------------");
}

インテントについて

独自Classの getString について

Context を引数渡ししてあげればいい。 そうすると

argContext.getString(R.string.logdRunnning);

などで引ける。 全体的には

public void outputLogSummary(Context argContext,
                             Integer argMethodNo){
    String logComment = argContext.getString(R.string.logdRunning);
    this.outputLogSummary(argContext,argMethodNo,logComment);
}

呼び出し元は

private CommonCls pCommonCls = new CommonCls();

pCommonCls.outputLogSummary(this, METHOD_NO_MAIN_ACTIVITY);

Activity の追加

AndroidManifest?.xml に追加するのを忘れないようにしよう。
また追加は「新規」-「Activity」-「Brank Activity」で
追加するとレイアウトも一緒に追加されて便利。
以下はAndroidManifest?.xml

<activity
    android:name=".Sample0501"
    android:label="@string/title_activity_sample0501"></activity>

USB Developer options, 実機のデバッグ, 認識しない場合, debug

  1. 最初にUSBケーブルでPCと接続
  2. Android studio を起動しておく
  3. [Developer options]-[USB debugging] をオン、オフする。

R.id.IntentRequestGeneral?

PHP: Hypertext Preprocessor

http://www.php.net/

PHP,エディタ,IDE

Eclipse

Atom

Microsoft Visual Studio Code

  1. 最近はこれを使ってる。Linuxでも動く。
  2. 最近のMicrosoftは変わってLinuxと親和路線。良い感じ(^^)
  3. Install
    1. ubuntuへインストール
    2. Visual Studio Code公式ページ
      • .debのインストーラーを落とす
    3. 以下のコマンドでインストール(例)
      sudo dpkg -i code_1.51.0-1604600753_amd64.deb
  4. 日本語化
    1. プラグインのインストールから以下を検索
    2. File -> User setting -> plugin -> 「Japanese」で検索
    3. 「Install」をクリック
  5. その他プラグイン
    1. PHP IntelliSense?(ほぼ必須)
    2. PHP Debug(お好みで)
    3. Eclipse Keymap(お好みで)
      • Ctrl + Hが変なところに割り振られるが、
        以下から変更することで元に戻る。
      • 「ファイル」->「ユーザー設定」->「キーボード・ショートカット」->「Ctrl+H」で検索。
      • 不要なものを削除。
  6. PHP Debugの使用方法
    1. PHPのインストール
      sudo apt-get update
      sudo apt-get install php php-mysql
    2. Apache2のインストール
      sudo apt-get install apache2
    3. PhpInfo?の表示方法
      1. 以下のファイルを作成
        /var/www/html/phpInfo.php
      2. 中身はこんな感じ
        <?php
        
        phpinfo();
        
        ?>
      3. 表示
    4. PhpInfo?の全内容を以下のサイトにコピーして「Analyze my phpinfo() output」ボタンを押す
    5. download xdebug-2.9.8.tgz
    6. PreInstall?
      sudo apt-get install php-dev autoconf automake
    7. 解凍
      tar xzfv xdebug-2.9.8.tgz
    8. ディレクトリの移動
      cd xdebug-2.9.8
    9. 以下のコマンドを実行
      phpize
      ./configure
      make
    10. 以下のコマンドの日付っぽい数字は各環境で変わります
      sudo cp modules/xdebug.so /usr/lib/php/20170718
    11. 「/etc/php/7.2/apache2/php.ini」ファイルの編集
      sudo vim /etc/php/7.2/apache2/php.ini
    12. 以下の行を最後に追加
      ; xdebug
      zend_extension = /usr/lib/php/20170718/xdebug.so
      xdebug.remote_enable = 1
      xdebug.remote_connect_back = 1
      xdebug.remote_autostart = 1
    13. apache2の再起動
      sudo service apache2 restart
    14. 使用方法
      1. Visual Studio Code上
        PHPコードの適当な所
        ブレークポイントを設定(標準ショートカットはF9)
      2. Visual Studio Codeの左側のアイコン、上から4つ目,実行アイコンをクリック
      3. 「launch.jsonファイルを作成します」のリンクをクリック
      4. 「PHP」を選択
      5. 作られれば「launch.json」ファイルは不要なので閉じます。
      6. 「実行」->「デバッグの開始」を押します。
      7. Web Browser(Chromeなど)でアクセスします。以下は例
        http://localhost/test.php
      8. Visual Studio Code 上で止まることを確認します。

phpで、Nikonのカメラで撮ったjpeg画像から、レンズ情報を抜き出す方法

mbstringの設定

mbstring の install

yum install php-mbstring

mbstring の設定

[mbstring]
; language for internal character representation.
; http://php.net/mbstring.language
mbstring.language = Japanese ← コメント(;)をはずします。

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
; http://php.net/mbstring.internal-encoding
mbstring.internal_encoding = UTF-8 ← コメントをはずし、内部エンコーディングをUTF-8へ。

; http input encoding.
; http://php.net/mbstring.http-input
mbstring.http_input = auto ← コメント(;)をはずします。

; http output encoding. mb_output_handler must be
; registered as output buffer to function
; http://php.net/mbstring.http-output
mbstring.http_output = UTF-8 ← コメントをはずし、エンコーディングをUTF-8へ。

; enable automatic encoding translation according to
; mbstring.internal_encoding setting. Input chars are
:
; enable automatic encoding translation according to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
;       portable libs/applications.
; http://php.net/mbstring.encoding-translation
mbstring.encoding_translation = On ← コメントをはずし、Onに。

; automatic encoding detection order.
; auto means
; http://php.net/mbstring.detect-order
mbstring.detect_order = auto ← コメント(;)をはずします。

CentOS6 に PHP5.6 をインストール

EPELとRemiリポジトリを追加

旧PHPの削除

 yum remove php-*

PHP5.6のインストール

sudo yum install --enablerepo=remi,remi-php56 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt

php-mysql のインストール

sudo yum install -y http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm

 sudo yum install phpMyAdmin?

そのたダメおしインストール

 sudo yum install -y --enablerepo=epel libmcrypt libtidy

sudo yum install -y --enablerepo=remi,remi-php56 php php-devel php-pear php-mbstring php-xml php-mcrypt php-gd php-pecl-xdebug php-opcache php-pecl-apcu php-fpm php-phpunit-PHPUnit php-mysqlnd

php.iniを編集

date.timezone = "Asia/Tokyo"

mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = UTF-8
mbstring.http_output = pass
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_charset = none

php5 -> php7 へマイグレーション(CentOS7へのインストール)

Apacheのインストール

sudo yum install httpd

mysqlのインストール(CentOS7)

php のインストール(CentOS7)

sudo yum install --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-gd
sudo yum install --enablerepo=remi,remi-php70 php-mysqlnd

mysql関連のソースコード変更

その他

バージョンアップ(for zabbix)

バージョンアップ前後のバージョン

install されている php 関連パッケージを確認

rpm -qa | grep php

epel のインストール

sudo yum install epel-release

remi のインストール

sudo yum install https://rpms.remirepo.net/enterprise/remi-release-6.rpm

旧PHPの削除

yum remove php*

libwebp のインストール(したコマンドのエラー対策)

yum install libwebp --enablerepo=epel

バージョンアップ・コマンド

yum install --enablerepo=remi,remi-php71 php php-pdo php-mbstring php-common php-cli php-mysql php71-php-bcmath php-gd php-xml php-gd

エラー表示

リンク

PHPファイルで設定 1

<?php
// エラーを出力する
ini_set('display_errors', "On");
?>

PHPファイルで設定 2

<?php
// エラーを出力する
ini_set( 'display_errors', 1 );
?>

httpd.conf or .htaccess

php_flag display_errors off

php.ini

display_errors = Off

PHP,その他

fopen, fgets, したハンドルをリセットする

java

servlet の 405 エラー

Subversion

参考サイト(Linux-UbuntuでのSubversionのインストールと使い方)

Install

Subversion の設定

リポジトリの作成

sudo mkdir /home/svn/
cd /home/svn/
sudo svnadmin create test

作成したファイルの権限変更

cd /home/svn/
sudo chown -R www-data:www-data test

ElipseへSubversion client をインストールする。

Android studio, Subversionの設定(中身なし)

UML図

シーケンス図(Sequence Diagram)


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS