2012年12月22日

[Android] 1球パターゴルフ(ver 1.1.48)をリリースしました

5ステージ追加して、合計145ステージになりました。

見た目は簡単そうですが、そう一筋縄ではいきません!

■ステージ142
stage0242.png


■ステージ144
stage0244.png

Google Play:
https://play.google.com/store/apps/details?id=com.jpn.bestyle.one_shot
posted by be-style at 19:25| Comment(0) | Android

2012年12月17日

[Android]Pankia SDK for Android(4.0.0)を導入してみた

OpenFeintが2012年12月14日にサービス停止したので、次なるプラットフォームを探しています。

探す条件としては、

・プラットフォームに登録しなくてもゲームができる ← これ大事
・ランキングがある
・実績(トロフィー)がある
・日本語が使える

まず始めに検証したのがpankiaでした。

早速導入してみようということで、ここのマニュアルに沿って作業してみました。

結果としては導入までいけたのですが、その過程でハマったことがあったので備忘メモ。
pankiaへの登録有無でゲームができるかの検証までは至っていません。
●追記●
pankiaへの登録なしでもゲームができました。
pankia登録画面右上の「×」を押すとゲーム画面に戻ってゲームを続けられました。



■導入したもの
Pankia SDK for Android


■ゲームの登録
これはマニュアルどおり、問題なかったです。

(1)pankiaのアカウントを作る

(2)管理画面にログイン

(3)画面左「Your Games」下にある「add a new game」を押下

(4)画面が「create a new game」に変わるので
・Name = アプリでpankiaの画面になったときに表示されるアプリ名(日本語OK)
・Description = アプリの概要
・Icon = アプリのアイコン
・Theme and Background = 好きなテーマを選んだり、好きな背景画像を設定できます
・Primary language = 日本語が選べる!
・OS = iOS または Android ※今回はAndroid
・Status = テスト段階なので development を選択
・Price = Free(無料アプリなので)
・Market URL = アプリのGoogle Play上のURL
・Screenshots = アプリのスクリーンショット(4枚まで)

上記を記入したら、画面下の[Create]ボタンを押してアプリの登録を完了させます


(5)(4)の登録が終わると、
・Game Key
・Game Secret
が発行されます。
これは後でpankiaをプログラムから実行するときに使用します。

管理画面での作業は以上。


■前準備 ※Eclipseを使っています
そのまま導入しようとすると、マニュアルにあるSDKのインポートの時点でエラーが出ました。
そこで、まずはAndroid SDKを最新版にするところから始めました。

(1)Eclipseメニューのヘルプ > 更新の確認
・「使用可能な更新」ウィンドウが立ち上がるので、その中からAndroid SDKに関わるところだけを選択してアップデートを実施
※詳細な手順は割愛しますが、[次へ]とか[同意する]しか押してません

(2)SDK のバージョンアップ
・(1)が完了した後にEclipseを再起動すると、「リビジョンを確認したら、今使っているのは古い。最新のSDKをインストールしよう」みたいなメッセージが表示される
・そこで[OK]を押しても SDK Managerが起動しない場合は、直接起動する(私の場合は、C:\android-sdk-windows\SDK Manager.exe)
・SDK Managerでは、アップデートorインストール可能なものにチェックマークがついているので、画面右下にある[Install packages...]を押してアップデートorインストールを実施↓

