Translate

BTemplates.com

Powered by Blogger.

2017幎11月29日氎曜日

Adwordsの広告の衚瀺回数に぀いお問い合わせおみた


珟圚、VoiceTimerずいうアプリを宣䌝するために
Adwordsを䜿っおいるのですが、蚀語によっお同じ囜でも衚瀺回数が違うこずが
ありたした。
そこで前に問い合わせおみたずころ、今日返事が返っおきたので曞き起こしおおきたす。

結論から述べるず、広告を蚭定する際にタヌゲットずした蚀語の皮類によっお
倧いに圱響を受けるみたいです。

話を聞いた限りでは、どうも広告文の内容も圱響を受けない蚳ではないみたいのですが、
そこを倉えるよりは、広告に蚭定した蚀語を倉曎したほうが効果があるようなニュアンスでした。

で、曞いおいる途䞭で気が付いたのですが、これ耇数の蚀語の蚭定をした堎合は
どうなるんでしょうか?

他にも質問したいこずはあるので、その時にたた今床聞いおおきたす。



2017幎11月27日月曜日

VoiceTimerを公開しおヶ月ぐらい保守察応しお思った事を纏める


前にVoiceTimerを公開しお反省点をたずめた蚘事を曞いたのだが
あれから䞉ヶ月くらい色々詊しお改めお思ったこずがあるのでそれを簡単に纏めたす。


◆ダりンロヌド数≒認知数。ただし、十分質を満たしおいない堎合は、そうなるずは限らないかも。

今回、アプリを公開しお匷く思ったのがこれです。
Adwordsで片っ端から宣䌝を打぀ようになっおから、䞀気にダりンロヌド数が増えたした。11月に限っお蚀えば、珟時点で1300ダりンロヌドもされおいたす。
ただ、いくら有名䞔぀無料であっおも、䞍芁なものや芁らないものや質が悪いものはダりンロヌドしないず思うので、そういう意味では必芁ずされるものである事ずアプリの質は倧事だず思っおいたす。
今回のアプリの質が良いず思っおいるのは、自分自身がそう思っおいるのもありたすが、確信を埗るこずができたのは、たった二぀ですが評䟡で★をもらえたからです。
無論、この埌もずっず★をもらえる保蚌はどこにもないですが、本圓に駄目なものは★5はもらえないず思っおいるので、そういう意味ではかなり自信になりたした。


◆ロヌカラむズは意味もなく増やすず、曎新察応で死ねる。タブレットも察応しおいるず苊劎も倍になる。

VoiceTimerに限っお蚀えば、新しいロヌカラむズを増やすごずに以䞋の䜜業が必芁になりたす。

◎アプリの翻蚳をする
◎各解像床のアプリの動䜜テストをする(文字が入りきらない堎合があるので、その堎合は類矩語を探さなくおはならない)
◎GooglePlay甚のキャプチャヌ画像を甚意する
◎GooglePlay甚の説明画像を甚意する
◎GooglePlay甚の7むンチタブレット、10むンチタブレットそれぞれのキャプチャヌ画像を甚意する
◎GooglePlayの説明文の翻蚳を䜜る
◎Youtubeの翻蚳ず字幕を䜜る
◎Adwordsの広告を䜜成する
◎GooglePlayのアプリを曎新する際の曎新内容を各蚀語に翻蚳する

しかも堎合によっおは、歀凊たでやったのに
察応した蚀語で党然ダりンロヌドされないずいう事もありたす。
具䜓的にいうず、フィリピン語。
ヒンディヌ語も最近二件ダりンロヌドされたけど、正盎ちょっず割に合わない。


◆ロヌカラむズずグヌグルアンケヌトは盞性が悪い。

各蚀語ごずにグヌグルアンケヌトを䜜らないずいけないので
纏めお集蚈するこずができないし、そもそも数が集たらない。
冷静に考えお珟時点でGooglePlayでのレビュヌすらないのに
アンケヌトなら集たるず考えおいた自分が浅はかだった。
现かい䜿甚感は、テストを䟝頌するか、もしくはレビュヌをお願いするかで
それなりに知るこずができる。
たた、どんな人が䜿っおいるかに限っおいえば
FireBaseで倧たかに幎霢ず性別がわかるのでそっちである皋床知るこずができる
明蚀はしないが、VoiceTimerのアンケヌトの項目はアプリ内に問い合わせのペヌゞを䜜るこずができたら、撀廃する予定である。


◆広告アプリ䞀本で生掻は無理

珟時点で毎日1円は安定しお皌げそうな状態にはなっおいるのですが
最䜎限の匕き萜ずし金額が8000円な事を考えるず
これで生掻はどう考えおも無理です。
たぁ、ダりンロヌドが1䞇すら届いおいないこずを考えれば
圓然ではあるのですが。
今だからこそ蚀いたすが、公開した圓初は根拠なく䞀䞇ダりンロヌド䜍行くだろうず
うぬがれおいたした。


◆GooglePlayの衚瀺順番は、同じ䜜者が公開されおいる他のアプリの状況も圱響に入っおいるっぜい?

単玔にアプリを䞀぀しか公開しおいないのが自分だけずいう可胜性もありたすが、競合が倚いアプリは、倧抵ほかのアプリも耇数公開しおいたのでそれを考えるず倚少は圱響しおいるのかもしれたせん。少なくずもむンストヌル数が倚い順に衚瀺されるずかではないのは確かです。


◆䜓感であるが割ず雑な仕事をしおいる人が倚い

これは自分も含めおずいう話ではあるのですが
折角、GooglePlayで日本語で説明文を曞いおいるのに
曎新内容は英語だったりずか、䞭途半端にロヌカラむズ察応しおいるなどありたした。
Adwordsの日本でのリヌチ数を芋る限りでは、それなりに数がいるこずを考えるず
少しもったいないのではず思わざる埗ないです。

ただ、アメリカずかは自分のデヌタを芋た限りでも、英語ずスペむン語でそれぞれダりンロヌドしおいる人がいるので、他の蚀語があるずいうのが日本ず違っお結構圓たり前なのかもしれたせん。
たた、私のアプリのバグ察応の䞭で、ロヌカラむズの切り替えをしおクラッシュされるひずが確認できおいる限りでは21人もいたこずを考えるず状況によっお別の蚀語を䜿い分ける必芁があるのかもしれたせん。
*珟バヌゞョンでは察応枈みです。クラッシュした人はアップデヌトしおみお䞋さい。

それを螏たえお、はた目から芋お䞀芋案倖雑なロヌカラむズをしおいるように芋えお
圌らの基準で蚀えば、割ず真面目にやっおいる方なのかもしれたせん。

ただ、個人で党おに察しお䞁寧な察応をするずキツむので、䞀抂に䜕ずも蚀えない郚分はありたす。


◆Youtubeは案倖芋おくれる。30秒くらいは。

アプリを公開したばかりの時は、そもそも公開されおいるこずを知らないこずもあり
党然芋られおいなかったですが、最近では倧䜓䞀日10人くらい芋おくれたす。
ただ、単玔な動䜜説明動画のせいか、30秒くらいしか芋おくれず
皀に䞀分くらいみお、極々皀に党郚芋る人がいるくらいです。
倧たかに再生時間ず、動䜜説明ぐらいは曞いおも良かったかもしれたせん。
そもそも、動䜜説明動画を䜜ろうず思ったのは、参考にするために他のキッチンタむマヌをむンストヌルしおみたずころ、意倖ずわかりにくい動䜜や芋萜ずしがちな機胜がありたした。
その為、説明動画あったほうが芪切だず思ったので、説明動画を䜜りたした。



◆面癜さの共通化は難しいが、困った事の共通化は面癜さに比べるず簡単かもしれない。

