月別アーカイブ: 2015年2月

[Unity, PlayMaker]:Androidビルドで勝手にパーミッションが追加される

検証バージョン:Unity 4.5.5f1, PlayMaker 1.7.7f6

PlayMakerをインポートしたプロジェクトをAndroid向けにビルドすると、以下の権限(パーミッション)が勝手に追加されます。

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

Unity自体が、特定のAPIを使用した場合にビルド時に自動的に権限を追加する仕様になっています。
一旦Androidプロジェクトを吐き出してからビルドする場合は変更できますが、直接apkを書き出す場合は厄介です。

もし該当する機能を使っていないのならば、PlayMakerのアクションを記述してあるスクリプトファイルを最初に削除してしまえば済むことです。

・android.permission.INTERNET
/PlayMaker/Actions/Network フォルダごと削除

・android.permission.VIBRATE
/PlayMaker/Actions/DeviceVibrate.cs

・android.permission.ACCESS_FINE_LOCATION
/PlayMaker/Actions/GetLocationInfo.cs
/PlayMaker/Actions/StartLocationServiceUpdates.cs
/PlayMaker/Actions/StopLocationServiceUpdates.cs

・android.permission.WAKE_LOCK
/PlayMaker/Actions/DevicePlayFullScreenMovie.cs

[参考]:apkに付与されている権限を調べる方法
aaptというADT付属のツールで調べることが出来ます。
詳しくはこちらを参考にさせて頂きました。
Yukiの枝折 – 「apkからマニフェストの内容を読み取る方法」