カテゴリー
Android

HUAWEI端末でLog.dやLog.vが表示されないときに試すこと

久しぶりにAndroidのアプリを書いてたらLog.vが表示されないことに気づきました。
Kotlin+Realmで書いてることもあるので、書き方の問題やライブラリの使い方が間違っているのかと試行錯誤したけどうまくいかず。
ネットを調べていると同様の問題で嵌っている人の記事を見つけました。
http://eeggs.hatenablog.com/entry/2017/04/27/122207

この記事によると以下のようにするとのこと。
1. 通話アプリを起動
2. [*#*#2846579#*#*]にダイヤルする
3. 隠しメニューが開く
4. Background Settings > LOG Settingsを選択
5. 全てのチェックボックスにチェックを入れてClose

試したところ無事に表示されるようになりました。(確認端末はHUAWEI P10)
他のサイトでは*#*#となっているところが最初の*がブログシステムのせいなのか消えているところがあり正しく画面が表示できなかったので注意が必要です。

カテゴリー
Windows Atom

Atomでフリーズしたら試してみること

コマンドプロンプトでウィンドウの状態をクリアする

> atom --clear-window-state

ちなみにこの方法だとうまくいかず。

設定ファイルを消してみる

C:\Users\<ユーザ名>\.atom\storage 内のファイルを削除する。

こちらの方法でうまくいくことを確認しました。

カテゴリー
Docker nginx

Dockerでnginx, php-fpmの環境を作ったときにハマったポイント

Dockerでnginx, php-fpmを使用したとき、どうしてもPHPが動作しなかったのでメモ。

今回はDocker Composeを使用した。ディレクトリ及びファイル構成は以下の通り

nginx-php
│ docker-compose.yml
│
├─nginx
│ Dockerfile
│ server.conf
│
└─php-fpm
 Dockerfile
 index.php

docker-compse.yml

services:
 nginx:
  build: nginx/.
 ports:
  - "8080:80"
 links:
  - web
 web:
  build: php-fpm/.

nginx/Dockerfile

FROM nginx
RUN sed -i 's/server_name localhost/server_name _/g' /etc/nginx/conf.d/default.conf
ADD server.conf /etc/nginx/conf.d/server.conf

nginx/server.conf

server {
 listen 80 default_server;
 server_name localhost;
 root /var/www/html;
 index index.php index.html index.htm;
 charset utf-8;

 access_log off;
 error_log off;

 location / {
 root /var/www/html;
 try_files $uri $uri/ /index.php$is_args$args;
 }

 location ~ \.php$ {
 fastcgi_pass web:9000;
 fastcgi_index index.php;
 include fastcgi_params;
 fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
 }
}

php-fpm/Dockerfile

FROM php:fpm
RUN sed -i 's/\[::\]/0.0.0.0/g' /usr/local/etc/php-fpm.d/zz-docker.conf
COPY index.php /var/www/html

php-fpm/index.php

<?php
phpinfo();

キモは

RUN sed -i 's/server_name localhost/server_name _/g' /etc/nginx/conf.d/default.conf

のところで、default.confのserver_nameを書き換えてるところ。
これを行わないとhttp://localhost:8080でアクセスした際にdefault.confの内容が優先されPHPが動作しなかった。
server.confのlistenを変えるなどでもいいかもしれないが最終的に80番ポートでlistenするにはこれがいいのではないかと。

カテゴリー
.NET C#

.NETでHttpWebRequestを連続で使用するときの注意点

.NETでHttpRequestを連続送信する事があり、その際に「操作はタイムアウトになりました」と出てその後の通信ができなくなることがあった。

ここにも書いてある通り、3回目からエラーになることから同じ現象と思われる。

ということで、以下のように書いて動作することを確認した。

HttpWebRequest req = null;
try
{
    // リクエスト開始
    req = (HttpWebRequest)WebRequest.Create(url);
    using (var res = req.GetResponse())
    {
        var s = res.GetResponseStream();
        using (var reader = new StreamReader(s))
        {
            System.Diagnostics.Debug.WriteLine(reader.ReadToEnd());
        }
    }
}
finally
{
    if (req != null)
    {
        // 連続呼び出しでエラーになる場合があるのでその対策
        req.Abort();
    }
}
カテゴリー
Windows

Skypeがタスクバーに表示されたままになる

どの時点からかSkypeをバージョンアップした際に、Skypeがタスクバーから消えなくなってしまっていた。

機能自体がなくなったのかと思っていたが、設定がリセットされていただけだった。

メニューバーから[ツール] – [詳細] – [詳細設定] – [サインイン中はSkypeをタスクバーに表示]のチェックボックスを外すだけ。
これにずっとイライラしてたのに・・・orz

カテゴリー
Android

[Android]アプリをアンインストール後、再度インストールするとSharedPreferencesの内容が復活している問題の対処法

タイトルの通り。

Androidアプリをテストしている際にまっさらな状態からテストするために一度アンインストールして、再度インストールし起動したところ何故か前回設定した内容で復活する。

今回作ったアプリはログインを必要とするものだったが、新規にインストールしたにもかかわらずログインされた状態になっていた。

極稀にまっさらな状態になるが、基本ログインされた状態。何かキャッシュされてるのかと思っていたがどうやら原因はこれのようです。

試しに、記事の通り「設定」→「バックアップとリセット」→「自動復元」をオフにするとまっさらな状態で起動できました。

まさかインストールした一瞬で復活するとはある意味すごいけど、デバッグ中は困るなー

カテゴリー
ruby rails

Rails5を入れてみる

最近全くと言っていいほどRailsを触ってなく、しかもいつの間にか5が出ちゃってるのでとりあえず、入れてみます。

Railsのインストール

まずはgemからrailsを入れます。

gem install rails --no-ri --no-rdoc

次に任意のディレクトリで以下のコマンドを実行し、サンプルアプリケーションを作ります。

rails new sample
カテゴリー
ruby Ubuntu

Ubuntu Server 16.04 LTSにrbenvをインストールする

今までCentOS派だったけど、仕事の関係でUbuntuに鞍替えしました。
というわけで、自宅サーバもUbuntu Server 16.04 LTSに変えております。
ただし、マシンスペック低めのため32bit版…

早速、Ruby環境を作ろうと思ったけど以前はRVMで環境作ったけど、今回はrbenvを入れてみることにします。
トレンドを見るとRVMの方が多いけど、rbenvに乗り換えるって記事も多い気がする・・・(2016年9月現在)

カテゴリー
Ubuntu

急にsudoできなくなった時の対処方法

またまたUbuntuネタ

Ubuntuで急にsudoできなくなり、「xxx is not in the sudoers file.  This incident will be reported.」と出てきた時の対処法。

  1. Ubuntuを再起動する。
  2. GRUBの起動メニューからadvanced optionを選択し、リカバリーモードで起動する(末尾が(recovery mode)のものを選択)
  3. 起動が始まり、メニューが出てくるのでrootの項目を選択する。
  4. /etc/group のsudoグループにsudoしたいユーザを追記する。
  5. 再起動(通常モード)

これで、sudoできるようになると思います。

ちなみに今回の原因はusermodでセカンドグループを追加しようとして既存のグループを付け忘れたのが原因っぽいです。

カテゴリー
Linux Ubuntu

apt-get upgradeで保留された時

Ubuntuでapt-get upgradeした際に、「以下のパッケージは保留されます」と出ることがあります。
これは、他のパッケージ等にも影響が出る場合このようなメッセージが表示され勝手には更新されないようになっているようです。

特に問題がなく、更新したい場合は以下のコマンドで更新することができます。

sudo apt-get dist-upgrade

もし、いきなりの更新が不安な場合は-sオプションを付けることによって変更する範囲を確認することができます。

sudo apt-get -s dist-upgrade
PAGE TOP
モバイルバージョンを終了