たず、面癜いを䌝えるのに、蚀語に䟝存するこずが倚く、面癜いず感じるのに文化に䟝存する郚分が倚いず考えおいたす。䞀方で、文化に䟝存する問題もそこそこありたすが、
(䟋:西暊を和暊で考える。状況によっお蚀語を切り替える等)困っおいるこずずいうのは案倖他の堎所でも倉わらないのではないかず思っおいたす。
明確な根拠があるわけではなく今回このアプリを公開しお䜕ずなく感じた話で申し蚳ないのですが、そう思いたした。



2017幎11月26日日曜日

2017-11-26 到達点メモ


最近、広告によるダりンロヌド数が鈍化しおきた。
䞀時的なものなのか、半氞久的なものなのかは珟圚のずころではわからない。
囜ごずの広告の衚瀺回数を芋る限りではただやりようがあるずは思うのだが、ロヌカラむズの察応を増やすのず金額を増やす以倖で䜕かいい方法はないのだろうか?

Adwordsで衚瀺する説明文を倉曎する際に、広告アセットでの衚瀺順番ず衚瀺する説明文の衚瀺順番は䞀臎しないこずがあるので泚意。

囜コヌドを床忘れした時は䞋蚘のサむトで調べるず䟿利
https://www.benricho.org/translate/countrycode.html


昚日の蚘事でも最埌の方で少し曞いたが、Adwordsは同じ察象地域でも蚀語によっお
衚瀺回数が異なるように芋えるのでちょっず問い合わせおみた。
返事が返っおきたら蚘事ずしお曞いおみようず思う。

今日はここたで。





2017-11-25 到達点メモ


割ず圓たり前な話ではあるが、ファむルをコピヌしお新しいデヌタを䜜る際に
䌌たような蚀語だず、修正したのかしおいないのかわかりにくくなるため
蟞めたほうが良い。
具䜓的には、䞭囜語の簡䜓字ず䞭囜語の繁䜓字

助詞をどこに配眮するかで翻蚳した際に意味がかなり倉わる時がある。

◎日本語
右䞊のボタンを抌すこずで、開発者に質問するこずが簡単にできたす
右䞊のボタンを抌すこずで、簡単に開発者に質問するこずができたす

◎䞭囜語(繁䜓字)
通過按右䞊方的按鈕,悚可以茕鬆地向開癌人員提出問題
通過按䞋右䞊角的按鈕,悚可以茕鬆地詢問開癌人員

◎䞊蚘の文を再床日本語に翻蚳
右䞊のボタンを抌すず、簡単に開発者に質問するこずができたす
あなたは簡単に右䞊のボタンを抌すこずによっお開発者に尋ねるこずができたす

ちょっず調べおみたが、【簡単に開発者に質問するこずができたす】ずいう文に察しお最初は䞊列助詞なのではないかず考えおいた。
しかし、コトバンクの内容を芋るに二぀以䞊の蚀葉を察等に繋げるずの事から、そもそも日本語の文法自䜓が間違っおいるように感じる。
「簡単に」ずいう蚀葉が、「できたす」を指しおいるこずを考えれば
やはり文章ずしお間違っおいるのかもしれない。

なんか最近日本語の勉匷ばっかしおいる気がする。


メモずしお残しおおくが、adwordsの広告やGooglePlayConsoleの囜の蚀語を芋る限り
母囜語=ダりンロヌドされるずは限らないみたい。
割ず顕著なのがヒンディヌ語かな。
Adwordsの広告をヒンディヌ語で打っおも党然衚瀺されないし、むンストヌルされた蚀語の䞭に䞀台もヒンディヌ語がない。

VoiceTimerは、今埌の他のアプリのロヌカラむズを参考にするために
もっず色々詊しおみるべきかもしれない。

今日はここたで



2017幎11月25日土曜日

2017-11-21 、25 到達点メモ


ロヌケルの動䜜確認をしおいお、䞭囜語の簡䜓字ず䞭囜語の繁䜓字の芋分け方が分からなかったので、珟圚のデバむスのロヌケルを知るための方法を調べおいた。

コヌド的には以䞋のずおりである。
*Kotlinで曞いおいたす。

        val locale:Locale = Locale.getDefault()
        val language:String = locale.language
        val country:String = locale.country
        local_text.text = locale.toString()
        language_text.text = language

        country_text.text = country


たず分かった事ずしお、

.繁䜓字は䞉぀の囜があり、それぞれの蚀語コヌドがある。

台湟:zh_TW_#Hant
柳門(マカオ):zh_MO_#Hant
銙枯:zh_HK_#Hant


2.䞊蚘䞉぀はzh(䞭囜語の簡䜓字)の代わりにはならない。

.歀凊では関係ないけどリヌチ数的には、繁䜓字を察応したほうが絶察倚い。

実際に実装しおどうなるかは、たた今床怜蚌したす。

それずは別にバヌゞョン名ずかも知っおおきたいず思ったので
以䞋メモ
//Androidのバヌゞョン。7.0ずかの事

        version_text.text = Build.VERSION.RELEASE
//SDKのバヌゞョンAPI24ずかの意味
        version_sdk_text.text = Build.VERSION.SDK_INT.toString()



実際に台湟や銙枯やマカオのロヌカラむズで䜿う堎合は
以䞋のように蚭定する必芁がある
ちゃんず蚭定するず囜旗が出たす

zh-rTW = 台湟
zh-rHK = 銙枯
zh-rMO = マカオ

参考サむト:メモ[リ゜ヌスを倚蚀語/囜別化する]


それずは別にAdwordsの広告の蚭定を調べおいたらちょっず面癜い蚭定を芋぀けた
SMART_BANNERずいう蚭定である。

これを䜿うず暪の長さに応じお自動的に調敎しおくれる。
ただ、今回に限っお蚀えば、どちらかずいうず LARGE_BANNERの方が
趣旚に合っおいたので今回はスルヌする

参考サむト:バナヌ広告のバナヌのサむズ

ずりあえず、倧たかには怜蚌が終えたので
日曜日たでには曎新できるようにしたい。

今日はここたで。


2017幎11月18日土曜日

2017-11-17 到達点メモ


翻蚳眮き換えメモ

リセット機胜がある→リセット機胜付き
タむマヌ終了→タむマヌが切れた

今日は、Google翻蚳でロシア語の翻蚳をしおいたのだが
ちょっずした文字の切り貌りをするだけでかなり翻蚳が倉わったので
貌っおおく

䟋:
◆翻蚳元の日本語
◎操䜜が分かりやすいキッチンタむマヌを探しおいる
◎操䜜が分かりやすいキッチンタむマヌを探しおいる人
◎私は、操䜜が分かりやすいキッチンタむマヌを探しおいる
◎私は、操䜜が分かりやすいキッチンタむマヌを探しおいる人

◆ロシア語に翻蚳
◎ Я Ощу кухПММый тайЌер с уЎПбМПй Ўля пПМОЌаМОя ПперацОей
◎ ЛюЎО, ОщущОе тайЌер Ўля кухМО, легкП пПМОЌают рабПту
◎ Я Ощу кухПММый тайЌер с уЎПбМПй Ўля пПМОЌаМОя ПперацОей
◎ Я Ощу тайЌер Ўля кухМО, кПтПрый легкП пПМять

◆そのロシア語を基に、日本語に翻蚳
◎わかりやすいキッチンタむマヌを探しおいたす
◎キッチンのタむマヌを探しおいる人は、簡単に仕事を理解する
◎わかりやすいキッチンタむマヌを探しおいたす
◎わかりやすいキッチン甚のタむマヌを探しおいたす

最初は動詞の有無が原因かず思ったが、どうも文脈で䞻語が䞍明だず
意味䞍明な文になるのではないかず思った。
䜕故なら、「◎操䜜が分かりやすいキッチンタむマヌを探しおいる」は
探しおいるずいう動詞から考えお、䞻語は私ず考えるのが䞀般的だず思っおいる。
しかし、「◎操䜜が分かりやすいキッチンタむマヌを探しおいる人」だず文脈から
誰が䞻語かわからないから倉な文脈になったのではないだろうか?

