Android 开发小知识点收集(随时更新)
1、获取手机运行时最大可占用内存
int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024); Log.d("TAG", "Max memory is " + maxMemory + "KB");
2、改变dialog 在不同窗口内显示不同的大小
//在dialog.show()之后调用 public static void setDialogWindowAttr(Dialog dlg,Context ctx){ Window window = dlg.getWindow(); WindowManager.LayoutParams lp = window.getAttributes(); lp.gravity = Gravity.CENTER; lp.width = LayoutParams.MATH_PARENT;//宽高可设置具体大小 lp.height = LayoutParams.MATH_PARENT; dlg.getWindow().setAttributes(lp); }
摘抄自:简书——MrRock
3、监听Activity是否显示在用户面前
@Override public void onWindowFocusChanged(boolean hasFocus) { // TODO Auto-generated method stub super.onWindowFocusChanged(hasFocus); }
当Activity展示咋用户面前则 hasFocus 为 true;
4、成员变量与局部变量的区别(简写:成、局)
1)、类中位置不同:成:类内 局: 方法内伙子方法上;
2)、内存中位置不同:成:栈内存 局:堆内存;
3)、生命周期不同:成:与对象共存亡 局:与方法共存亡;
4)、初始化值不同:成:有默认值 局:无默认值,必须赋值。
5、Java 获取可变的 uuid
uuid 类似于时间戳 永远不可重复。
String uuid = UUID.randomUUID().toString().replaceAll("-", "");
6、Android 获取 WiFi 的 ssid
1)、在 AndroidManifest.xml 文件内添加权限
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
2)、需要获取的位置添加如下代码
WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); Logger.d("wifiInfo"+wifiInfo.toString()); Logger.d("SSID"+wifiInfo.getSSID());
3)、若不是想获取当前连接,而是想获取WIFI设置中的连接
WifiManager.getConfiguredNetworks()
4)、若获取更多的信息请查看这位兄嘚的博客:Android连续获取当前所连接WiFi及周围热点列表信息的解决方案 .
7、Android 打开 WiFi 设置界面
1)、判断手机是否连接wifi
if (ConnectionDetector.getConnectionType(this) != ConnectionDetector.WIFI) { //跳转wifi配置界面 goToWifSetting(); } else { //wifi已经连接 }
代码如下:
Intent intent = new Intent(); if(android.os.Build.VERSION.SDK_INT >= 11){ //Honeycomb intent .setClassName("com.android.settings", "com.android.settings.Settings$WifiSettingsActivity"); }else{ //other versions intent .setClassName("com.android.settings", "com.android.settings.wifi.WifiSettings"); } startActivity(intent);
或者
if (android.os.Build.VERSION.SDK_INT > 10) { // 3.0以上打开设置界面,也可以直接用ACTION_WIRELESS_SETTINGS打开到wifi界面 startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS)); } else { startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS)); }
8、Android 8.0 获取 wifi 的 ssid
之前用上面6的方法可以完美的获取wifif设备的 ssid 但是不能显示 ssid 即用户名
ConnectivityManager manager = (ConnectivityManager) getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE); assert manager != null; NetworkInfo info = manager.getActiveNetworkInfo(); if (info != null && info.isConnected()) { String wifiSsid = info.getExtraInfo().substring(1, info.getExtraInfo().length() - 1).trim(); }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
蚂蚁金服光年实验室亮相美国顶级安全峰会,漏洞检测工具获好评
小蚂蚁说: 8月13日,在美国刚刚结束的安全顶级峰会BlackHat USA(黑帽大会)和DefCon上,蚂蚁金服光年实验室研发的漏洞检测工具再次成功入选! BlackHat和DefCon是什么样的存在呢?BlackHat号称世界最顶级黑客大会,号称掌管安全产业未来走向。而DefCon则被称为黑客界的奥斯卡,也被称为顶级黑客间的神秘派对。早年间FBI守着门抓人,每年百万资金池的攻防战等等,都为这两大顶会涂抹了一层足够“酷”的底色。 据了解,黑帽安全技术大会创办于1997年,被公认为世界信息安全行业的最高盛会,也是最具技术性的信息安全会议。大会每年会评选有实战能力的安全工具进入“军械库”(BlackHat Arsenal),供全球安全行业学习。 今年3月,蚂蚁金服安全实验室研发的漏洞检测工具还入选亚洲黑帽大会的“军械库”,可以有效预判程序漏
- 下一篇
Android绘制(三):Path结合属性动画, 让图标动起来!
Android绘制(一):来用shape绘出想要的图形吧!Android绘制(二):来用Path绘出想要的图形吧! 目录 效果图 前言 绘制 属性动画 最后 效果图 不废话, 直接上效果图, 感兴趣再看下去. 其实不单单是效果图演示的, 运用熟练的话各种图标之间都是可以切换的. 暂停到终止 暂停到播放 前言 之前的文章也说了, path还是很有潜力的. 但是很遗憾, 我本人不太擅长用贝塞尔曲线画东西, 所以只能演示一些简单的变化(手动无奈). 来看看是如何实现的吧. 绘制 想要绘制矩形很简单啦, 移动到左上角, 然后逆时针画一圈, 或者顺时针画一圈. 那其实暂停和终止就是两个矩形, 播放就是两个三角形. 所以稍微改变下path绘制的位置就解决问题啦. mLPath.moveTo(left, top); mLPath.lineTo(left, bottom); mLPath.lineTo(right, bottom); mLPath.lineTo(right, top); mLPath.close(); 但是需要弄清绘制区域. 首先要测出设定视图宽高, 再以此画一个圆, 然后设置一个内边...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Mario游戏-低调大师作品
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7