どうもエモンです。
最近あったAIR for Androidの不具合を報告します。
AIR for Androidでソーシャルアプリを作っていますが、どうやらAndroid4.1.2で度々画面が暗転するという不具合あるようです。ユーザからかなり報告が上がってきていたのです。
自分の手元にある端末だとそんなことにはなってなかったので放置していたのですが、どうやらNexus7でも起きているようで、これは放置できなくなりました。
暗転の原因はStageWebViewを2つ同時に使っていたからでした。
基本的には一方のStageを表示するときには、もう片方を閉じる処理を入れて解決させました。
Flashでレイヤー構造を保持したまま、別MCに貼り付けたいことがあります。
レイヤー、フレームをドラッグ&ドロップするとコピーされますが、
別MCに貼り付けたいときはどうするのか…。
レイヤー構造をフォルダに入れてコピーすると構造はコピーされるので、
その後ドラッグ&ドロップして対応しました。
FlashCCになってからやり方がかわったのでメモ
別MCで受けるためのフォルダが別途必要だったり。
公式
・レイヤーフォルダーからのフレームのコピー
・フォルダーを閉じ(タイムラインでフォルダー名の左の三角形をクリック)、フォルダー名をクリックしてフォルダー全体を選択します。
・編集/タイムライン/フレームのコピーを選択します。
・挿入/タイムライン/レイヤーフォルダーを選択し、フォルダーを作成します。
・作成したフォルダーをクリックし、編集/タイムライン/フレームのペーストを選択します。
他になにかいい方法ないでしょうか
レイヤー、フレームをドラッグ&ドロップするとコピーされますが、
別MCに貼り付けたいときはどうするのか…。
レイヤー構造をフォルダに入れてコピーすると構造はコピーされるので、
その後ドラッグ&ドロップして対応しました。
FlashCCになってからやり方がかわったのでメモ
別MCで受けるためのフォルダが別途必要だったり。
公式
・レイヤーフォルダーからのフレームのコピー
・フォルダーを閉じ(タイムラインでフォルダー名の左の三角形をクリック)、フォルダー名をクリックしてフォルダー全体を選択します。
・編集/タイムライン/フレームのコピーを選択します。
・挿入/タイムライン/レイヤーフォルダーを選択し、フォルダーを作成します。
・作成したフォルダーをクリックし、編集/タイムライン/フレームのペーストを選択します。
他になにかいい方法ないでしょうか
さくらのクラウドは大規模障害を出したらしいけど、レンタルサーバが安定しているので、さくらには期待したいところです。
さくらクラウドを導入してアプリを公開するまでのサーバ設定をメモします。
HTML5の仮想端末からSSHがつながるまで設定を行い、アプリが作れる環境まで整えます。
ファイアウォールとかネットワークの設定がGMOクラウドと比べて一手間かかる印象でした。
--以下HTML5仮想端末から
SSHでログインするときに直接rootで入られるのはよくないため、別途管理者アカウントを作ります。
taroというユーザを作成しました。
これでtaroというユーザができます。
・suコマンドを制限
この中の
がコメントアウトされているので有効にする
・rootアカウントでのsshログイン禁止
の中のPermitRootLoginをnoに変更してsshdを再起動
をそれぞれ指定する。
NETMASK=255.255.255.0のような感じで。また
以上を追加してネットワークを起動する
※これで別ターミナルからSSHがつながる。
--以下通常ターミナルから
のSELINUX=disabledを指定する
・httpdをインストール
・wgetをインストール
which wgetで調べると/usr/bin/wgetにいる。
echo $PATHで/usr/binにパスが通っていることを確認
・PHPのインストール
・mysqlのインストール
・ログインする
・パスワード設定
strtotimeでエラーがでていたのでタイムゾーンを設定する
を指定する
さくらクラウドを導入してアプリを公開するまでのサーバ設定をメモします。
HTML5の仮想端末からSSHがつながるまで設定を行い、アプリが作れる環境まで整えます。
ファイアウォールとかネットワークの設定がGMOクラウドと比べて一手間かかる印象でした。
--以下HTML5仮想端末から
管理者アカウントを作成する
SSHでログインするときに直接rootで入られるのはよくないため、別途管理者アカウントを作ります。
taroというユーザを作成しました。
useradd -g 10 taro
passwd [パスワード]
passwd [パスワード]
これでtaroというユーザができます。
・suコマンドを制限
vi /etc/pam.d/su
この中の
auth required pam_wheel.so use_uid
がコメントアウトされているので有効にする
・rootアカウントでのsshログイン禁止
vi /etc/ssh/sshd_config
の中のPermitRootLoginをnoに変更してsshdを再起動
service sshd reload
ネットワークの指定を行う
vi /etc/sysconfig/network-scripts/ifcfg-eth0
NETMASK
IPADDR
GATEWAY
NETMASK
IPADDR
GATEWAY
をそれぞれ指定する。
NETMASK=255.255.255.0のような感じで。また
IPV6INIT=no
BOOTPROTO=none
BOOTPROTO=none
以上を追加してネットワークを起動する
/etc/rc.d/init.d/network start
※これで別ターミナルからSSHがつながる。
--以下通常ターミナルから
SELINUXを無効にする
vi /etc/selinux/config
のSELINUX=disabledを指定する
公開かぎをインストール
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
ネットワーク起動しままにする
chkconfig network on
ネームサーバを設定する
/etc/resolv.conf
nameserver [もらったネームサーバその1]
nameserver [もらったネームサーバその2]
nameserver [もらったネームサーバその1]
nameserver [もらったネームサーバその2]
各種アプリ作成に必須のものをyumでインストールしていく
・httpdをインストール
yum -y install httpd
service httpd start
chkconfig httpd on
service httpd start
chkconfig httpd on
・wgetをインストール
yum list | grep wget
sudo yum install wget
sudo yum install wget
which wgetで調べると/usr/bin/wgetにいる。
echo $PATHで/usr/binにパスが通っていることを確認
・PHPのインストール
yum install php php-gd php-mbstring php-mysql
・mysqlのインストール
yum -y install mysql-server
chkconfig mysqld on
chkconfig mysqld on
・ログインする
mysql
・パスワード設定
SET PASSWORD FOR root@localhost=PASSWORD('[パスワード]');
iptablesの設定
ルールの確認
iptables -L
受信パケットを全て許可
iptables -P INPUT ACCEPT
転送パケットは全て拒否(ルーティングしないため)
iptables -P FORWARD DROP
送信パケットは全て許可
iptables -P OUTPUT ACCEPT
まず個別のルールを全て削除する
iptables -F
自分自身からの入力を許可
iptables -A INPUT -i lo -j ACCEPT
ポート別の設定
80番(www)を許可
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
・保存
/etc/init.d/iptables save
保存後、iptables を再起動する
service iptables restart
iptables -L
受信パケットを全て許可
iptables -P INPUT ACCEPT
転送パケットは全て拒否(ルーティングしないため)
iptables -P FORWARD DROP
送信パケットは全て許可
iptables -P OUTPUT ACCEPT
まず個別のルールを全て削除する
iptables -F
自分自身からの入力を許可
iptables -A INPUT -i lo -j ACCEPT
ポート別の設定
80番(www)を許可
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
・保存
/etc/init.d/iptables save
保存後、iptables を再起動する
service iptables restart
PHPにおけるタイムゾーンの設定
strtotimeでエラーがでていたのでタイムゾーンを設定する
/etc/php.ini
date.timezone = "Asia/Tokyo"
date.timezone = "Asia/Tokyo"
を指定する