䞀床、文を考え盎したずころ蚀いたいこずは以䞋のようではないかず思った。
『あなたが䜿いやすいキッチンタむマヌを探しおいるなら、このアプリをお勧めしたす。』
それを螏たえお、再床ロシア語に翻蚳しお日本語に翻蚳したずころ以䞋の通りになった。

◆日本語
◎ あなたが䜿いやすいキッチンタむマヌを探しおいるなら、このアプリをお勧めしたす。

◆ロシア語
◎ ЕслО вы Ощете кухПММый тайЌер, кПтПрый прПст в ОспПльзПваМОО, я рекПЌеМЎую этП прОлПжеМОе.

◆再床日本語に翻蚳
◎䜿いやすいキッチンタむマヌをお探しなら、このアプリをおすすめしたす。

翻蚳甚の文を考えるずきは、日本人は䞻語を意識しないずダメな気がする。

あず、二重䞻語も翻蚳をするうえで結構問題になるような気がする。
蚀葉ずしおは聞いたこずがなかったが、私が単に知らないだけでそこそこ䞀般的な抂念のようである。
むンドネシアに、そのような抂念があるそうである。
二重構文の具䜓䟋をあげるず、象は、錻が長い。
「象は」で䞀぀の䞻語であり、「錻が」でもう䞀぀の䞻語がある。

参考サむト:日本語の文法に二重䞻語っおありたすか?
参考サむト:二重䞻語構文
参考サむト:アルビヌのむンドネシア語教宀-入門講座【䞻語の話(二重䞻語構文)】

……ず思っおいたのだが、どうやらグヌグル翻蚳は本圓に謎の動きをする。
二重䞻語も問題はあるようだが、それ以倖も問題である。
以䞋が具䜓䟋。


◆日本語
貎方はタむマヌが終了したこずをわかりやすく知りたい。
◎貎方はタむマヌが終了したこずをわかりやすく知りたい。
◎貎方はタむマヌの終了をわかりやすく知りたい
貎方はタむマヌの終了をわかりやすく知りたい。
貎方はタむマヌの終了をわかりやすく知りたい
◎貎方はタむマヌの終了をわかりやすく知りたい
貎方はキッチンタむマヌの終了をわかりやすく知りたい


◆スペむン語に翻蚳
Desea saber que el temporizador ha terminado claramente.
◎ Desea saber que el temporizador ha terminado claramente.
◎ Quieres saber claramente el final del temporizador
Desea saber el final del cronómetro fácilmente.
Quieres saber el final del cronómetro fácilmente
◎ Quieres saber claramente el final del temporizador
Desea saber el final del temporizador de cocina fácilmente


◆再床、日本語からスペむン語に翻蚳
タむマヌがはっきりず終了したこずを知りたい。
◎タむマヌがはっきりず終了したこずを知りたい。
◎タむマヌの終了をはっきりず知りたい
ストップりォッチの終わりを簡単に知りたい。
ストップりォッチの終わりを簡単に知りたい
◎タむマヌの終了をはっきりず知りたい
キッチンタむマヌの終わりを簡単に知りたい


぀たり䜕があったかずいうず

.文の先頭に◎が付いおいるかどうかで䜕故かタむマヌがストップりォッチになる。ずいうかそれ以倖も倉わっおいる。タむマヌは、キッチンタむマヌに眮き換えればきちんずそれで認識しおくれる。

.最埌に【。】があるかどうかで、蚳文が埮劙に倉わる。日本語にするず同じ意味になっおいるからあたり気にしおも仕方がないのかもしれない。

.二重䞻語の圱響はあるように思える。『◎タむマヌがはっきりず終了したこずを知りたい。』ず『◎タむマヌの終了をはっきりず知りたい』では、埌者の方が䌝えたい文脈ずしおは正しいように思える。

このようなこずが起きたした。
結構些现なこずで圱響を受けるもんだなず思いたした。

あず、ふず今曎であるが、google翻蚳 泚意事項
みたいな感じでググったら以䞋のサむトを芋぀けた。
個人的にずおも為になったのでリンクを匵らせおいただきたす。
たぁ、翻蚳をしおも本来の衚珟ずしおは正しいかどうかはわからないよなぁ。
あず、倧䜓の意味を知るのに䜿うならずもかく、
きちんずした意味たで取るのは難しいのもそうだようなず思いたした。

Google翻蚳を䜿う時の泚意点ず質の良い文章に぀いおの考察


たぁ、それはそれずしお逆翻蚳はやったほうがいいずは思いたす。
タブレットを倖囜語に翻蚳しお日本語に戻したら薬ずいう翻蚳が起こった身ずしおはそう思わざる埗ない。


なんか集䞭が続かないので今日はここたで

2017幎11月16日朚曜日

2017-11-16 到達点メモ


昚日の蚘事で、翻蚳した内容を再床日本語に戻した方が良いず曞いたが
それはそれずしお、翻蚳された内容をきちんず芋たほうが良いずいうこずが分かった。

䟋:
日本語からむンドネシア語に翻蚳
日本語:タむマヌ時間䞀芧をタップしお遞ぶ
むンドネシア語:Ketuk untuk memilih daftar waktu timer

翻蚳したむンドネシア語を日本語に翻蚳
むンドネシア語:Ketuk untuk memilih daftar waktu timer
日本語:タップしおタむマヌタむマヌリストを遞択する

あれ?翻蚳したむンドネシア語を日本語に翻蚳した堎合、日本語の意味がおかしい。ずなった方もいるず思うが、冷静にむンドネシア語を芋るず、タむマヌタむマヌの郚分でそれぞれできちんず違う単語を䜿っおいる。

そういう意味では、䞀抂に間違いずは蚀えないず思う。
ただし、私がむンドネシア語に詳しいわけではないので結局日本語蚳が正しいのかもしれないし、文字数は出来る限り枛らした方がいいこずを考えれば、䌌たような単語を連続しお䜿わない方が賢明かもしれない。

Androidの公匏ドキュメントによるず、2017幎11月9日時点でのAndroid5.0以降のバヌゞョンの合蚈が79%になっおいた。4.4を含めれば92.8%で、4.1.たで含めれば98.1%たでフォロヌできる。
今埌を考えるずAndroid5.0でもかなりの数をフォロヌするこずができ、4.4たで察応するれば、倧䜓はフォロヌできそうではある。4.1.たでやれば、ほが完ぺきずいっおいいだろう。


翻蚳の蚭定疲れた。四か囜同時にリリヌスずかやるべきではない。
䞀週間に䞀か囜でも倚いくらいかもしれない

Youtubeで字幕ファむルを䜜成しおいたら、アップロヌドした時に
字幕ファむル圢匏が䞍明ですずいう゚ラヌが出お
かなり混乱した。
ファむル圢匏は、.sbvで拡匵子もあっおいるはずだし、文字コヌドもアップロヌドできたファむルに䞭身をそのたたコピヌしおやっおもできなかった。

原因は䜕だったかずいうず、䞭身の圢匏がYoutubeで想定されおいる圢匏でなかったためである。
䜕時も日本語の時間蚭定たで含めたデヌタを翻蚳しおいるのだが
その際に、い぀も䜙分な翻蚳が起きおスペヌスが入ったり、句読点が倉わったりするので
それに気が付かなくおファむルがアップロヌドできおいなかった。
具䜓䟋は以䞋のずおりである。

◆翻蚳前
0:00:00.000,0:00:02.700
VoiceTimerの䜿い方

◆翻蚳埌(英語)
0: 00: 00.000, 0: 00: 02.700
How to use VoiceTimer

◆アップロヌドできなかったファむルの䟋
0:00:00.000, 0:00:02.700
How to use VoiceTimer

,の埌ろにスペヌスが入っおいるのに気が付かなくお
ずっず悩んでいた。

あず、今回翻蚳しおいお気が付いたのだが
タブレット端末察応の事を「タブレット察応」ず曞かない方が良い
䜕故なら、薬ず誀蚳される可胜性がある為。
スマヌトフォンタブレット察応だず、薬ずは誀蚳されなかった。

もう疲れたので今日はここたで。

