Android開發中的不常見屬性詳解

主要總結Android開發日常中看到的一些屬性註釋

Application

application中常見的屬性

字段名 值類型 解釋 說明

allowBackup

boolean,true 是否允許應用備份相關的數據並且在必要時候恢復還原這些數據 事關手機使用安全,建議設置爲false。見註釋1
backupAgent String 這個標識是用來設置備份代理 註釋2

supportsRtl

boolean,false 這個標識是用來聲明應用是否要支持從右到左的(RTL)佈局方式。 註釋3

resizeableActivity

boolean,true 應用是否支持分屏操作 API24及以上加入,註釋4

註釋1:

adb backup 命令容許任何一個打開 USB 調試開關的人從 Android 手機中複製應用數據到外設,一旦應用數據被備份之後,所有應用數據都可被用戶讀取;adb restore 命令允許用戶指定一個恢復的數據來源(即備份的應用數據)來恢復應用程序數據的創建。因此,當一個應用數據被備份之後,用戶即可在其他Android手機或模擬器上安裝同一個應用,以及通過恢復該備份的應用數據到該設備上,在該設備上打開該應用即可恢復到被備份的應用程序的狀態。尤其是通訊錄應用,一旦應用程序支持備份和恢復功能,攻擊者即可通過adb backup和adb restore進行恢復新安裝的同一個應用來查看聊天記錄等信息;對於支付金融類應用,攻擊者可通過此來進行惡意支付、盜取存款等;因此爲了安全起見,開發者務必將allowBackup標誌值設置爲false來關閉應用程序的備份和恢復功能,以免造成信息泄露和財產損失。

 

註釋2:

對於大部分應用程序來說,都或多或少保存着一些持久性的數據,比如數據庫和共享文件或者有自己的配置信息,爲了保證這些數據和配置信息的安全性以及完整性,Android提供了這樣一個機制,我們可以通過這個備份機制來保存配置信息和數據以便爲應用程序提供恢復點。如果用戶將設備恢復出廠設置或者轉換到一個新的Android設備上,系統就會在應用程序重新安裝時自動恢復備份數據。這樣,用戶就不需要重新產生它們以前的數據或者設置了。這個進程對於用戶是完全透明的,並且不影響其自身的功能或者應用程序的用戶體驗。要實現備份代理,就必須做兩件事,一是實現 BackupAgent 或者 BackupAgentHelper 的子類,二是在 Manifest 文件內用 android:backupAgent 屬性聲明備份代理。

 

註釋3:

在API17時添加,如果本標識屬性設置爲 true 並且同時 targetSdkVersion 爲 17 或者以上版本,則系統將會激活並使用各種 RTL API ,應用程序就可以顯示 RTL Layout。反之則反。

RTL Layout:從右到左的佈局,在諸如阿拉伯語、希伯來語等環境中,中國用戶很少使用。 控件或文字會默認從左到右的佈局下來

 

註釋4:

這個標識可以設置在 < activity > 或者 <application> 標籤上。如果把這個屬性設置爲 true,用戶就能把這個應用或者 activity 設置爲分屏或者自由模式。該API在24及以上支持。

 

Activity

Activity中的常見屬性:


 
字段名 值類型 解釋 說明
supportsPictureInPicture boolean,true 指定 Activity 是否支持畫中畫顯示 在API 24及以上加入,如果 android:resizeableActivity 是 false,系統會忽略該屬性

resizeableActivity

boolean, true 指定應用是否支持多窗口顯示,設置爲true時,用戶可以分屏和自由形狀模式啓動 Activity。在Application和Activity中都可進行配置

 

API24及以上加入

 

layout

layout中的常見屬性,如下配置在API24及以後

<activity android:name=".MyActivity">
    <layout android:defaultHeight="500dp"
          android:defaultWidth="600dp"
          android:gravity="top|end"
          android:minHeight="450dp"
          android:minWidth="300dp" />
</activity>
字段名 值類型 解釋 說明

defaultHeight

dp,如600dp Freeform模式下的默認寬度和高度 在API 24及以上加入,主要用於多窗口模式中

defaultWidth

dp,如600dp Freeform模式下的默認寬度和高度

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章