交互式设置屏幕锁定设置

时间:2014-04-24 18:48:23

标签: android adb android-4.4-kitkat cts

我想在KitKat中将屏幕锁定模式设置为None,这样我就可以运行CTS。

我正在使用DragonBoard APQ8074从Intrinsyc进行开发,他们刚刚发布了针对Android KitKat 4.4.2的BSP。麻烦的是,它不稳定,设置中的安全菜单崩溃了。因此,我无法使用adb shellinput 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&闪现一个新形象,我愿意这样做,但我不知道要修改什么。感谢您提供任何指导。

3 个答案:

答案 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