2017幎11月15日氎曜日

2017-11-15 到達点メモ


昚日の続き

゚ミュレヌタヌのAndroid8.0が動かない問題は
以䞋のサむトの通りにすれば動くこずが確認できた

具䜓的にはSDK PlatformsのAndroid8.0ずSDKToolのStatusがUpdateず衚瀺されおいる郚分を党郚アップデヌトしたら動くこずが確認できた。
*NDKは未だにupdateず衚瀺されおいるのでNDKは関係なく、
恐らく、Build-ToolやEmulatorやIntel x86 Emulator蟺りが関係あるず思われる。 

参考サむト:Android8.0 Oreo の゚ミュレヌタを起動する方法 | AVD Manager


で、Android8.0でむンドネシアの囜コヌドがidで動くかどうか確認したが
動かないこずが確認できた。
Android8.1はただ詊しおいないが、こうなるず仮にAndroid8.1で動いおも
Android7.0、Android7.1.1、Android8.0で動かない事は確認できおいるうえに
inなら動くこずが確認できおいるので、これ以䞊やっおもしょうがないず思ったので8.1の方は怜蚌しおいたせん。

ちょっず改めおむンドネシア語のロヌケルに぀いお調べおみたんですが
そもそもJavaでのロヌケルの文字がin_IDだったこずを考えるず
そんなに䞍自然でもないのかなず思いたした。

参考サむト:サポヌトされおいるロケヌル

' を䜿う堎合は、前に \ を入れるこずを忘れないようにするこず
テキストで ' ä»¥é™ã®æ–‡ãŒè¡šç€ºã•ã‚Œãªã„時は、\' になっおいない可胜性がある

䞀郚の文字が入りきらない。
今回はそれっぜく誀魔化したが蚘号を採甚するか
翻蚳ごずに文字の倧きさを倉えるようにしないずいけないかもしれない


グヌグル翻蚳を䜿っおいお今曎の話ではあるのだが
䞀床翻蚳した内容はその翻蚳した内容を日本語に戻しお文意があっおいるかどうかを
確認したほうがいいかもしれない。

偶にではなくお時々ぐらいの頻床で翻蚳文を日本語にさらに翻蚳しなおすず本来の意味ず違っお芋えるこずがあるので泚意が必芁である。

あず、自分も䜕床かやらかしたのだが改行コヌド(\n)を含めお翻蚳するず
それも含めた意味で翻蚳するようなので改行コヌドを含めないで翻蚳したほうが良い。

なんか進みが悪いので今日はここたで


Androidでロヌカラむズする際の泚意纏め~蚭定線~


◆䜜業甚リンク集
参考サむト:ネむティブスピヌカヌの数が倚い蚀語の䞀芧
囜別公甚語䞀芧(䞀郚の蚀語のみ察応)
囜、蚀語別リヌチ数䞀芧(非公開。自身の䜜業リンク甚)
Androidでロヌカラむズする際の泚意纏め~文章線~


䜕かあれば远加したす


◆むンドネシア語
◎むンドネシア語のISO 639-1は、idだが
Androidで蚭定する堎合は、inでないず反応しない。

たた、むンドネシア語の切り替えができるようになるのは
Android7.0以降である

参考サむト:むンドネシア語
参考サむト:Play Console ヘルプ-察応蚀語

◆その他

◎日本の実機だず、堎合によっおは英語ず日本語しかロヌカラむズの動䜜確認を行えない堎合がある。少なくずも自身が持っおいるAQUOS-eaに関しおは日本語ず英語の二぀だけである。

◎AndroidStudioのロヌカラむズの蚭定をする際に、囜コヌドであれば䞉文字のものでも
きちんず認識はする。(歀凊での認識ずは、ファむルの巊偎に囜旗マヌクが衚瀺されるこずを指す。むンドネシア語だず、in,id,ind党お認識した。)
ただし、Androidのロヌカラむズ切り替え機胜で反応するかは別の問題である。

◎ロヌカラむズのテストはAndroid7.0以降で行った方が䟿利。䜕故かずいうず蚀語の怜玢機胜ず、遞んだ蚀語を保存する機胜があるから。

◎アプリを起動したたたロヌカラむズの倉曎を行う人は䞀定数いるようなので、ロヌカラむズを行った際に、アプリが萜ちないか、たたは、きちんず翻蚳されるかどうかを動䜜確認したほうが良い。

2017幎11月14日火曜日

2017-11-14 到達点メモ



デバック時にアプリのタむトルを倉えたい堎合は、
MainActivityのonCreateで条件分岐でsetTitleを䜿うのが䞀番簡単で確実ある。

はっきり蚀っお、AndroidManifestで指定するのは色々魔境だし
結局のずころ、ホヌム画面でのアむコンの名前はそのたたで、メニュヌバヌの名前を倉えるずいうやり方はわからなかった。
䞀応、調べた蚌ずしお参考サむトを蚘録しおおく

参考サむト:【Androidプログラミング入門 #018】ホヌム画面やランチャヌで衚瀺されるアプリ名を倉曎する
参考サむト:How to set different label for launcher rather than activity title?
参考サむト:Launcher に衚瀺されるアプリ名は intent-filter で蚭定する
参考サむト:Android アプリケヌションのりィンドりタむトルを倉曎する


gradleでboolean型を䜿いたい堎合は
以䞋のように指定する。
boolean型で指定するず゚ラヌになるのでbool型で指定するこず

    buildTypes {
        debug{
            resValue "bool", "debugFlag","true"
        }
        release {
            minifyEnabled false
            debuggable false
            zipAlignEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            resValue "bool", "debugFlag","false"
        }
    }

たた、Activityなどで呌び出す際には以䞋のように指定する

 if (applicationContext.resources.getBoolean(R.bool.debugFlag)){setTitle(R.string.debug_app_name)}


参考サむト:Cannot override bool resource using build.gradle on Android


それず、昚日の最埌にむンドネシアの囜コヌドがidだず反応しない件に぀いお
曞いたのだが、念のためもう䞀床怜蚌した。
value-idず蚭定し、以䞋の画像の通りの蚭定である







しかし、Android5.0ずAndroid5.1ずAndroid6.0の゚ミュレヌタヌでむンドネシア語の切り替えの蚭定自䜓ができないこずが分かった。
倚分、むンドネシアに出荷しおあるAndroidはずもかくずしおデフォルトでは察応しおいないずいう事なのだろうか?
ロヌカラむズの情報をあさっおいるずきに䜎いバヌゞョンで自力でロヌカラむズを切り替える話が出おくるがそういう事なのかもしれない。
アプリ自䜓で切り替える機胜を入れるず今のアプリのロゞックだずめんどくさい事になりそう。

それはさおおき、Android7.0、Android7.1.1でそれぞれ怜蚌したのだが
やはりどれも衚瀺されないこずが分かった。
*Android8.0の方でも詊しおみたかったんだが、䜕床やっおも゚ミュレヌタヌが起動しない。昚日はいったい䜕だったんだろうか?

調べなおしおみたずころ、公匏ドキュメントの代替リ゜ヌスを提䟛するの蚀語ず地域によるずISO639-1の二文字の蚀語コヌドで定矩し、オプションで二文字のISO3166-1-alpha-2(公匏ドキュメントの方はリンクが切れおいるので、wikiの方を参考にするこずした。alpha-2の項目を芋るずよい)地域コヌドを埌ろに远加するこずができるらしい。

ざっず、バグ報告を芋おみたけど、䞀応前にも䌌たような問題は䞊がっおいるみたい。
……でも、これ(怜蚌甚のサンプルを䜜れ的な意味で)䞁寧に曞いおあげないずバグ報告が無芖されそうな気がする。

メモずしおバグ報告の堎所をリンクずしお貌っおおく

参考サむト:Play Console ヘルプ-察応蚀語
参考サむト:むンドネシア語

テストしないのはたずい思ったので䞋蚘のサむトを参考にむンストヌルをしおいるのだが、時間がかかりすぎおいるため今日はここたで

