2018/02/28

wxPython の SetBackgroundColour に RGB を指定する方法

SetBackgroundColour1 の引数に文字列や Colour オブジェクトを指定している例はよく見かけるのですが、RGB でしたい時はどうするのだろうと思っていました。

1
2
panel.SetBackgroundColour('blue')
panel.SetBackgroundColour(wx.Blue)
2018/02/22

measureText と getTextBounds の違い

Android の android.graphics.Paint にはテキストサイズ計測用のメソッドが2つ用意されています。 Paint#measureText(String)Paint#getTextBounds(String, int, int, Rect) ですが、これらの違いを調べてみました。

2018/02/20

信頼できない ZIP ファイルは ZipInputStream で開いてはいけない

@Java 1.8.0

ZipInputStream から取得した ZipEntrygetSize()-1 になることがあります。

1
2
3
4
5
6
7
8
private void read(InputStream is) throws IOException {
    ZipInputStream zis = new ZipInputStream(is);
    ZipEntry entry;
    while ((entry = zis.getNextEntry()) != null) {
        // getSize() が -1 になることがある
        Log.d(TAG, entry.getName() + "'s size is " + entry.getSize());
    }
}
2018/02/16

BitmapDescriptorFactory.fromResource() で "IBitmapDescriptorFactory is not initialized" が起こる場合の対処方法

@play-services-maps:11.8.0

2018/02/15

モニタをつないでいない Ubuntu の Vino に接続する

@Ubuntu 16.04 LTS

Vino はそもそも画面をミラーリングするアプリケーションなので、画面出力をしていないマシンにつなぐことは出来ません。

しかし、バックグラウンドで GUI アプリケーションを動かしておきたい場合、モニタ無しで VNC 接続したいこともあります。 そんな時は、ダミーのグラフィックドライバをインストールすることで接続出来るようになります。

参考

Vino - ArchWiki

2018/02/14

Android の emulator で物理キーボード入力が出来るようにする

以前はデフォルトで使えたと思うのだけど、いつの間にかデフォルトオフになっていたのでメモ。

2018/02/13

Windows 10 上の Ubuntu から COM ポートにアクセスする方法

このご時世にシリアル通信というのも何ですが、組み込み関係等では現役だったりします1

私は Linux 上の screen をよく使います。ただ、諸事情により Windows で開発しなければならない場合もあります。

そんな時は、Tera Term を使っていたのですが、Windows 10 では Linux が動くようになったので、Windows 10 上でも screen が動くか試してみました。

2018/02/10

Android Studio で Don't remind me again for this project を押してしまった場合の回復方法

Android Studio を使っていると Gradle plugin のアップデートを勧められることがあります。その際、"Don't remind me again for this project" を押してしまうと、2度とこのダイアログが出なくなってしまいます。

2018/02/09

コマンドラインで gradle を実行すると com.android.tools.build:gradle が見つからないエラー

既存の Android プロジェクトを Android Studio 3.0.1 で読み込んだところ、 Android Studio ではビルド出来るのに、コマンドラインでは以下のようなエラーが出るようになってしまいました。

$ ./gradlew tasks
 
FAILURE: Build failed with an exception.
 
* What went wrong:
A problem occurred configuring root project 'MyApplication'.
> Could not resolve all files for configuration ':classpath'.
   > Could not find com.android.tools.build:gradle:3.0.1.
     Searched in the following locations:
     Required by:
         project :
 
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
 
* Get more help at https://help.gradle.org
 
BUILD FAILED in 0s
2018/02/08

Raw Disk Image file を Ubuntu でマウントする方法

2018/02/07

Android Emulator で公式に Google Play が使えるようになっていた

2018/02/03

その国にいるのに「お住まいの国でご利用いただけません」と出てしまう場合の解決方法(Google Play Store)

2019/4/15 追記
コメントで、Android の Google Play アプリから設定する方法を教えていただき、追記しました。
2018/10/02 追記
知人のアカウントで再度試したところ、Google ペイメントセンターの新しいプロファイルが反映されるまで数日かかるようです。 それまでは、以下の方法でも解決出来ませんでした。

なお、新しいプロファイルが反映されたかどうかは、ブラウザで [Google Play](https://play.google.com/store) を開き該当のアプリを検索してみると、検索に出てくるかどうかでわかります。

Google Play Store の国情報を変えるには Google ペイメントセンター で新しいプロファイルを作成すれば良い。 という情報は各所で見られます。 ただ、私がその設定をして丸2日待っても情報が反映される様子がありませんでした。

何度アプリを起動しても、「このアイテムはお住まいの国でご利用いただけません」と表示されてしまいます。

2018/02/01

.desktop ファイルの Exec に環境変数を含める方法

2018/8/3 追記
`desktop-file-install` を使う方法に書き換えました。
参考: [.desktop ファイルを作ったのに Unity のランチャに表示されない場合の対処方法 | 穀風](https://kokufu.blogspot.com/2018/08/desktop-unity.html)

.desktop ファイルを desktop-file-install でインストールすると、Unity の検索に出てくるようになります。

参考

Unity のランチャにカスタムアプリを登録する(コマンドラインで) | 穀風

myapp.desktop
1
2
3
4
5
6
[Desktop Entry]
Type=Application
Name=My Application
Exec=/home/username/bin/myapp
Icon=face-angel
Terminal=false

インストール

$ desktop-file-install --dir="${HOME}/.local/share/applications" myapp.desktop