OP放大器表中特性中寫著RO,LP,IS什么意思,而且RO請問誰能具體解釋一下?越具體越好.
Ro是輸出電阻的意思,定義為在對實際的運放建模時,串聯(lián)在理想運放的輸出端和實際器件輸出端之間的直流電阻。單位為Ω。
LP,低通low pass?這個不是參數(shù)吧,給個具體的文檔看下最好
Is應(yīng)該是輸入電流,sourse current
如何在android的源代碼中添加persist屬性
SystemProperties與Settings.System
1 使用 SystemProperties.get
如果屬性名稱以“ro.”開頭,那么這個屬性被視為只讀屬性。一旦設(shè)置,屬性值不能改變。
如果屬性名稱以“persist.”開頭,當(dāng)設(shè)置這個屬性時,其值也將寫入/data/property。
在c++中就是對應(yīng)JAVA的兩個函數(shù)就是property_set, property_get,其實JAVA是通過JNI調(diào)用這兩個函數(shù)的。
JAVA代碼如下:
import android.os.SystemProperties;
SystemProperties.set(persist.sys.language, zone.getID());
String lang= SystemProperties.get(persist.sys.language);
獲取方法:
boolean fastfoodenable = SystemProperties.getBoolean(persist.sys.fastfoodenable, false);
設(shè)置方法:
SystemProperties.set(persist.sys.fastfoodenable, true);
C
#include <cutils/properties.h>
property_set(persist.sys.language, zh);
property_get(persist.sys.language, propLang, en);
在adb shell可以通過以下的命名讀取和修改
#getprop persist.sys.language
#setprop persist.sys.language zh
創(chuàng)建與修改android屬性用Systemproperties.set(name, value),獲取android屬性用Systemproperties.get(name),需要注意的是android屬性的名稱是有一定的格式要求的,如下: 前綴必須用system\core\init\property_service.c中定義的前綴 ,進行系統(tǒng)屬性設(shè)置的程序也必須有system或root權(quán)限
如果我們要添加一個property:例如:silvan_liu
路徑:system/core/rootdir/int.rc
在on post-fs-data 目錄下
setprop persist.sys.silvan_liu 1//persist.sys 前綴名; 1為初始值
PS:不同前綴名權(quán)限不同,這里就不一一說明;還有為什么要加載on post-fs-data目錄下,這和int.rc的語法有關(guān)
2 使用 Settings.System.putInt
這種方式會保存變量到Settings 數(shù)據(jù)庫中,飛行模式等的開關(guān)就是用這種方式實現(xiàn)的。
首先需要定義一個系統(tǒng)屬性值
路徑:frameworks/base/core/java/android/provider/Settings.java
public static final String VIVIEN_FASTFOOD= hungry;
1)獲取方法如下:
@Override
public void onResume()
{
super.onResume();
if(Settings.System.getInt(getContentResolver(), Settings.System.VIVIEN_FASTFOOD,0)==1)
{
mYesORNo.setChecked(true);
}
else
mYesORNo.setChecked(false);
}
2)設(shè)置
if (mYesORNo.isChecked()) {
Settings.System.putInt(getContentResolver(),
Settings.System.VIVIEN_FASTFOOD, 1);
} else {
Settings.System.putInt(getContentResolver(),
Settings.System.VIVIEN_FASTFOOD, 0);
}
需要import android.provider.Settings;
android源碼開發(fā)中,常常要用到一些全局標(biāo)志或者說變量,這時候我們可以給android系統(tǒng)添加自己想要的屬性。
1.Settings.system
這種系統(tǒng)屬性我們經(jīng)常用到,例如飛行模式的開啟和關(guān)閉,我們就是去改變Settings.system.AIRPLANE_MODE_ON 的值。
下面就介紹下我們怎樣去定義一個系統(tǒng)屬性。例如要添加一個屬性名為“SILVAN_LIU”
路徑:frameworks/base/core/java/android/provider/Settings.java
public static final String SILVAN_LIU = silvan_liu;
public static final String[] SETTINGS_TO_BACKUP ={
~
+SILVAN_LIU
~
}
這樣添加后,你就是可以通過Settings.System.getInt(getContentResolver(), Settings.System.SILVAN_LIU,0) 和Settings.System.getInt(getContentResolver(), Settings.System.SILVAN_LIU,0)去得到和設(shè)定SILVAN_LIU的屬性值。
2.SystemProperties
創(chuàng)建與修改android屬性用Systemproperties.set(name, value),獲取android屬性用Systemproperties.get(name),需要注意的是android屬性的名稱是有一定的格式要求的,如下: 前綴必須用system\core\init\property_service.c中定義的前綴 ,進行系統(tǒng)屬性設(shè)置的程序也必須有system或root權(quán)限
如果我們要添加一個property:例如:silvan_liu
路徑:system/core/rootdir/int.rc
在on post-fs-data 目錄下
setprop persist.sys.silvan_liu 1//persist.sys 前綴名; 1為初始值
PS:不同前綴名權(quán)限不同,這里就不一一說明;還有為什么要加載on post-fs-data目錄下,這和int.rc的語法有關(guān)。
以上是我實際項目中運用到的地方,可能認(rèn)識的不夠深刻,還需繼續(xù)摸索。
轉(zhuǎn)載