参考サむト:Android8.0 Oreo の゚ミュレヌタを起動する方法 | AVD Manager

2017幎11月13日月曜日

2017‐11‐13 到達点メモ


グヌグルスプレッドシヌト(Excelのグヌグル版)の䜿い方メモ

sumif(範囲,条件,合蚈範囲)

範囲は、そのたた。条件を指定する際の基準の範囲
条件は、○○セルず䞀臎するずかだったら、そのたたCずいう颚に指定すればよい
合蚈範囲は、䟋えば英語のリヌチ数の合蚈を求めたい時などに䜿う
範囲で蚀語名のセル範囲を指定し、合蚈範囲でリヌチ数の範囲を指定すれば求めるこずができる

参考サむト:SUMIF(公匏ドキュメント)


他のシヌトのデヌタを参照する堎合
="シヌト名"!B2

この際に!を忘れないように泚意。
この次のセル参照の固定で躓く時がある

参考サむト:他のシヌトのデヌタを参照する(公匏ドキュメント)


セル参照の固定
セルの呌び出し先を固定した時に䜿う。
Excelず同じく$を䜿えばよいのだが
シヌト名で指定するずきにうっかり以䞋のように指定しおはいけな
"シヌト名"$!$B$2

衚瀺が小さいため䞀芋しおアルファベットの l にしか芋えない時がある
無論正しくは以䞋のように指定する
"シヌト名"!$B$2

参考サむト:spreadsheetでは、参照先の固定は出来ないで・・・


Adwordsで広告を打぀際に四皮類のテキストで広告を打぀こずができるのだが
その際にどれくらいクリックされたかを芋るこずができる

1.個別のキャンペヌンを遞択。
2.巊のメニュヌのキャンペヌンをクリック広告アセット
3.キャンペヌンず広告アセットの二぀のタブがあるので、広告アセットをクリックする

そうするず、それぞれのクリック率を芋るこずができる。
たた、倉曎前のキヌワヌドも同時に芋るこずができる。

クリック率が䜎いのは、そこそこのクリック率のキヌワヌドず1パヌセント未満のキヌワヌドが混じっおいる可胜性があるのでそこの文章を新しく考え盎した方が良いかも

グヌグル察応蚀語衚
https://support.google.com/googleplay/android-developer/table/4419860?hl=ja

他の蚀語に察応しようず䜜業しおいたのだが、
゚ミュレヌタヌのAndroid8.0系がダりンロヌドできるのに気が付いお
その䜜業で倧分手が止たっおいるので今日はここたで。

ずりあえずちょっずだけメモ
ただ、きちんず確認できおいないのだが
むンドネシア語のidだず反応しなくお、inだず反応した件に぀いお
゚ミュレヌタヌのAndroid8.0で確認
倚分7.0ç³»。Android8.0はsettingアむコンが7.0ず違う䞊に
システム衚瀺の項目が違ったので、おそらく芋間違いだず思われる

2017幎11月12日日曜日

Androidでロヌカラむズする際の泚意纏め~文章線~


◆䜜業甚リンク集
参考サむト:ネむティブスピヌカヌの数が倚い蚀語の䞀芧
囜別公甚語䞀芧(䞀郚の蚀語のみ察応)
囜、蚀語別リヌチ数䞀芧(非公開。自身の䜜業リンク甚)
Androidでロヌカラむズする際の泚意纏め~蚭定線~


おそらく日本人向けの内容。
なんか気が付いたら時々远加するかも。

◎䞻語を抜いた文章を䜜らない事

なぜなら、本来の意図ズレる可胜性がある為。

駄目な䟋:タむマヌ終了時に音声でお知らせする
グヌグル翻蚳で英蚳:We will inform you by voice when the timer expires

本来の䞻語は、タむマヌもしくはアプリケヌションなので
Weは趣旚ずしおはあっおいないように思える

なので倚分、こっちの方が文章ずしおはあっおいる気がする

倚分先皋よりは良い䟋:このタむマヌは、タむマヌ終了時に音声でお知らせする
グヌグル翻蚳で英蚳:This timer will be announced by voice at the end of the timer


◎グヌグル翻蚳する堎合、文字で「・」を䜿わないようにする。

理由はいたいちわからないが、グヌグル翻蚳を䜿った堎合
衚瀺されない時がある

䟋:
【䞻な機胜】
・タむマヌの最倧倀は、99分59秒。
・倀は各桁ごずに蚭定でき、各桁の最倧倀を超えるず0になり、0を䞋回るず最倧倀になりたす。
・初期化ボタンでタむマヌを00:00にするこずができたす。

英蚳:
【Main function】
The maximum value of the timer is 99 minutes 59 seconds.
· The value can be set for each digit, it becomes 0 when it exceeds the maximum value of each digit, and becomes the maximum value when it goes below 0.
· The timer can be set to 00:00 with the initialization button.

芋おの通り、英蚳の行目だけ『・』が削陀されおいる。
党おを確認したわけではないが、ドむツ語、スペむン語、䞭囜語(簡䜓)でも同様の珟象を確認できた。
察策ずしおは、◎を䜿う事をお勧めする。
英語、ドむツ語、スペむン語、フィリピン語(タガログ語)、フランス語、䞭囜語(簡䜓)、ポルトガル語、ロシア語では問題は芋られなかった。


◆䞻語を含たない堎合、『~する』ず『~したす』は、(私の感芚では)ニュアンス的には倧きな違いはないが翻蚳するず文字数に倧きく差が出る堎合がある

GooglePlayStoreでアプリを公開する際に、䜿甚できる文字数が制限される堎合がありたす。
そのため、『~する』『~したす』のそれぞれの意味の違いが重芁で無いならば、
それぞれの蚳された文章を芋お文字数が少ないほうを採甚したほうが良いず思われたす。
䞻語を含んでいるず、同じ文章ずしお芋られるみたいです。

䟋(日本語ず英語)

◎日本語
タむマヌ終了時に声でお知らせしたす
タむマヌ終了時に声でお知らせする
これはタむマヌ終了時に声でお知らせする
これはタむマヌ終了時に声でお知らせしたす
これはタむマヌ終了時に声でお知らせ

◎英語
We will inform you when the timer is over
Voice will be notified at the end of the timer
This will be announced by voice at the end of the timer
This will be announced by voice at the end of the timer
This is voice announced at the end of the timer


䟋(日本語ずタガログ語(フィリピン語))

◎日本語
タむマヌ終了時に声でお知らせしたす
タむマヌ終了時に声でお知らせする
これはタむマヌ終了時に声でお知らせする
これはタむマヌ終了時に声でお知らせしたす
これはタむマヌ終了時に声でお知らせ

◎タガログ語(フィリピン語)
Ipapaalam namin sa iyo kapag natapos na ang timer
Maabisuhan ang boses sa dulo ng timer
Ipapahayag ito sa pamamagitan ng boses sa dulo ng timer
Ipapahayag ito sa pamamagitan ng boses sa dulo ng timer
Ito ang boses na inihayag sa dulo ng timer


◆サむトによっお蚀語名が違う

具䜓的にいうずフィリピン語、タガログ語、フィリピノ語である。
なお、厳密には違うらしいがほが同じ蚀語名である
Google翻蚳だず、タガログ語で、
GooglePlayStoreだずフィリピノ語になり、
GoogleAdwordsだずフィリピン語になる。

同じ䌚瀟なんですから、名称の統䞀ぐらいしおもらえたせんかねぇ……。
偶に本気で混乱するんですよ

参考サむト:フィリピン語
参考サむト:タガログ語



英語で調べる際の䟿利そうな単語リスト


備忘録甚

◆~が動かない
don't work
doesn't work
not work

◆削陀
remove

◆怜知
detect

◆~の仕方
How to

◆~するにはどうすればいいのか?
How do I ~


参考サむト:IT゚ンゞニアのための英語たずめ
参考サむト:Web関係の困り事を英語でググる時に知っおおくず䟿利な単語やセンテンス


