京都町アプリ小路上ル

京都在住のカフェ好きゲームクリエイターが書く、アプリ開発、ゲーム作り、あと京都カフェ情報

オンライン対戦が熱い! お手軽格闘ゲームがパワーアップして帰ってきた!

格闘ゲーム「木拳」 〜暇つぶしにオンライン対戦!無料アプリ〜

格闘ゲーム「木拳」iOS
格闘ゲーム「木拳」Android

Android Studioで自動的に含まれるパーミッション(android.permission.WAKE_LOCK)の削除方法

環境:

Android Studio 3.0

Google Play Services 11.6.0

 

Gradleで

compile 'com.google.android.gms:play-services-analytics:11.6.0'

とかやると自動的に不要なパーミッションが付いてしまいます。

 

android.permission.WAKE_LOCK

 

Google公式のアナリティクス実装ガイドには、オプションだから入れなくてもいいって書いてあるんだけど、Gradleは全部入れてしまう。そう自動的に。

 

なのでこれをAndroid Studioのエディター上で、簡単なマウスクリックだけで削除する方法を見つけました。

 

まず、AndroidManifest.xmlを開きます。

 

f:id:coffeebreakin:20171126033753p:plain

 

次に、「Merged Manifest」をクリックします。

 

f:id:coffeebreakin:20171126033950p:plain

 

すると、最終的にapkに含まれるAndroidManifest.xmlを見ることができます。これは便利ですね!

 

で、よく見ると、Google Analyticsによって自動的にandroid.permission.WAKE_LOCKが追加されていることがわかります。

 

なので、これを右クリックして「Remove」しちゃいましょう。

 

f:id:coffeebreakin:20171126034237p:plain

 

さらに、不要なサービスやレシーバーも合わせて削除しましょう。

com.google.android.gms.analytics.AnalyticsReceiver

com.google.android.gms.analytics.AnalyticsService

 

(たぶんこれ削除しとかないとパーミッションが無いとかでクラッシュするかと思います。ここのサイトにもそのような記述があります。)

 

f:id:coffeebreakin:20171126034803p:plain

 

これで完了です!

 

cocos2dx v3.16のBox2DでEXC_BAD_ACCESS修正方法

開発のおはなしです。

 

cocos2dx v3.16のBox2DでEXC_BAD_ACCESSが発生したのでその修正方法メモ。

 

この関数でクラッシュしたので調べたら、

void b2Island::Solve(b2Profile* profile, const b2TimeStep& step, const b2Vec2& gravity, bool allowSleep)
・・・
for (int32 j = 0; j < m_jointCount; ++j)
{
bool jointOkay = m_joints[i]->SolvePositionConstraints(solverData);
jointsOkay = jointsOkay && jointOkay;
}

このfor文でm_joints[i]をm_joints[j]に修正するといいです。

 

 

 

 

Cocos Creatorの実機でドット絵が崩れる問題

Cocos Creatorドット絵のゲームを作っています。

 

開発中はブラウザでゲームが動くので、動作確認がすぐとれてとても便利です。

 

ある時、ブラウザで順調に動作しているので、一旦実機でもテストしてみようと思い、Project→BuildでPlatformをiOSにしてBuildボタンを押します。

 

するとbuildというフォルダが作られるので、中を漁ってXcodeのプロジェクトを見つけ、それを起動します。

 

Code Signを自分のものに変更して、iPhoneを接続し、ビルドして転送します。

 

すると、下記のようにドットが崩れて表示されてしまいました。

 

f:id:coffeebreakin:20170803151351p:plain

なんか変・・・

 

ですが、色々とCocos Creatorをいじった結果、設定で回避できることがわかりました。

 

f:id:coffeebreakin:20170803151536p:plain

 

Spriteの設定のTypeをSIMPLEからSLICEDに変更します。

 

f:id:coffeebreakin:20170803151630p:plain

 

これだけです。

 

これでもう一度Cocos Creatorでビルド、そしてXcodeでもビルドして実機に転送すればオッケーです。

 

f:id:coffeebreakin:20170803151739p:plain

とりあえずこれで開発を進めていきます!