Pikaho Blog

A Newbie Engineer. @Pikaho

Android : Check if Activity is in foreground when receiving push notification

Just put this code into your custom BroadcastReceiver

try {
    String packageName = "your.package.name";
    if (!isForeground(packageName)) {
        Intent intent = new Intent(context, ReceivePushActivity.class);
        // Put parameters into the new Intent
        Bundle bundle = new Bundle();
        bundle.putString("title", title);
        bundle.putString("alert", alert);
        intent.putExtras(bundle);
        // Start Activity
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        context.startActivity(intent);
    }
} catch (Exception e) {
  // do something
}

Checker is here

public boolean isForeground(String packageName) {
    ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningTaskInfo> task = manager.getRunningTasks(1);
    ComponentName componentInfo = task.get(0).topActivity;
    if (componentInfo.getPackageName().equals(packageName)) {
        return true;
    }
    return false;
}

Use utf8mb4 on MySQL 5.7.4 for 4byte characters

MySQL utf8mb4

[1] Uninstall MySQL Packages
yum remove mysql mysql-server

[2]Remove MySQL Directory
mv /var/lib/mysql /var/lib/mysql_old_backup

[3] Install
http://tecadmin.net/install-mysql-5-7-centos-rhel/

rpm -ivh MySQL-shared-5.7.4_m14-1.el6.x86_64.rpm
rpm -ivh MySQL-server-5.7.4_m14-1.el6.x86_64.rpm
rpm -ivh MySQL-client-5.7.4_m14-1.el6.x86_64.rpm


Download
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/MySQL-5.7.4_m14-1.linux_glibc2.5.src.rpm


MySQL password setup
[1] check default password
cat /root/.mysql_secret
[2] set your password for root
mysqladmin -u root -h localhost -p password “newpassword”


vim my.cnf
[client]
default-character-set=utf8mb4
[mysqld]
character-set-server=utf8mb4
skip-character-set-client-handshake
[mysqldump]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4

Xperiaのfirmwareを書き換える@Mac

【背景】
Xperia Zにソフトウェアアップデートのお知らせがきた(゚∀゚)キタコレ!!

うきうき気分でAndroid 4.3にアップデートした( ゚∀゚ )

ネットと電話が使えなくなった、詰んだ、もう何もできねぇ

APNを再設定した、動かない、悩んだ

そもそもSIMカード認識されてない?

bmobileのサポートセンタに電話する(050とWifiがあってよかった)

アップデートしてからSIMが認識されなくなった趣旨を伝えると、それならOSをグレードダウンしろと言われる(一般顧客に要求するリテラシーが高いやつだ)

とりあえず端末の初期化ボタンをポチッ!

OSのヴァージョンは変わらず、データだけ消える\(^o^)/

げきおこぷんぷん!!

Flashtoolなるものを見つけた
http://www.flashtool.net/sshot2.php

適当にftfを拾った

スマホに適応した

スマホが起動しなくなった(´・ω・`)

しょぼーん

次はまともそうなftfを拾ってきた
http://forum.xda-developers.com/showthread.php?t=2455849

できました!

【感想】
GUIが若干古いけど当分はアップデートしないよ( ー`дー´)キリッ

【詳細】
<利用端末>Xperia Z,unlocked(C6603)
<SIM>日本通信スマホ電話SIM
<ビルド番号>10.4.B.0.569
<補足>Expansysで海外のSIMフリー版を購入したので国内のXperia Zとは違いがあるかもしれない。


【参考画像】
こんなツールだ!
f:id:gamamaru:20140202022509p:plain

拾ってきたftfはアプリケーションの中に置くべ!
f:id:gamamaru:20140202022513p:plain

MacのTerminalでVimを使うときに日本語が文字化けするときの対処

Mac miniでできなくて,Macbook AirでできたのでTerminalの設定の問題だと判明。

結論:Preferences...->Settings->Advanced->Emulatonで以下の項目のチェックを外すと解決する。

Escape non-ASCII input with Control-V