LoginSignup
4
4

More than 5 years have passed since last update.

【Android】Google Driveはパーミッションに気をつけろ!

Posted at

序章

Google Drive APIが新しくなって便利になってますね〜!
昔ちょっとやったことがあったのですが、もうそりゃ苦労した記憶があります。

APIが新しくなってから初めてGoogle DriveのAPIを使用してみましたが、
少しはまったので、はまりポイントをご紹介します。

本題

ご存じのようにGoogle Driveを使用するときは、SDカードのリードライト権限をマニフェストに
記載します。

<permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

まず、これじゃダメです。

<user-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

じゃないとダメです。
次に、

<manifest xmlns:android="http://schemas.android.com/apk/res/android">

    <application ・・・>
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    ・
    ・
    ・
    </application>
</manifest>

これ一見良いように見えるのですが・・・
いや、実際これで、SDの中のリードは出来るようです。
でもこれじゃダメです。

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    <application ・・・>
    ・
    ・
    ・
    </application>
</manifest>

こうじゃないとSDへの書き込みがダメです。
要はパーミッションはapplicationの外で記載しないとダメだよってことです。
大事なのでもう一回言います
パーミッションはapplicationの外で!

まとめ

パーミッションはapplicationタグの外で宣言しよう!
そうしないと意外なところではまっちゃうよというお話でした。

Google Drive APIの使い方については、後ほど(気が向いたら)書きます。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4