在Android M中,我们可以使状态栏图标变暗.为此,我们可以在主题的xml中指定属性:
<item name="android:windowLightStatusBar">true</item>
Run Code Online (Sandbox Code Playgroud)
或者我们使用以下代码在运行时设置它:
View someView = findViewById(R.id.some_view);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
someView.setSystemUiVisibility(someView.getSystemUiVisibility() | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
}
Run Code Online (Sandbox Code Playgroud)
它实际上工作正常.但问题是如何在运行时将状态栏模式正确设置为黑暗?
我已经尝试过那些变种:
// Makes status bar mode dark, but also hides it along with all navigation views.
someView.setSystemUiVisibility(someView.getSystemUiVisibility() | ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
// Does nothing
someView.setSystemUiVisibility(someView.getSystemUiVisibility() & ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
// Also does nothing
someView.setSystemUiVisibility(someView.getSystemUiVisibility() ^ View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
Run Code Online (Sandbox Code Playgroud)
那么如何才能以正确的方式完成?
user-interface android android-statusbar android-6.0-marshmallow
我不确定这是否是正确的问题,但我很确定我会问一个非常愚蠢的问题.我是开发人员,但对最新的加密技术一无所知.我在许多网站上看过,WhatsApp花了很多年才想出这种"技术",而且我们的信息和一切现在都是安全的.
我有几个问题一直困扰着我.
如果解密消息需要加密密钥,那么密钥如何转移到接收方?当然使用WhatsApp服务器?我们怎么知道他们没有让它解密聊天?仅仅因为我们相信他们?如果在我的手机上加密了一条消息,接收方需要知道加密密钥才能解密,他们如何获得该密钥?使用WhatsApp服务器?为什么WhatsApp不能保持这个密钥是如此困难?
如果我向我的一个朋友发送视频,上传需要一段时间,上传时会显示进度条..如果我将同一个视频转发给我的其他几个朋友,它会在一秒内立即发送.怎么样?它没有加密吗?如果没有再次加密,它怎么会被发送?
最后,WhatsApp网络如何运作?如果WhatsApp的网站可以显示我的所有消息(无论我如何登录),为什么服务器人都看不到它?他们怎么不能模仿我的登录并且能够看到我正在做的一切?我刚刚使用WhatsApp网络向我的一位朋友发送了一张图片,它被发送了,他看到了......一切都很好.在打开WhatsApp之前我关闭了我的WiFi,图像甚至没有下载!它甚至不在我的手机中..当我的手机中甚至不存在WhatsApp网络时,WhatsApp网站如何使用我的"手机"发送该图像?(注意:我的设置不允许立即下载图像).很显然,WhatsApp并没有和我刚刚发送的手机通话,因为它在服务器上.
有人可以帮我理解这个吗?
编辑:一个帮助我理解的页面的链接也足够了..如果它太长,你不必在这里写一切.虽然我已经在Google上搜索了相当长的一段时间.这个网站上也没有人问过这个问题.
我在Firebase中有一些简单的条目,如:
我想要的只是获取这些值(每个百分比)并将它们传递给一个名为labels的数组.这样我就可以在我的代码中使用该数组了.这是我的问题.
现在,对我而言,这似乎很容易,但显然不是.
首先我所面对的是示例中的@angularfire第5版差异(但在他们的GitHub文档中很容易理解).所以其次,我尝试获取数据:
this.items = db.list('/percentage').valueChanges();
Run Code Online (Sandbox Code Playgroud)
然后我查看关于SO的其他问题,第三,在示例中,我被告知'它的异步数据,所以你应该订阅它'我订阅并再次在控制台中记录它以查看我的数组的样子.
当然,在那之后我会查看更多的例子哦,事实证明我应该映射()它.然后我这样做
this.labels = db.list('/percentage').valueChanges().map(res => this.labels = res);
Run Code Online (Sandbox Code Playgroud)
我没有得到任何错误,但我不知道如何将这些数据作为一个对我有用的数组.如果有人向我解释一个方法,我会很高兴.谢谢
firebase typescript firebase-realtime-database angularfire2 angular
android ×2
angular ×1
angularfire2 ×1
encryption ×1
end-to-end ×1
firebase ×1
ios ×1
typescript ×1
whatsapp ×1