20121217pankia001.png
↑作業後にとったスクリーンショットなので、赤枠のボタンは無効になってます(汗

・結構時間がかかりますが、Android SDKのバージョンアップは以上です

(3)Eclipseをクリーンしてから起動する
・(2)の後、Eclipseが起動しないときがあります。その解決方法として、Eclipseをクリーンします。
→Windowsの場合、コマンドプロンプトが用意されているのでそれをWクリックすればOK
C:\pleiades\eclipse\eclipse.exe -clean.cmd ※Eclipseのインストール先によってパスの違いがあります

(4)annotations.jar の補充
これで準備OK!と思いきや、Android SDKをアップデートしたことで、これまでのプロジェクトで参照していた「annotations.jar」が見つからないよ!
とあらゆるプロジェクトから文句を言われるようになりました。

なので、ここから「annotations.jar」を含むzipファイルをダウンロードして解凍します。

解凍した中の
proguard4.8\examples\annotations\lib
の場所に
annotations.jar
があります。

【参考】
http://visible-true.blogspot.jp/2011/12/proguardcfg.html

あとは、既存プロジェクトで参照していた先(C:\android-sdk-windows\tools\support)にannotations.jarをコピーして、既存プロジェクトをクリーンすればエラーは消えました。
しかし、何故消えるかなぁ。


これで前準備が完了です。


■Pankia SDK for Androidのインポート ※Eclipseを使っています
いよいよPankia SDK for Android(4.0.0)の導入です。

(1)Pankia SDK for Androidのインポート
ここから最新のPankia SDK for Androidをダウンロードして解凍。
・Eclipseへのインポート手順はここのマニュアルのとおり。
→「Pankiaライブラリプロジェクトの作成」のところです

前回はこの時点でエラーが出てましたが、上記手順のとおりAndroid SDKを最新にしたらエラーは出なくなりました。


■既存アプリへの導入
今回は、Pankia専用のアクティビティを作って、既存アプリからそのアクティビティを呼び出すテストを行いました。

手順としては、
(1)Pankia用のクラス(アクティビティ)を1つ用意
(2)AndroidManifest.xmlを記述
(3)既存アプリから(1)のアクティビティを呼ぶ → Pankiaの初期画面が登場するはず
という感じ。

(1)Pankia用のクラスを用意する
必要最低限で作ると
------------------------------------------------------
package xxx.xxx.xxxxxx;
import com.pankia.Config;
import com.pankia.PankiaActivity;
public class MyPankia extends PankiaActivity {
@Override
protected Config getGameConfig() {
Config config = new Config(this,
"Game Key", //gameKey,
"Game Secret", //gameSecret,
"アプリ名", //gameTitle,
null); //Dashboard Custom Background Image
config.setIMEILoginDisabled(true);
return config;
}
@Override
public void onDestroy() {
super.onDestroy();
}
}
------------------------------------------------------

(2)AndroidManifest.xmlを記述
ここのマニュアルに記述。あとは、今回のテスト用にMyPankiaというアクティビティを用意するので、その分を追記。
------------------------------------------------------
<activity android:name="MyPankia" android:screenOrientation="portrait" />
<activity
android:name="com.pankia.ui.DashboardActivity"
android:theme="@style/Theme.PN.Dashboard"
android:configChanges="orientation|keyboardHidden"
/>
<activity
android:name="com.pankia.ui.UpdateDashboardActivity"
android:theme="@style/Theme.PN.Main"
android:configChanges="orientation|keyboardHidden"
/>
<activity
android:name="com.pankia.api.manager.IntentManager$IntentManagerActivity"
android:theme="@style/Theme.PN.Main"
android:screenOrientation="portrait"
/>
<activity android:name="com.pankia.api.util.UserKeyUtil$FindUserKeyActivity"/>
<activity android:name="com.pankia.api.util.UserKeyUtil$ReturnUserKeyActivity" >
<intent-filter>
<action android:name="com.pankia.intent.action.GET_USER_KEY" />
</intent-filter>
</activity>
<activity
android:name="com.pankia.SplashActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
</intent-filter>
</activity>
<receiver android:name="com.pankia.api.manager.SplashBroadcastReceiver" />

あと、
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="com.android.vending.BILLING" />
------------------------------------------------------

(3)既存アプリから(1)のアクティビティを呼ぶ
Activityの呼び方の詳しい内容については割愛。
------------------------------------------------------
Intent intent = new Intent(xxxxx.this, MyPankia.class);
startActivity(intent);
------------------------------------------------------
他にも、ここのマニュアルにある
・SQLCipherライブラリの追加
・ProGuardによる難読化の設定(API 8以降)
を忘れずに行う。

(4)実行すると・・・
20121217pankia002.png
pankiaの新規登録画面が登場します。
導入については以上です。

あとは、pankiaに登録せずともゲームができるかの検証です!

●追記●
pankiaへの登録なしでもゲームができました。
pankia登録画面右上の「×」を押すとゲーム画面に戻ってゲームを続けられました。
posted by be-style at 09:51| Comment(0) | Android

2012年12月16日

[Android]順番マスター(ver1.0)をリリースしました

新作Androidアプリ

順番マスター

をリリースしました!

3×3に並んだ9枚のパネルを順番通りにひたすらタップしていき、その時間を競うゲームです↓

002_20121215.png

用意されてあるステージは

・数字(1〜45)
・アルファベット(A〜Z)
・五十音(あ〜ん)

です。
ステージは随時追加していきます。

どのステージもパネルは9枚以上用意されています。
並んでいる9枚の中に必ず正解(次の1枚)が含まれているので、
正解を素早く見つけてタップしてどんどん進んでいきましょう。

パネルはランダムに登場するので予測不可能です。
初回リリース版では単純なものを挙げましたが、
今後は難易度を上げたステージを用意していく予定です。

どれも短時間でできるので、ちょっとした頭の体操に良いかもしれません。
ぜひお試しください!

開発の話をすると、UnityでNGUIを使って実現しました。
DrawCall は5〜7くらいです。

Unityで2Dゲームはできるの?
という話を聞くことがありますが、なんとか作ることができました。
動作はそれ程重くないと思います。

タイトル画面↓
001_20121215.png

ちょっとした演出で、背景ではパネルが左から右にランダムに流れてます。

ステージクリア画面↓
003_20121215.png

結果をTwitterやFacebookに共有することができます(自前プラグイン)。
今回からUnity4を使っているので、UnityとAndroid間のやりとりで日本語を使えるようになった点が非常によかったです。

今後は、テキストを扱うアプリも検討していこう!

Google Play:
https://play.google.com/store/apps/details?id=com.jpn.bestyle.junban
posted by be-style at 01:21| Comment(0) | Android

2012年11月11日

[Android] Eclipseでビルドパスに「annotations.jar」が無いと言われたときの対応

Android SDK をアップデートした後でEclipseを起動すると、
「annotations.jar が存在しないよ!」
と怒られて自働ビルドが失敗することがありました。

そのときの対処をメモ。

■Android SDKをアップデート
Eclipseを起動 > ヘルプ > 新規ソフトウェアのインストール

インストール画面が開くので、所定のURLを入れて更新を確認します↓

20121109sdk001.png

「Android DDMS」「Android 開発ツール」を選択して「次へ」。
アップデートが完了するとこんな画面が出ます↓

20121109sdk002.png

この時点でEclipseを起動すると、
「annotations.jar が存在しないよ!」
と怒られます↓

20121109sdk003.png

そういえば、さっきのアップデート完了画面で
Please update your SDK Tools to latest version.
って書いてありましたね orz


■Android SDK Managerを使って SDK Tools をアップデート
ということで、気を取り直してAndroid SDK Managerを起動します。
Eclipse からの起動はこんな感じ↓

20121109sdk004.png

Eclipse から起動しなかった場合は、直接ファイルを実行して起動させます↓
C:\android-sdk-windows\SDK Manager.exe

Android SDK Manager が起動したら、
「Android SDK Tools」「Android SDK Platform-tools」がアップデート可能になっているので
両方を選んで、画面右下の「Install XX packages...」を押します↓

20121109sdk005.png

インストール中……。

20121109sdk006.png

インストールが成功すると、ADBの再起動が求められるので「Yes」と答えます。

20121109sdk007.png

何か言われますが、「OK」で進みます。

20121109sdk008.png

これで、Eclipseを起動するとビルドパスで「annotations.jar」をちゃんと参照して
ビルドエラーが発生しなくなりました。

【参考】
Missing annotations.jar:
http://stackoverflow.com/questions/10061986/missing-annotations-jar
posted by be-style at 00:53| Comment(0) | Android

2012年10月11日

[Android] JREの自動更新を止めたいとき

UnityでAndroidを扱っているときに、JREのバージョンが話題に挙がるときがあるのですが、
過去のバージョンを扱うとうまくいくという場合がありました。

そんなとき、JREのバージョンを変えたくないけど
毎度自動更新のメッセージが毎回表示されて困るというときは、設定を変えればよさそうです。

※Windows7 の場合です

スタートメニュー > コントロールパネル

プログラムを選択↓
20121011java001.png

Javaを選択↓
20121011java002.png

JRE自動ダウンロードで「自動ダウンロードしない」を選択↓
20121011java003.png

Unity3.5.6現在、JREの最新版では問題は起きてなさそうです。
posted by be-style at 21:19| Comment(0) | Android