自分のAndroidアプリにGoogle Analyticsのカスタム変数を仕込もうとしてハマりました。
変数の値として日本語の文字列を入れたんですが、集計ページに全く表示されてきません。
元々のコードはこんな感じ
この「ユーザーが選択した商品名」が表示されたりされなかったりでした。
■失敗1
カスタム変数のキー/値とも64バイト以内でないとダメなことを知りませんでした。
■失敗2
64バイト制限を知った後、日本語1文字はUTF-8で3byteだから、21文字(=63byte)までOKと思ってました。
■失敗3
こちらの情報で
GAへ送信時にURLエンコードされることを知りました。
これだと、日本語1文字=3byte(UTF-8)=9byte(URLエンコード後)になります。
ということは、日本語7文字=63byte < 64byte までいけるハズです。
しかし、結論から言うと日本語6文字までしかダメでした。この謎が未だ解けていません。。。
一応、URLエンコード後に64バイト未満になるようStringを短縮する関数を作りました。
0 件のコメント:
コメントを投稿