Facebook広告の画像規約についてと対策についてメモ
Facebookの広告を表示する際に、画像を設定する場合、画像による広告ができないような制限が入っている。
画像の登録自体はどんな画像でもできるが、一定時間した際に、画像に問題があるとFacebookに通知が届く。
画像に表示している文字が全体の20%を超えているためとのこと。。
通知メッセージ:
あなたの広告は、Facebook広告ガイドラインに違反しているため承認されませんでした。広告の画像や動画サムネイルに、 面積の20%を超えるテキストを使うことはできません。ただし、削除される前の広告で得られたインプレッション数やクリック数 に対しては請求されますので、ご注意ください。広告の何%がテキストかを調べるには、ヘルプセンターのこちらを参照するか、 またはグリッドツールに広告の画像をアップロードしてください。Facebook広告ガイドラインをご覧になり、広告が承認されなか ったのは誤りだとお考えの場合は、お問い合わせください.
改善(画像に含む文字率が20%とは)
目視で20%位まで下げて再度広告を表示しても、再度違反メッセージが届いてしまう事がある。
Facebookが提供しているグリッドツールで審査に通るかがわかるのでこれを使い確認すると良い。
どうやら、25分割にしたグリッドに6つ以上のグリッドに文字が掛かっているだけでもアウトの様。。
確認用グリッドツール:
https://www.facebook.com/ads/tools/text_overlay?_rdr
NeoBundleInstallエラーが出たので解決案をメモ
neobundleでvimのバンドル管理で、バンドルInstallを実行した際にvimprocのエラー発生
:NeoBundleInstall
エラー:
".vim/bundle/vimproc/autoload/vimproc_linux64.so" is not found. Please read :help vimproc and make it.
原因
対象ディレクトリへ移動し中身を確認
$ cd .vim/bundle/vimproc/autoload $ ls
vimproc_linux64.soが存在していない・・・なんでか不明・
解決
vimprocの直下まで移動
$ cd .vim/bundle/vimproc/
makeコンパイル
make
確認
$ cd .vim/bundle/vimproc/autoload $ ls
vimproc_linux64.soがあればOK
再度バンドルInstall
:NeoBundleInstall
※エラーがでなければOK
gitのmakeインストールでバージョンを最新バージョンにする方法をメモ
デフォルトでインストールされているgitのバージョンが1.7.1のため、最新バージョン1.9.0(※2015/2/25現在)にアップデートする
最新バージョンの確認
下記サイトより最新バージョンのgitを確認
https://code.google.com/p/git-core/downloads/list
※現在はgit-1.9.0.tar.gz
インストールされているgitを削除する
デフォルトインストールされているgitはyum削除しておく
$ sudo yum -y remove git
gitインストールに必要なパッケージをインストール
インストール時に必要なためあらかじめインストール
$ sudo yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker
makeインストール
ソースコードの展開ディレクトリへ移動(linuxの仕様上、ここが推奨されている)
$ cd /usr/local/src/
最新バージョンをインストールし解凍
$ sudo wget https://git-core.googlecode.com/files/git-1.9.0.tar.gz $ sudo tar zxvf git-1.9.0.tar.gz
解凍ディレクトリへ移動
$ cd git-1.9.0
設定ファイルを作成
$ sudo ./configure
コンパイル
$ sudo make
makeインストール
$ sudo make install
インストールバージョン確認
gitインストール確認
$ git --version -bash: /usr/bin/git: そのようなファイルやディレクトリはありません
※「そのようなファイルやディレクトリはありません」エラーとなる
エラーの解決 ※シンボリックリンクを作成する
git の場所を確認
$ which git /usr/local/bin/git
※エラーで表示されている「/usr/bin/git」と場所が違う
シンボリックリンクを作成
$ sudo ln -s /usr/local/bin/git /usr/bin/git
再度インストールバージョン確認
$ git --version git version 1.9.0
正しいインストールしたバージョンが表示されればOK
不要ファイルの削除
ダウンロードしたファイルと解凍ファイルを削除 ※インストール終わったので不要
$ cd /usr/local/src/ $ sudo rm -f git-1.9.0.tar.gz $ sudo rm -rf git-1.9.0
vim-quickrunでjavaプログラムを実行する方法についてメモ
vim-quickrunというvimのプラグインを使い、javaプログラムを実行する
プラグイン提供元:
https://github.com/thinca/vim-quickrun
導入
.vimrcファイルにvim-quickrunをインストールするシェルを記述する
NeoBundleを使用:
NeoBundle 'thinca/vim-quickrun'
設定
日本語対応:
alias javac = javac -J-Dfile.encoding=UTF8 alias java = javac -Dfile.encoding=UTF8
let g:quickrun_config["java"] = {'exec' : ['javac -J-Dfile.encoding=UTF8 %o %s', '%c -Dfile.encoding=UTF8 %s:t:r %a']}
参考:http://qiita.com/kuhataku/items/120e0f2606f9d9e1666e
.vimrcの反映
:NeoBundleUpdate
使い方
現在のファイル(バッファー)を実行する
バックスラッシュ + r
現在のファイル(バッファー)を言語指定で実行する
:QuickRun java
現在のファイル(バッファー)を引数指定で実行する
:QuickRun -args "test"
参考:https://github.com/thinca/vim-quickrun/blob/master/doc/quickrun.txt
open-brawserプラグインでブラウザ処理(urlの表示・文字列の検索)を自動化するについてメモ
下記のようにvimからブラウザを処理を行いたい場合に自動化してくれるopen-brawserの使い方をメモしておく
•vim上にブラウザで表示したいurlがあった場合 : コピーしてブラウザにペーストして実行という作業を自動化
•vim上にブラウザで検索したい文字列があった場合 : 文字列をコピーしてブラウザにペーストして検索を自動化
プラグイン提供元:
https://github.com/tyru/open-browser.vim
導入
.vimrcファイルにopen-brawserをインストールするシェルを記述する
NeoBundleを使用:
NeoBundle 'open-browser.vim'
設定
.vimrcへキーバインドを設定
let g:netrw_nogx = 1 nmap gx <Plug>(openbrowser-smart-search) vmap gx <Plug>(openbrowser-smart-search)
※ヴィジュアルモード・コマンドモードでgxでurl検索・文字列検索をできるようにする
.vimrcの反映
:NeoBundleUpdate
使い方
•urlの文字列にカーソルをあてて、gxコマンドでブラウザを開きurlのページを表示してくれる
•検索文字列にカーソルをあてて、gxコマンドでブラウザを開き文字列を検索したページを表示してくれる
:grepの使い方(quickfixリストの移動方法など)についてメモ
vimの内部で使用できる:grepコマンド。
:grepコマンドを使う事で、わざわざvimを中断または抜けてunixコマンドのgrepを使い、またfgで戻るなどをしなくてすむようになる
:grepの検索結果はquickfixリストというものを使うため、検索した結果をquickfixリストから辿る方法等をメモしておく
:grepの使い方
使い方:
:grep [検索文字] [検索ファイル]
例)「test」という文字列をカレントディレクトリのファイル全てから検索
:grep test *
※シェルで[ grep -n test * ] を実行したのと同じになる。-nは行番号を表示。
検索結果の辿り方
:grepで検索すると、検索に引っかかる最初の結果にカーソルが移動する。
検索結果が複数あった場合に、次に移動、前に戻る、結果一覧、指定して移動などを行う場合のコマンド一覧は下記の通り。
:cnext[cn] 次の要素にジャンプ :cprev[cp] 前の要素にジャンプ :cfirst 最初の要素にジャンプ :clast 最後の要素にジャンプ :cnfile 次のファイルの最初の要素にジャンプ :cpfile 前のファイルの最後の要素にジャンプ :cc N N番目の要素にジャンプ :copen quickfix ウィンドウをオープン :cclose quickfix ウィンドウをクローズ
※プレフィックスにcを付けると覚える
高速エミュレータ『GenyMotion(ジェニーモーション)』をインストールについてメモ
開発をする際に実機(あれば一番良い)がない場合は、エミュレータを使うことになるがデフォルトSDK搭載のエミュレータは速度がいまいち重いので、別選択肢としてGenyMotion(ジェニーモーション)が良い
GenyMotion(ジェニーモーション)について
Androidのエミュレータで最も早いとされるエミュレータ。
公式サイト:
https://www.genymotion.com/
特徴(公式サイトより)
Fast In a rush? Need to test your app on all major devices available on the market? In just three clicks, your device is ready to use. Simple Easy to install, easy to run, user-friendly interface. Perfectly integrates into your development environment thanks to Eclipse and Android Studio plugins. Powerful Control powerful sensors to test features on your app. Genymotion uses x86 architecture virtualization, making it much more efficient!
主要デバイスの対応・環境構築の速度・強力な機能が備わっているとのこと。記載されている通り、Eclipse,AndroidStudioともに組み込み可能。
無料版と有料版(1ヶ月$24.99)があり、使える機能に制限がある
制限について:
https://www.genymotion.com/#!/pricing
ダウンロード・インストール
MAC/Windowsともに実行可能で、内部でVirtualBoxを使用しているため、一緒にインストールされる。
こちら公式サイトよりダウンロード:
https://www.genymotion.com/
[Get Genymotion]ボタン > [Download]※今回はFree版 > [Get Genymotion (117.47MB)]のリンクからダウンロード
※ダウンロードはサインインが必要なため、アカウント作成すること
Genymotion起動
Genymotionの実行アイコンをクリックし立ち上がればOK
Genymotion起動でエラー(Windowsの場合) ※起動できる場合は無視
起動時にエラーダイアログが出た場合、logファイルをzipで保存(ダイアログに保存先が記載)されており、zipを解凍し、general-genymotion.logファイルにエラー内容の詳細が記載されている。
general-genymotion.logファイル参照:
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available) VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start." 2 19 12:31:59 [Genymotion] [Error] VBoxManage ("list", "hostinfo") returns 1 2 19 12:31:59 [Genymotion] [Error] Output command: "VBoxManage.exe: error: Failed to create the VirtualBox object! VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available)
「Failed to create the VirtualBox object!」でVirtualBoxのオブジェクト作成に失敗した模様。
同様現象で解決しているサイトがあったので引用
1.コンポーネントサービスを開く winキー+Rキーファイル名を指定して実行”DCOMCNFG”と入力 コンピューター→マイコンピューター→DCOMの構成→VirtualBoxApplication 2.右クリックプロパティの IDプロパティを起動したユーザーから対話ユーザーへ変更
各解像度毎の画面サイズについて(デザイナ向け)メモ
Androidはmdpi,hdpi,xdpi,xxhdpiが用意されている。※ldpi(低解像度)は日本の端末で現在存在しないため対応しなくてよい。
これはAndroidの端末の解像度に合わせてAndroidが自動的に対象の*dpiディレクトリを選択してくれる仕組みになっている。
上記ディレクトリ以外にも各解像度用に規約に合わせてディレクトリを作成することが可能だが、デザイン作成に手間がかかるのと、そこまで影響がでないため考えなくて良いと思う。
iphoneと違い、Androidの端末は解像度は数が多いため、一概にどのサイズで作ればよいかに迷うので、大多数の端末で影響がないサイズを決めて作成すると良い
サイズの比率について
mdpiを基点(3)として mdpi[3] : hdpi[4] : xdpi[6] : xxdpi[8] のサイズで画像を作成することが必要。
正しい比率にすることでいずれかの解像度で縦だけまたは横だけ画像が伸びて表示してみえたりすることがなくなる。
※アスペクト(縦横比率)により画像が伸びる場合は比率の問題ではないので考えから除外する
画面解像度について
小さい画像を、端末解像度で縦横を伸ばす場合は、文字にジャギーや、ぼやしがかかる可能性があるので、大きいサイズに合わせたほうが良い。
存在しているキャリア端末で大まかにカバーできるサイズを決めて作成すると良い。
参考サイズ:
mdpi 360 * 640
hdpi 540 * 960
xdpi 720 * 1280
xxhdpi 1080 * 1920
※mdpiを基点に3:4:6:8で倍率を合わせて計算している
現在発売されているAndroid端末解像度情報の参考:
http://case-mobile-design.com/devices/resolution-list/
ctagsを設定して定義元クラス・メソッドへ遷移する方法をメモ
ctagはEclipseなどのIDEにはある定義元へ遷移する機能をvimなどのエディタで使えるようにするためtagを作成するためのもの。
プロジェクト(php,ruby,perl,javaなど)のコードから定義元のtagを作成する。このctagで作成したtagをつかうことで定義元クラス・メソッドへ遷移する機能を使用できるようになる仕組み。
tagは非常に開発で便利なので是非入れたほうが良い
ctagsインストール
Mac(homebrew)の場合:
brew install ctags alias ctags="`brew --prefix`/bin/ctags"
[alias ctags="`brew --prefix`/bin/ctags"]の部分はエイリアスのため、.bashrc,.zshrcなどのシェルに記載でもよい
参考:http://nob-log.info/2012/07/29/ctags-illegal-option/
設定したエイリアスの確認
alias
設定したエイリアスの削除
unalias [エイリアス名]
CentOSの場合:
yum install ctags
Ubuntuの場合:
sudo apt-get install exuberant-ctags
ctagsの設定
$HOME/に.ctagsのドットファイルを作成する
touch .ctags
--append=yes --recurse=yes --php-kinds=cfd --html-kinds=af --java-kinds=cfimp --ruby-kinds=cfm --perl-kinds
–append=yes ➡ tagsが既にあれば上書きではなく追加
–recurse=yes ➡ 配下ディレクトリを再起的にタグ作成するかどうか(-Rと同じ)
–[言語]–kind ➡ なんのタグを作成するかの設定(c=classなど)
参考:http://hp.vector.co.jp/authors/VA025040/ctags/help_j.html
対象言語拡張子の確認
対象言語の拡張子を確認:
ctags --list-maps
結果:
Ant *.build.xml Asm *.asm *.ASM *.s *.S *.A51 *.29[kK] *.[68][68][kKsSxX] *.[xX][68][68] Asp *.asp *.asa Awk *.awk *.gawk *.mawk Basic *.bas *.bi *.bb *.pb BETA *.bet C *.c C++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx C# *.cs Cobol *.cbl *.cob *.CBL *.COB DosBatch *.bat *.cmd Eiffel *.e Erlang *.erl *.ERL *.hrl *.HRL Flex *.as *.mxml Fortran *.f *.for *.ftn *.f77 *.f90 *.f95 HTML *.htm *.html Java *.java JavaScript *.js Lisp *.cl *.clisp *.el *.l *.lisp *.lsp Lua *.lua Make *.mak *.mk [Mm]akefile GNUmakefile MatLab *.m OCaml *.ml *.mli Pascal *.p *.pas Perl *.pl *.pm *.plx *.perl PHP *.php *.php3 *.phtml Python *.py *.pyx *.pxd *.pxi *.scons REXX *.cmd *.rexx *.rx Ruby *.rb *.ruby Scheme *.SCM *.SM *.sch *.scheme *.scm *.sm Sh *.sh *.SH *.bsh *.bash *.ksh *.zsh SLang *.sl SML *.sml *.sig SQL *.sql Tcl *.tcl *.tk *.wish *.itcl Tex *.tex Vera *.vr *.vri *.vrh Verilog *.v VHDL *.vhdl *.vhd Vim *.vim YACC *.y
※言語に拡張子を追加する場合は.ctagsへ–langmapを設定するとできる
tag作成
対象プロジェクトディレクトリ内で実行
ctags
※-Rオプションは不要(.ctagsで–recurse=yesに指定してるため)
ディレクトリ直下にtagsファイルが生成されていればOK
vim-tagsプラグイン導入
プログラミング中にあたらしく追加されたコードからtagを毎回作成するのを自動化してくれるvimプラグイン「vim-tags」を導入
※参考:https://github.com/szw/vim-tags
neobundleを使っている場合:
NeoBundle 'szw/vim-tags'
使い方:
:TagsGenerate
※これでtagを再構築してくれる
vimでの使い方
ショートカット:
定義へ移動 = Ctrl + ]
定義へ移動(複数ある場合にプロンプト表示)= g + Ctrl + ]
履歴戻る = Ctrl + t or Ctrl + 0 or :pop
定義へ移動で常に複数ある可能性を考えてvimrcにキーバインドを変更しておくと良い
nnoremap <C-]> g<C-]>
課金テストのためベータ版を公開する手順についてメモ
アプリの課金をテストするためには、アプリを公開しないとできない仕様に変わった模様なので手順
1.APKファイルをアップ
GooglePlayデベロッパーコンソールより、リリース版で作成したAPKファイルを「ベータ版」登録する
2.各種必要情報を登録
GooglePlayデベロッパーコンソールより、下記、アプリ公開をする場合に必要となるファイルや設定を行う
全て必須のためテスト用の画像やプライバシーポリシーURLも適当に設定しておく。
※実際にAPK公開されないため、仮データで問題なし
高解像度アイコンを追加する必要があります。 [日本語 – ja-JP] 宣伝用画像を追加する必要があります。 [日本語 – ja-JP] Android TV 以外のスクリーンショットを少なくとも 2 枚追加する必要があります。 [日本語 – ja-JP] カテゴリを選択する必要があります。 コンテンツのレーティングを選択する必要があります。 簡単な説明を追加する必要があります。 [日本語 – ja-JP] 詳細な説明を追加する必要があります。 [日本語 – ja-JP] このアプリがコンテンツ ガイドラインに準拠していることを確認する必要があります。 このアプリが米国輸出法に準拠していることを確認する必要があります。 プライバシー ポリシーの URL を入力する必要があります。
3.アプリ公開
「2.各種必要情報を登録」まで完了すると、GooglePlayデベロッパーコンソール右上の「アプリ公開」ボタンが活性状態となるので、こちらを押して完了。
※文言的にアプリがマーケット公開されないか心配してしまうが、この段階では公開されないので大丈夫
数時間すると設定が反映されるため課金のテストが行えるようになる。
注意
ベータ版の登録したタブ情報から「製品版にプロモート」があるが、これでアプリが公開されてしまうため、おしちゃだめ。
たまに使うコマンドリストについてメモ
cd,lsなどの基本コマンド以外で、たまに使い覚えておいたほうがいいコマンドを忘れないよう。
コマンドリスト
サービスの現在のステータス表示
service --status-all
OSブート時に自動起動するサービス表示
chkconfig --list
dotファイルなどのスクリプトの即時反映
source [対象のスクリプトファイル名]
リモートマシン間でファイルコピー
scp -r [ファイル名 or ディレクトリ名] [ユーザ名@ホスト名:リモートサーバのディレクトリ]
※rオプションで再起的にディレクトリ配下のファイルを転送
coffee-break
Don't write code that useless.
1日5杯はコーヒー、カフェオレ飲みます。狭心症のため安静にします☆松本 雄貴
Kotlinでサービスリリース目指す!
iOSでチャットアプリ作成中。自然言語解析LSIを習得中
Mac / Android・iOS / Rails / Oracle
2017年 Lpic L2取得
2012年 Android技術者資格取得
2010年 OracleMasterGold10g取得
2008年 CCNAQiitaもたまに投稿
https://qiita.com/y-matsumoto東京近郊で常駐開発探してる方はこちらよりご連絡ください
SES企業でパートナー会社を探している企業様はこちらよりご連絡ください
スプリットカメラ iOS / Android
音声認識で聞いた日付から曜日当てアプリ Android
ソーシャルタイマー Android
カテゴリー
- ActiveRecord (2)
- Android (52)
- AndroidStudio (10)
- Ansible (1)
- AWS (1)
- Bash (18)
- Blog (7)
- BootStrap (1)
- CentOS (16)
- Chef (1)
- css (2)
- Eclipse (5)
- error (1)
- Facebook (2)
- Firebase (1)
- FuelPHP (16)
- Git (22)
- GitHub (3)
- Gradle (2)
- GraphAPI (1)
- Grunt (1)
- heroku (2)
- illustrator (1)
- iOS (17)
- Java (4)
- Jenkins (1)
- jQuery (3)
- Kotlin (2)
- Mac (22)
- nginx (1)
- Node.js (3)
- peco (1)
- php (5)
- Python (1)
- Rails (16)
- Ruby (11)
- shell (1)
- SNS (1)
- Swift (2)
- tmux (2)
- Vagrant (6)
- Vim (6)
- windows (2)
- WordPress (3)
- zsh (4)
- フリーランス (1)
- ライブラリ (1)
- 勉強会 (2)
- 宣伝 (1)
- 未分類 (2)
最近の投稿
- [MAC]HighSierraでgitプッシュエラー「Unable to negotiate with xxx.xxx.xxx.xxx port xx: no matching cipher found. Their offer: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se fatal: Could not read from remote repository.」
- [iOS]iOS11からFacebook,Twitter連携(シェアなど)廃止の対応方法
- [iOS]速報2017AppleSpecialEventのiOS11、iPhone8など発表内容について
- [iOS][Firebase]The default Firebase app has not yet been configured. Add `[FIRApp configure];
- [iOS]2017年9月リリースのiOS11で開発者が対応するべきこと
- 今人気の現金化サービスCASH(キャッシュ)を使ったレビュー
- [Pandoc][Mac]pandocでmarkdownからwordファイル作成
- [Android]映画サマーウォーズの聞いた日付(誕生日)から曜日当てをアプリ音声認識で簡単に実現
- [Android]起動しているActivityを取得するadb shell コマンド
- [Android][Kotlin]kotlin学習で参考になるサイト一覧
アーカイブ
- 2018年5月
- 2017年9月
- 2017年8月
- 2017年7月
- 2017年6月
- 2017年5月
- 2017年2月
- 2017年1月
- 2016年12月
- 2016年7月
- 2016年6月
- 2016年1月
- 2015年12月
- 2015年11月
- 2015年10月
- 2015年9月
- 2015年8月
- 2015年7月
- 2015年6月
- 2015年5月
- 2015年4月
- 2015年3月
- 2015年2月
- 2015年1月
- 2014年12月
- 2014年11月
- 2014年6月
- 2014年5月
- 2014年4月
- 2014年3月
- 2014年2月
- 2014年1月
- 2013年12月
- 2013年11月
- 2013年9月
- 2013年8月
- 2013年7月
- 2013年6月
- 2013年5月
- 2013年4月
- 2013年3月
- 2013年2月
- 2013年1月
- 2012年12月
- 2012年10月
- 2012年5月
- 2010年6月
おすすめ備忘録
- [Android]Xperia機種依存バグ(TextViewのbackgroundイメージ指定のバグについて)
- [iOS][Mac]iOSアプリ申請時に必要なスクリーンショット画像のサイズとリサイズについて
- [FuelPHP]opauthライブラリfacebook認証のアクセストークン有効期限メモ
- [iOS]iOS11からFacebook,Twitter連携(シェアなど)廃止の対応方法
- [Facebook]2017/7/8のGraphAPI期限切れ対応「Reminder: Graph API v2.3 will be deprecated on July 10, 2017. Please use the API Upgrade Tool to understand how this might impact your app. For more details see the changelog.」
エントリ