Androidで18万回以上ダウンロードされた自作アプリをWindowsストアに移植して約2ヶ月経ちました。
移植作業にはなんだかんだ言って1ヶ月近くの工数がかかってしまったのですが、その結果をまとめてみました。
ダウンロード数: 339回
広告表示回数: 1,745回
Fill Rate: 約20%
広告クリック数: 6回
広告収益: 48セント (約50円)
なんなんでしょう、この結果は。。。
あまりの少なさにがく然としています。(笑)
Windows 10のタブレットや2 in 1も増えて来たので、そろそろ行けるかな〜と期待していたのですが、Windowsストアからアプリをダウンロードして使うという使い方はまだまだそんなに広まっていないのかも知れませんね。
ちなみに広告はUWPアプリではAdMobが使えなかったので標準の「Microsoft advertising ad」というものを使ってバナー広告を表示しています。これですがFill Rateが20%って、AdMobと較べて低すぎですよね。
もちろん、宣伝の仕方やアプリのカテゴリなどによって結果は大きく変わると思います。
ただ個人的には次のアプリからはしばらくWindowsストアはパスという事に決定です。
とりあえず試してみて大体の感触が分かったのでまあ良しとして、次に行きます。^^)
2016年12月28日
cocos2d-xで作ったアプリをWindows 10 UWP対応にした時のメモ
結構苦労したので将来の自分のためにメモしておきます。
1. cocos new コマンドで新しいCocosプロジェクトを作成。
2. 必要なソースコードや画像・音声などのファイルを古いプロジェクトからコピー。
- 共通のもの
Classes ディレクトリ
Resources ディレクトリ
- iOS固有のもの
Images.xcassets ディレクトリ
ios/AppController.*
ios/RootViewController.*
- Android固有のもの
app/src/org/cocos2dx/cpp/AppAcitvity.java
app/res ディレクトリ
app/jni/Android.mk
app/jni/Application.mk
AndroidManifest.xml
ProGuard設定ファイル
- Windows固有のもの
App/Assets ディレクトリ
Windows版をビルドするために使うVisual StudioはUTF-8でかつBOM付きのファイルしか正しく扱えないので、nkfコマンドを使って全てのソース・ファイルをUTF-8 BOM付きに変換します。
カレントディレクトリ直下のファイルのみを対象にする場合
カレントディレクトリ以下の全てのディレクトリで再帰的に実行する場合
ちなみにこの処理をWindows上で実行する場合は、下のソフトウェアが便利です。
Windows上で実行した時にLabelの文字列などが文字化けする場合は、.cppファイルの先頭に下記の#pragmaを付けると良いかも知れません。(これで直ったのか他の事で直ったのか、記憶が定かではないのですが。)
Resources/fonts ディレクトリに使用したいフォントファイル(例えば「YuGothic.ttf」など)をコピーしておきます。
ソースコードではフォント名を指定する部分で "fonts/[フォントファイル名]" を使う様にします。
今回はWindows版ではアプリ内購入で広告を消す機能は省略したので、アプリ内購入に関する処理を全てコメントアウトしました。
● Cocos2d-xを最新版に更新
1. cocos new コマンドで新しいCocosプロジェクトを作成。
2. 必要なソースコードや画像・音声などのファイルを古いプロジェクトからコピー。
- 共通のもの
Classes ディレクトリ
Resources ディレクトリ
- iOS固有のもの
Images.xcassets ディレクトリ
ios/AppController.*
ios/RootViewController.*
- Android固有のもの
app/src/org/cocos2dx/cpp/AppAcitvity.java
app/res ディレクトリ
app/jni/Android.mk
app/jni/Application.mk
AndroidManifest.xml
ProGuard設定ファイル
- Windows固有のもの
App/Assets ディレクトリ
● ソースコードの文字コードを「UTF-8 BOM付」に変換
Windows版をビルドするために使うVisual StudioはUTF-8でかつBOM付きのファイルしか正しく扱えないので、nkfコマンドを使って全てのソース・ファイルをUTF-8 BOM付きに変換します。
カレントディレクトリ直下のファイルのみを対象にする場合
nkf -W -w8 --overwrite *.cpp *.h
カレントディレクトリ以下の全てのディレクトリで再帰的に実行する場合
find . -type f -name "*.cpp" -exec nkf -W -w8 --overwrite {} \;
find . -type f -name "*.h" -exec nkf -W -w8 --overwrite {} \;
ちなみにこの処理をWindows上で実行する場合は、下のソフトウェアが便利です。
文字コード変換ツール「KanjiTranslator」(フリーソフト)
● 各種エラーを修正
Windows上で実行した時にLabelの文字列などが文字化けする場合は、.cppファイルの先頭に下記の#pragmaを付けると良いかも知れません。(これで直ったのか他の事で直ったのか、記憶が定かではないのですが。)
#pragma execution_character_set("utf-8")
● 日本語フォントファイルをアプリに含める
Resources/fonts ディレクトリに使用したいフォントファイル(例えば「YuGothic.ttf」など)をコピーしておきます。
ソースコードではフォント名を指定する部分で "fonts/[フォントファイル名]" を使う様にします。
● Windows版で不要な機能をコメントアウト
今回はWindows版ではアプリ内購入で広告を消す機能は省略したので、アプリ内購入に関する処理を全てコメントアウトしました。
2016年12月3日
iOS Meetupで関数型言語を勧められたのでメモ
Elixir
[翻訳] なぜ私はElixirに賭けたか - メンテナンスプログラマになりたくなければ君もそうしろ - Qiita
Rails, Node.js の次はこれだそうです。ミリ秒ではなくマイクロ秒の単位でレスポンスを返す事が出来て、さらに200万の同時(?)接続を1台のサーバーでさばけると。来るべきIoT時代には必須の言語かも知れません。
大規模なオンラインゲームとかLINE並みのチャットサーバーとかには向いてそうだけど、現時点ではちょっと自分には必要ないかなあ、とも思うのですが上の記事を読むと確かに面白そうなので一応かじっておきたいなという気はします。
そういえば「プログラミングElixir」という本がちょっと前から気になっていてAmazonのカートに入ったままになっているので、こんどこそ買おうかな。
Clojure/ClojureScript
Clojure の Web アプリケーション開発について 1 から 10 くらいまで - Qiita
Webアプリのサーバーサイドが関数型言語で作れるとの事。
今思い出せば、私が初めて関数型言語というものの面白さに少しだけ触れたのはこのClojureについてのKindle本を通じてでした。
この本はオススメです。(たったの100円!)
FacebookのReactをいい感じに使えるReagent
ClojureScriptを使えばクライアントサイドも同じ言語で書けて、さらにビューはReactで生成出来ると。
そしてさらにClojureScriptはJavaScriptに変換されるのだから、React Native を使えばモバイル用のネイティブアプリも作ることが出来ると。
ClojureScriptとReact NativeによるiOSアプリ開発 - Qiita
re-natal: Bootstrap ClojureScript React Native apps
なるほど。これはぜひ試してみたいけど、まずはClojure勉強しないと。
Elm
Elmというミニマムでフレームワークにもなる関数型altJS言語を触ってみよう!!! - Qiita
関数型リアクティブプログラミング言語Elmに学ぶ フロントエンド開発の新しい形 【前編】 (1/5):CodeZine
ちょっと見た感じではこちらの方がClojureScriptよりもとっつき易そうな感じでしょうか。
ちょうどいつもお世話になっているEggHeadという動画学習サイトに最近Elmのコースが追加されたのでブックマークしていたところでした。
Start Using Elm to Build Web Applications * - Course by @splodingsocks @eggheadio
登録:
投稿 (Atom)