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とは違いがあるかもしれない。
【参考画像】
こんなツールだ!
拾ってきたftfはアプリケーションの中に置くべ!
Vim macro that contains "Escape"
Enter <Ctrl-v><Esc>. Make sure this single character instead of ^[.
:let @a='$a"Hello,Vim macro"^[j'
MacのTerminalでVimを使うときに日本語が文字化けするときの対処
Mac miniでできなくて,Macbook AirでできたのでTerminalの設定の問題だと判明。
結論:Preferences...->Settings->Advanced->Emulatonで以下の項目のチェックを外すと解決する。
Escape non-ASCII input with Control-V
Drop table with wildcard
mysql -u username -D dbname -e "show tables" -s | egrep "keyword" | xargs -I "@@" mysql -u username -D dbname -e "DROP TABLE @@;"