飴屋

Androidアプリメモ/メモ8

Android Studioを触ってみる

Androidアプリを開発し始めた頃はEclipseを開発環境としいたのですが、Android Studioがしっかり動作するようになってきて今はそちらを使っています。がっつり開発をしているわけではないので、起動する度にSDKやら何やらのアップデート処理が走っています。Studio自体ももうバージョンが3系なのですね。(2017/11/06)

先日、ちゃんとバージョン管理をしないとなと思い立ち、VCSの設定を行ったのがきっかけなのですが、git commitをする段になると変更ファイルにlintをかけてくれることに気が付きました。そして古いソースなのでいろいろと警告がでてきました。この警告に従って修正していくとなんだかソースがモダンになっていく気がします。lintに新しいSDKでどんな仕様が追加されたのか教わっている気分。

先ほどAndroidManifest.xmlに変更を加えて初めて気が付いたことがいくつか。

アプリのデータはGoogleアカウントに連携してバックアップされる

アプリを削除して再インストールしたときに、関連するデータ(databaseとかsharedPreferenceとか)も一緒に復旧してくれるそうです。なるほどユーザーに優しい機能です。

<application android:allowBackup="true" />

↑こんな属性値をつけると自動的にバックアップをとってくれるそうです。で、ここがlintで警告を発しました。「バックアップを取る範囲の設定ちゃんとやってる?」みたいな警告のようです。

<application android:fullBackupContent="@xml/backup_scheme" />

↑こんな属性値を追加してリソースフォルダのXMLファイルを指定します。

<full-backup-content />

対象のXMLファイルには、とりあえず↑こんな内容を記しておきました。この中にinclude要素、exclude要素を追加してバックアップを対象のホワイトリストやブラックリストを作れるとのこと。端末固有の情報は機種変更の際に引き継ぐと困るのでexcludeするといいとのこと。あとは取扱注意なセンシティブな情報なんかもバックアップされて困ることのないように配慮せよとのこと。

Deep Linkを張ろう

アプリを検索できるようにDeep Linkを張るようにlint先生に言われました。

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" android:host="soft.candychip.net" android:path="/" />
</intent-filter>

具体的には↑こんな記述をAndroidManifest.xmlに追加しました。アプリをダウンロードできるようなURLと紐づけるための処置ということのようです。Googleの検索結果やTwitter Cardなんかとも関係するので張っておけという感じでしょうか。

メモ一覧