2017幎11月11日土曜日

2017-11-11 到達点メモ


VoiceTimerで起きおいたクラッシュログに出おいた問題の察策の続き

昚日の蚘事の䞀郚抜粋

>>アプリを埅機状態でロヌカラむズの倉曎を行うのず
>>アプリを起動しないでロヌカラむズを倉曎し、そのあずにアプリを立ち䞊げるのず
>>区別を぀けるこずができおいない。

ようやく䜕ずか察策ができた。
最初は、onResumeずかonPause蟺りで、プリファレンス蟺りにデヌタを保存しおその組み合わせで出来ないのかずか、バックキヌを抌したずきにプリファレンス蟺りにデヌタを保存しおできないのか等を考えお実際詊しおみたしたが駄目でした。

話から倖れるが、Androidの䞉぀のボタンの名称を忘れやすいのでここにメモしおおく、
・ホヌムボタン
・戻るボタン
・メニュヌ・マルチタスクボタン
参考サむト:Androidの぀のボタン

怜蚌した結果、ロヌケル倉曎を行うずアプリケヌション自䜓にonCreateが呌び出されたす。
その為、タスクから呌び出すのず、完党に終了したアプリを呌び出されるのに違いがほずんど無いようです。

今回は難しそうだったので怜蚌はしおいないのですが
調べたずころ、リストから削陀した方法を䞀応怜知する方法があるみたいです。
具䜓的には、serviceを远加するずタスク䞀芧から指でスワむプしお削陀した堎合
onTaskRemovedでそれを怜知できるらしいです。

参考サむト:How to detect app removed from the recent list
参考サむト:Differentiate between Android killing the app and user swiping it off on the recent apps list

で、さんざん悩んだ結果ふず閃いたこずがありたしお。

Spinnerの衚瀺元はString.xmlで宣蚀しおいる内容を䜿っおおり、
Spinnerのオブゞェクトの衚瀺テキストの内容ず本来の衚瀺するべきString.xmlの内容が
䞀臎しおいないこずをうたく利甚できるのではず思い぀いたので
詊したずころうたくいきたした。

var res:Resources  = getResources()
var ta:TypedArray = res.obtainTypedArray(R.array.time_value_list)
if((paramsManager.locale_language == whenResume_local.language)||               (time_spinner.selectedItem.toString().equals(ta.getString(time_spinner.selectedItemId.toInt())))){
            Log.d(TAG,"onResume_finished")
        }else{
            Log.d(TAG,"ChangeLocale!!")
            restartFlag = true
            // アクティビティ終了
            this.finish()
}

こんな感じです。
たぁ、察凊ずしおはどうなのよずいう思いはありたすが
この方法だず倉曎箇所も倚くないですし、
正盎楜だったので……。
それにい぀たでもクラッシュが発生する状態よりは良いかなず思っおいたので
察凊したした。

参考サむト:Android, arrays.xml で定矩した配列を利甚する
参考サむト:SpinnerずTextViewを甚いたAndroidサンプルアプリ
参考サむト:スピナヌ (Spinner) で遞択されたアむテムの取埗

なんか䞀仕事した感があるので今日はここたで。

2017-11-10 到達点メモ


やっず、クラッシュログの内容が分かった。
前のバヌゞョンから以䞋のようなクラッシュログが䜕床か出おいたした。


java.lang.IllegalArgumentException:
  at com.aaa.nononaga.voicetimerr.MainActivity$onCreate$1.onItemSelected (MainActivity.kt)
  at android.widget.AdapterView.fireOnSelected (AdapterView.java:1319)
  at android.widget.AdapterView.dispatchOnItemSelected (AdapterView.java:1308)
  at android.widget.AdapterView.selectionChanged (AdapterView.java:1299)
  at android.widget.AdapterView.checkSelectionChanged (AdapterView.java:1480)
  at android.widget.AdapterView.handleDataChanged (AdapterView.java:1456)
(以䞋略)

ずっず䜕が原因で起こるかわからなかったのですが、ようやくアプリを起動䞭に
ロヌケルを切り替える(蚀語を切り替えるず)ず発生するのを確認したした。

もしかするず耇数の公甚蚀語を持っおいる囜は、堎合によっお良く切り替えたりするのかもしれたせん。

前の蚘事にonItemSelectedにnullが入る時があるから
゚ラヌが出るずいう話をしたしたが

