我想在KitKat中将屏幕锁定模式设置为None,这样我就可以运行CTS。
我正在使用DragonBoard APQ8074从Intrinsyc进行开发,他们刚刚发布了针对Android KitKat 4.4.2的BSP。麻烦的是,它不稳定,设置中的安全菜单崩溃了。因此,我无法使用adb shell
与input keyevents 19, 20, 21, 22, 23
进行导航。
adb shell settings
命令似乎应该适用于此,但事实并非如此。我针对4.2,4.3和4.4尝试了这些命令,它们似乎分配了值,但它们在视觉上不会导致任何更改。
shell@msm8974:/ $ settings get system lockscreen_disabled
null
shell@msm8974:/ $ settings put system lockscreen_disabled true
shell@msm8974:/ $ settings get system lockscreen_disabled
true
shell@msm8974:/ $ settings get system screen_brightness
102
shell@msm8974:/ $ settings put system screen_brightness 255
shell@msm8974:/ $ settings get system screen_brightness
255
现在我不知道lockscreen_disabled是否是我想要的,在这里,但是Settings.java似乎没有提供对任何unlock_mode
的调用,所以我不知道还有什么可做的。我不想编写应用程序来执行此操作,我只想将屏幕锁定模式设置为None
,以便我可以运行CTS。如果我需要修改源代码,那么make&闪现一个新形象,我愿意这样做,但我不知道要修改什么。感谢您提供任何指导。
答案 0 :(得分:10)
弄清楚了。
<强> 1。使用adb shell更新settings.db
shell@msm8974:/ $ su
shell@msm8974:/ # sqlite3 /data/data/com.android.providers.settings/databases/settings.db
sqlite3> update secure set value=1 where name='lockscreen.disabled';
sqlite3> .quit
<强> 2。移动或删除锁定文件
shell@msm8974:/ # mkdir /data/system/lock
shell@msm8974:/ # mv /data/system/locksettings* lock
adb reboot
很高兴。
答案 1 :(得分:3)
如果设备上没有安装sqlite,请使用以下
<强> 1。设置设置
class A;
A& getRef(void); //the only change
char (&func(...))[2];
int main() {
bool isDefault = sizeof(func(getRef()))==2; //g++ error here
std::cout << isDefault << std::endl;
return 0;
}
<强> 2。重启到恢复
adb shell settings put secure lockscreen.disabled 1
第3。删除locksettings db文件
adb reboot recovery
答案 2 :(得分:0)
您应该在设置命令中使用 leaderboard.max = -Infinity; // Set max balance
leaderboard.min = Infinity; // Set min balance
leaderboard.forEach( function( item, index, self ) {
if (item.balance>self.max) self.max = item.balance;
if (item.balance<self.min) self.min = item.balance;
});
leaderboard.updateBalance = function ( userId, newBalance ) {
var updated = false;
var minIndex1 = -Infinity;
var minIndex2 = Infinity;
this.forEach( function( item, index, self ) {
// Find 2 index with minimal balance
if (item.balance === self.min) minIndex1 = index;
if (item.balance > self.min && item.balance < minIndex2) minIndex2 = index;
// If find user - update balance and min and max
if (item.userId === userId) {
updated = true; // Flag - user balance updated
self[index].balance = newBalance;
if (newBalance > self.max) self.max = newBalance;
if (newBalance < self.min) self.min = newBalance;
}
});
// No user find? Push
if (!updated && newBalance > leaderboard.max) {
this.min = this[minIndex2].balance;
if (this.length===5) this.splice(minIndex1, 1); // Remove user with minimal balance
this.max = newBalance;
this.push( { userId: userId, balance: newBalance } );
}
};
作为变量名称,并使用lockscreen.disabled
作为名称空间:
secure