桜散る・・・
インディーゲームフェスティバルのTOP20が発表されましたね。
我が「キューティーサーキット」は残念ながら選外となったのですが、選ばれたアプリの中には、インディゲーム界隈で既に話題となっていたタイトルもあったりして、結構な有名どころも応募していたことを知ってビックリ。
みんな狙うところは一緒なんですね。
というわけで・・・
目標としていたコンテストに落選、と大変残念な結果となったわけですが、逆に考えると未完成分のステージの作成やらイベント関連の構築などの「キューティーサーキット」完成版リリースまでの残作業については焦って作業する必要もない訳で、これまでのように深夜までPCの前に噛り付いて時間に追われることもない、と思うとちょっとホッとしたり。
その先を曲がったら、きっと星空が広がっている
この気持ちでがんばります。
さて・・・
急いては事を仕損じる、と諺にもあるように、何事も焦ってやると失敗しがちで、急ぐときほど落ち着いて行動するべきなんですが、時間に追われてそんなことを言ってられない状況になると、ついつい楽に解決できる方法に流れてしまい、後で大きな後悔をする羽目になったりすることってあります。
「キューティーサーキット」の場合もそうで、Unityで課金処理を実装するのはそんなに難しくないらしいのですが、製作中は余裕を持って調べることができなかったので、より簡単に実装できるアセットを購入して課金処理を作成しました。
が、つい先日、そのアセットがUpdateしたよ。とUnityからメールが来たので、ホイホイとアセットストアからダウンロードしてアップデートしたらワラワラとエラーがでる。
内容は、クラスが重複しているよ。というエラー。どうやら今回のアップデートで大幅にディレクトリ構成を変えたらしく、スクリプトファイルが上書きされず、以前のスクリプトが残ったままになっている。
ん~、なんじゃそれ、とは思ったものの、仕方なく重複分の古いファイルをポチポチと削除、すると今度は元々使用していたメソッドに対して、そんなメソッドはないよ。見たいなエラーが発生。はぁ?と、どういうこと?と調べると、ディレクトリ構成だけじゃなく、クラス名が丸々変わっていたりするものがある。
いや、いや、ありえんし。どっかの金融系システムじゃあるまいし、3社合同で開発とかしてるわけじゃないんだからi/fの整合ぐらいはちゃんとしろよ。と怒りに震えたのですが、その振り上げた拳を下ろすところはどこにもないので、至ってポーカーフェースのまま静かにソースの修正を実施。時間をかけて修正して、これで大丈夫だと思ってAndroidビルドしてみると
CommandInvokationFailure: Unable to convert classes into dex format.
ゴ━━━━(# ゚Д゚)━━━━ルァ!!
plug-inが重複ですか、そうですか。
そうです、上記のエラーがでて、詳細エラーメッセージに java.lang.IllegalArgumentException: already added とか表示される場合は、クラスファイルの多重定義になっています。
ソースレベルでのクラスファイルの重複はビルド以前にconsoleに表示されるので分かるかと思いますが、そうでない場合はPluginsフォルダ内のaar/jarファイルでクラスファイルが重複している可能性があります。
今回の場合は、バージョン違いのaar/jarファイルが重複して存在していたため、上記のエラーとなっていました。
古いaar/jarファイルを削除してスッキリさせましょう。そして、このエラーでGoogle検索してこのブログを開いてここまで読んでくれた方、ご苦労様、ありがとう。焦らずにもっと簡潔に書いてあるブログを探しましょう。
そういえば・・・
はてなブログをPro版に変えたのでドメインを取得しました。これでGoogleアドセンスに申し込める!と思って申し込んだら見事に審査に落ちました。コンテストといい落選続きです。ええ、性格が悪いからですね。
最後に宣伝
ダウンロード数は全く伸びませんが、完成版をリリースする計画は変わりません。iOS版もリリース予定です。がんばります。お子様からお年寄りまで楽しめる内容となっています。とか、プレスリリースしても今のところ全て空振りです。こちらも落選続きです。つまり、性格が悪いからですね。
と、思ったら・・・
Appliv様にレビューを掲載して頂きました。ありがとうございます。
良かった、性格悪くなかった。