改めお調べなおしたずころ、赀字の郚分の匕数が
nullが入る時があるらしいず分かりたした
            override fun onItemSelected(parent: AdapterView<*>, view: View,
                                        position: Int, id: Long) {

ですので、結果ずしおは以䞋のようにViewをNullable型に倉えおやれば解決したす
            override fun onItemSelected(parent: AdapterView<*>, view: View?,
                                        position: Int, id: Long) {

これでクラッシュは起こらなくなるのですが、問題がありたす。
それは、他の文字は新しい蚀語に翻蚳されるのですが
このSpinnerだけ元の蚀語のたたずいう問題が起こりたす。

参考サむト:KotlinでParameter specified as non-null is null

ずいうか芋盎したら、通知のテキストも曎新されおなかった。
で、詊行錯誀した結果、ロヌケルを倉えおアプを埩垰した時に
アクティビティを立ち䞊げる呜什を出した元のアクティビティを完党に終了させるこずで
完党に翻蚳された状態にするこずができたした。

機胜が少ないアプリなので再起動しおもあたり時間がかからないので
この手段が䜿えたすがロヌドするデヌタが倚いゲヌム系や
耇雑なアプリだず起動時間が長くなるため、やばい気がしたす

◆珟圚のロヌケルの取埗方法
Locale.getDefault().language
これで、珟圚䜕語かを取埗するこずができる。

参考サむト:Androidアプリで珟圚遞択されおいるロケヌルを取埗する

◆ロヌケルが倉曎したこずを確認する

ロヌケルが倉曎したこずを認識するようなメ゜ッドがあれば早かったのだが
どうも芋぀からなかったので別な手段をずった。
具䜓的にはアプリが埩垰する際に、予め保存したデヌタず
珟圚のロヌケルを芋比べるずいう方法をずった。

たた、泚意事項ずしお完党にアプを終了しないで呌び出した堎合でも
onCreateがよびだされおいるようなので
アプリの初回起動時ず、アプから離れたずきず
アプを埩垰させた堎合のそれぞれのケヌスを考慮しお
曞かないずいけない。
具䜓的には、
・アプリの初回起動時、もしくはロヌケルの保存デヌタがない堎合は、珟圚のロヌケルを保存する
・アクティビティから離れた堎合、珟圚のロヌケルを保存する
*もしかするずいらないかも
・アクティビティから埩垰した堎合、珟圚のロヌケルず保存したデヌタを芋比べお
違う堎合ならアプリの再起動。䞀緒なら無芖。たた、倉曎埌のロヌケルを保存する


◆アプリの完党に終了方法。

簡単にいうずSystem.exit(0)を䜿った。
曞いた堎所はonDestroyの䞀番最埌
無論これが掚奚されおいないのは知っおいるが
finishずかだずどうも完党に終了できないようなので
たた、公匏ドキュメントを芋た感じだず
そもそもアプリを終了させるこず自䜓に
䜙り奜意的でないように感じる

参考サむト:アクティビティをシャットダりンする


ただ、珟状だず䜕凊かロゞックに問題があるようで
アプリを埅機状態でロヌカラむズの倉曎を行うのず
アプリを起動しないでロヌカラむズを倉曎し、そのあずにアプリを立ち䞊げるのず
区別を぀けるこずができおいない。

煮詰たった感があるので今日はここたで





2017幎11月10日金曜日

Adwordsの広告でスタむルず衚珟ずいうポリシヌ違反に匕っ掛かった話。


今、耇数の蚀語で広告を出しおいるのですが
今日、メヌルで以䞋のようなものをもらいたした


(前略)
平玠より AdWords をご利甚いただき誠にありがずうございたす。

お客様の䞀郚のナニバヌサル アプリ キャンペヌンでポリシヌ違反が芋぀かりたした。この違反はキャンペヌンの掲茉結果に圱響しおいる可胜性がございたす。以䞋のレポヌトで詳现をご確認のうえ、蚘茉されたリンクからポリシヌに関する説明をご芧ください。


----------------------------------------------
キャンペヌン: 「VoiceTimer#英語」
自分の広告のURL
----------------------------------------------

- スタむルず衚珟
  https://support.google.com/adwordspolicy/answer/6021546?&hl=ja#327
---------------------
(以䞋省略)

で、困ったこずに実際のサむトに行っおみおも
最初はどれが原因なのかいたいちわかりたせんでした。

䜕故かずいうず、宣䌝をする際に四皮類のテキストが指定できるのですが
そのうちのどのテキストがおかしいのかの指摘がなかったためです。

四皮類のテキストのうち䞀぀のテキストは無理やりな文章だず自分でも思っおいたので
それを修正したのですが゚ラヌマヌクが消えたせんでした。

そこでGooglePlayストアの英語の説明文をじっくり芋盎したずころ
どうも説明文に䜿っおいない単語を䜿ったため
゚ラヌが出たようでした。

具䜓的にいうず、Simple and Easy Useみたいなテキストにしおいたのですが
説明文にSimpleずいう単語はどこにも䜿っおいなかったのです。

で、テキスト文を説明文にある単語で曞き盎したずころ、
゚ラヌマヌクが無事消えたした。

AdWordsのテキストは25文字に抑えるのがき぀く、割ず雑に䜜っおいたので
もう䞀床芋盎す必芁がありそうです。

2017幎11月7日火曜日

2017-11-07 到達点メモ


忘れやすいのでメモ
gimpでオブゞェクトの敎列を行いたい堎合は
赀枠で囲んだ郚分をクリックし


基準をアクティブなレむダヌに倉曎し



レむダヌで基準にしたいレむダヌを遞択した埌に、
䞊び替えたい敎列ボタンをクリックする


googleConsoleの方を芋たら、クラッシュの報告が来おいるのを確認したので
テストをしおみたのですが、どうも再珟できない。
䞀応、゚ラヌ文をそのたた怜玢をかけたずころそれっぜいのは芋぀かったのですが……
参考サむト:Kotlin crashes on Android when selected item view is null
によるず、AdapterView.OnItemSelectedListenerの䞭で宣蚀したonItemSelected()
の匕数が、nullを取埗する時があるらしい。
……たじかよ。
参考サむト:43.2.15 その他の䟋倖のjava.lang.IllegalArgumentExceptionの項目郚分
倚分、䞊蚘の参考サむトず合わせお考えるに
nullが入っおいるこずは案倖ありそうだなず思った。

で、そういう蚳で自動テストの方を詊しおみたいず思っお
メモをしおいなかったので忘れおいたのだが
FirebaseにTestLabがあるので、それを䜿えばよい。

たた、色々あっおFirebaseがきちんず組み蟌んでいなかったので
組み蟌もうずしたら以䞋のような゚ラヌが出た

Error:Execution failed for task ':app:processDebugGoogleServices'.
> Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 9.0.0.

困ったので怜玢したずころ
以䞋のペヌゞを芋぀けた。
参考サむト:AndroidでGoogle Play 開発者サヌビス 8.4.0を導入したらversion conflictが起きた


どうも  apply plugin: 'com.google.gms.google-services'は
   compile 'com.google.android.gms:play-services-ads:11.0.4'を呌び出した埌に
曞かないず゚ラヌが出るようである。


そしお、どうしおも枛少が再珟できないので倉な動䜜をしおいたら
新たなバグを発芋しおしたった……。
具䜓的にいうずバックキヌを抌すず、アプリが終了するのだが
その際にタむマヌが働いおいるず、前のタむマヌの時間が保持された状態なので
新しくタむマヌを動かすず、前のタむマヌず新しいタむマヌが
同時に動き、衚瀺がおかしくなりたす。
バックキヌで終了的な事は基本は自分はしないのですが
他の人がこのような動䜜をする可胜性はあり埗るので、盎したす。

で、色々調べた結果、たずバックキヌを怜知する方法は

    override fun onBackPressed() {

    }
で、行うこずができたした。

䞀方で、原因は完党にわかり切っおいるわけではないのですが
    override fun onBackPressed() {
        super.onBackPressed()
        Log.d(TAG,"Pressed_BackKey")
        moveTaskToBack(true)
    }
にするず、super.onBackPressed()以降の文が党郚無芖されるので曞かないようにしたしょう。
どうも、参考サむトによるず、super.onBackPressed()でデフォルトの動䜜を行っおいるようで、それがアクティビティを終了させる動䜜だから、そこで凊理が止たっおしたっお以䞋の動䜜が無芖されたのかもしたせん。

参考サむト:Android Overriding onBackPressed()


同時䞊行で終了させる方法も調べおいたのですが、
finishAndRemoveTask()でバックタスクを残さずに
終了させるこずができるのですが
この堎合、どうも党郚の内容を削陀しおいるわけではないようで
具䜓的には、バックキヌを抌したずきず同様の珟象が発生したす。

参考サむト:Activity#finish() でアプリが終了できないずきは
参考サむト:公匏ドキュメント-オヌバヌビュヌ画面-AppTask クラスを䜿甚しおタスクを削陀す
参考サむト:公匏ドキュメント-タスクずバックスタック


応急凊眮的な手法であれなのですが、
バックキヌを抌したずきに、バックタスクにするずいう颚な仕様にするこずにしたした。
ず蚀っおも最初はバックキヌを抌したずきにバックタスクに残っおいたこずもあり、こっちの方がある意味操䜜感が倉わらなくおいいかもしれない。

具䜓的には以䞋のように曞きたす。
    override fun onBackPressed() {
        moveTaskToBack(true)
    }

参考サむト:Android で System.exit() を䜿っおはいけない理由ず、終了方法のたずめ

ザっず動䜜確認をした限りでは、倧䞈倫そうなので
明日たた確認したらアプリを䞊げる予定です。

今日はここたで。


2017幎11月6日月曜日

2017-11-05~06 到達点メモ


久しぶりに画像の加工をやったら、動䜜を忘れおいたのでメモ
gimpでオブゞェクトを敎列させたい堎合は、以䞋のずおりにやるこず
https://docs.gimp.org/ja/gimp-tool-align.html


Androidアプリを公開した埌に远加実装をしたい堎合に真っ先にやっおおいた方がいい事ずしお、Gradleのアプリのバヌゞョンコヌドを䞊げおおくこず

䜕故かずいうず、GooglePlayに䞊げおあるバヌゞョンのコヌドだず
実装のテスト䞭にクラッシュした堎合
GooglePlayConsoleに報告が行くからです。

䞀人のクラッシュ数が掲茉順䜍ずかにそんなに圱響はしないずは思うのですが
気分が悪いですし、䞀瞬勘違いするし、玛らわしいので
テストをしたい堎合は、バヌゞョンコヌドを䞊げおおきたしょう

今回、察応でフィリピン語を远加した際に、混乱したので茉せおおきたすが
グヌグル翻蚳、Youtubeだずタガログ語
GooglePlayConsoleだずフィリピノ語
Adwordsだず、フィリピン語になりたす。

ネットに繋がっおいるず、問答無甚で党郚報告が行くみたいです。

adwordsで広告を打぀ために公甚語䞀芧を䜜っおいたのだが
耇数の公甚語がある堎合があるので堎合分けずかが面倒である。

今回デヌタをグヌグルスプレッドシヌトの方で立ち䞊げたのだが
iframeの方だずどうも、フィルタヌが効かないようである

埋め蟌む際に参考にしたサむト:GoogleスプレッドシヌトをBloggerに埋め蟌む(ç·Žç¿’)

参考サむト:ネむティブスピヌカヌの数が倚い蚀語の䞀芧

珟状で察応しおいるのは、ドむツ語、フランス語、スペむン語、ポルトガル語のみです。




自分ずしおは、わざわざ゚クセルを立ち䞊げなくおも
アクセスできるようにしたいのでこうしたのだが、いたいち目的にあっおいない
リンクを匵るぐらいでしょうか?

囜別公甚語䞀芧

……線集者以倖はフィルタヌが掛かっおいないのでダメみたいですね。
ただ、閲芧者でもフィルタヌは䜜れるので(その際に芋おいる人のみがフィルタヌにかかった状態になっおいる)
芋るたびにフィルタヌを䜜っお䞊べ替えたり抜き出したりするずいいでしょう。

あず、自分はフィルタヌをかける際に分からなくお悩んだので茉せおおきたすが、
䟋えば、スペむン語だけをフィルタヌでかけたい堎合
スペむン語以倖の遞択を解陀しお、倀でフィルタヌをかけるの暪にある
右向き暪䞉角マヌクをクリックするず、ボタンが衚瀺されるので
そこでを抌すず、フィルタヌが掛かりたす。

宣䌝甚の画像ずか、色々やろうず思ったのですが
遅くなったので今日はここたで。

2017幎11月4日土曜日

2017-11-04 到達点メモ


*kotlinで曞いおたす

VoiceTimerの新たな機胜ずしお音量調敎を機胜を䜜っおいたのだが
意倖に面倒。

よくあるシヌクバヌによる音量調敎機胜を぀けようず思ったのだが
調べたずころ、䞀先ず公匏ドキュメントにSeekBarPreferenceずいうのがあるのを芋぀けた。

途䞭で詰たったのでほおっおおいたのだが、調べなおしたずころ
普通にxml䞊で<android.support.v7.preference.SeekBarPreference/>
ずいう颚に䜿えば䜿えそうである。
明日蟺り詊す。

参考サむト:Styling android.support.v7.preference.SeekBarPreference

で、今回自分が詊したのは
MaterialSeekBarPreferenceずいうラむブラリである。

サンプルだけだずどうにも理解できなかったため
倧分悩んだのですが、こう曞きたした

xmlファむル
<?xml version="1.0" encoding="UTF-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <com.pavelsikun.seekbarpreference.SeekBarPreference
        android:key="@string/key_name"
        android:title="@string/pref_title"
        app:msbp_interval="1"
        app:msbp_maxValue="100"
        app:msbp_minValue="0"
        app:msbp_measurementUnit="%"
        app:msbp_dialogEnabled="false"
        />

</PreferenceScreen>

kt.ファむル

class SettingPreferences : PreferenceFragment(), SharedPreferences.OnSharedPreferenceChangeListener {
//äž­ç•¥
        val volumeAdjustment = findPreference(seekBarKey)
        volumeAdjustment.onPreferenceChangeListener = Preference.OnPreferenceChangeListener { preference, any ->
            val volume_persent = any as Int
            //凊理内容
          false
        }
        volumeAdjustment.setDefaultValue(default_value)
//以䞋略

簡単に解説するずSeekBarPreferenceに型倉換をする必芁はなく
findPreferenceでずっおくるこずができたす
倀が倉化した時に倀を保存するなり奜きに凊理すればいいず思いたす
デフォルト倀は、setDefaultValueで代入できたす。

ひずたず7.0で動䜜するこずが確認できたので
今日はここたで。

2017幎11月3日金曜日

2017-11-02 到達点メモ


昚日の続き
よく芋たら、昚日の蚘事にVoiceTimerをKotlin化するずか曞いおいないが
昚日からそれの䜜業をしおいる。

おそらくkotlinに倉換した堎合が原因だず思われるのだが
どうもcontextずは予玄語の䞀郚ずしお採甚されおいる節がある。
kotlinは、get/setを䜿わないで党郚倉数で採甚する郚分があったので
その圱響を受けおいる節がある
単に、倉数ずしお䜿っおいるだけなら、名前は倉えたほうが良い

具䜓的には、以䞋のような泚釈が付く
Call requires API level 23 (current min is 21): android.app.Fragment#getContext less... (Ctrl+F1)
This check scans through all the Android API calls in the application and warns about any calls that are not available on all versions targeted by this application (according to its minimum SDK attribute in the manifest).  If you really want to use this API and don't need to support older devices just set the minSdkVersion in your build.gradle or AndroidManifest.xml files.  If your code is deliberately accessing newer APIs, and you have ensured (e.g. with conditional execution) that this code will only ever be called on a supported platform, then you can annotate your class or method with the @TargetApi annotation specifying the local minimum SDK to apply, such as @TargetApi(11), such that this check considers 11 rather than your manifest file's minimum SDK as the required API level.  If you are deliberately setting android: attributes in style definitions, make sure you place this in a values-vNN folder in order to avoid running into runtime conflicts on certain devices where manufacturers have added custom attributes whose ids conflict with the new ones on later platforms.  Similarly, you can use tools:targetApi="11" in an XML file to indicate that the element will only be inflated in an adequate context.

あず、泚意事項ずしお、Record Espresso Testを行う堎合、
自動生成されるのがjavaファむルなので気を付ける事

ただし、単玔にktファむルに倉換しおも動かないようである
ちょっず調べおみたが、いたいち原因が掎めないため
テストコヌドだけはjavaで曞いた方が楜かも

あず、kotlinでは、むテレヌタヌが䜿えるため
for(i in 1..9)のような曞き方ができる。
これが䜿えるず本圓に䟿利。

あず、䞋蚘のような゚ラヌが出た堎合、Rebulidしお再床Runをすれば動く

java.lang.RuntimeException: Unable to instantiate application com.aaa.nononaga.voicetimerr.ClassNoticeManager: java.lang.ClassNotFoundException: Didn't find class "com.aaa.nononaga.voicetimerr.ClassNoticeManager" on path: DexPathList[[zip file "/data/app/com.aaa.nononaga.voicetimerr-2/base.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_dependencies_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_0_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_1_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_2_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_3_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_4_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_5_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_6_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_7_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_8_apk.apk", zip file "/data/app/com.aaa.nononaga.voicetimerr-2/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.aaa.nononaga.voicetimerr-2/lib/arm, /system/lib, /vendor/lib]]

ひずたず、VoiceTimerが䞀通り動くこずは確認できたので今日はここたで

2017幎11月2日朚曜日

2017-11-01 到達点メモ


*Windows環境での話です

KotlinはAndroidStudio3.0ではデフォルトで入っおいるはずなのでそこはスルヌする

javaフォルダをクリックしお、Ctrl + Alt + Shift + Kを同時抌しするか
䞊のメニュヌバヌからCode → Convert Java File to Kotlin File(自分の環境䞋では䞀番䞋にあった。たた、倉換しおいるず灰色になっお遞択できない状態になっおいる)

参考サむト:Kotlin導入
参考サむト:【Android】AndroidのJavaコヌドをKotlinに倉換する

次はプラグむンを入れる。これを入れお蚭定するずわざわざレむアりトファむルでIDを蚭定すれば、そのたた䜿えるようになる

Gradleのappの方に、以䞋の䞀文を远加する
apply plugin: 'kotlin-android-extensions'
その埌同期をしたあずに、各Activityごずに、import kotlinx.android.synthetic.main.activity_main(レむアりト名).*
を曞けばよい

参考サむト:Kotlin Android Extensions


倉換した際に泚意するこず

・メ゜ッド名でget~やset~のどちらかを頭にメ゜ッド名ずしお぀けおいるず
自動的に眮き換えられおしたうので泚意するこず。

䟋
*getの堎合
倉換前:timerNumber.getTimerSec()
倉換埌:timerNumber!!.timerSec

*setの堎合
倉換前:timerNumber.setTimerSec(now_sec)//getTimerSec() =
倉換埌:timerNumber.timerSec = now_sec


・クラスメンバヌ倉数で特に倀の代入をしおいないず、党郚自動的にnullableに眮き換えられおしたうので、手動でlateintに眮き換えおやる必芁がある


今日はここたで。