登录
  • 欢迎访问 Sharezer Blog

Flutter Android 全透明状态栏与导航栏

在移动应用开发中,实现沉浸式界面可以显著提升用户体验,让内容完全扩展到整个屏幕空间。本文将详细介绍如何在Flutter应用中实现状态栏和导航栏的全透明效果。 一、Flutter端设置状态栏透明 在Flutter中,我们可以使用SystemChrome.setSystemUIOverlayStyle方法来定制状态栏的样式。以下是具体的实现方法: 1. 全局设置状态栏透明 要进行全局设置,通常在应用的入口文件(main.dart)中进行配置: import 'package:flutter/material.dart'; import 'package:flutter……继续阅读 »

sharezer 3周前 (01-14) 91浏览 0评论 0个赞

如何识别小米设备澎湃系统HyperOS

在小米澎湃系统中,获取系统版本号是开发或定制操作系统的常见需求之一。 HyperOS系统相关属性 [ro.mi.os.version.code]: [1] [ro.mi.os.version.incremental]: [OS1.0.16.0.UNCCNXM] [ro.mi.os.version.name]: [OS1.0] 本文将提供两种示例代码,演示如何使用不同的方式获取小米澎湃系统的版本号。 其中一种使用 Java 调用 getprop 命令,另一种使用 Java 反射 android.os.SystemProperties 类的 get 方法来获取 ro.mi.os.version.i……继续阅读 »

sharezer 2年前 (2024-01-09) 571浏览 0评论 0个赞

Android 调试检测技术汇编

本文由 简悦 SimpRead 转码, 原文地址 blog.csdn.net 1 IDA 调试端口检测 原理: 调试器远程调试时,会占用一些固定的端口号。 做法: 读取 / proc/net/tcp,查找 IDA 远程调试所用的 23946 端口,若发现说明进程正在被 IDA 调试。(也可以运行 netstat apn 结果中搜索 23946 端口) void CheckPort23946ByTcp() { FILE* pfile=NULL; char buf[0x1000]={0}; // 执行命令 char* strCatTcp= "cat /proc/net……继续阅读 »

sharezer 3年前 (2022-11-17) 1044浏览 0评论 0个赞

Android版本和Api对照表

Android版本 Api Android 13.0(T) 32 Android 12.0(S) 31 Android 11.0(R) 30 Android 10.0(Q) 29 Android 9.0(Pie) 28 Android 8.1(Oreo) 27 Android 8.0(Oreo) 26 Android 7.1(Nougat) 25 Android 7.0(Nougat) 24 Android 6.0(Marshmallow) 23 Android 5.1(Lollipop) 22 Android 5.0(Lollipop……继续阅读 »

sharezer 4年前 (2022-06-06) 1435浏览 0评论 0个赞

Android - Suppresswarnings用法

当 Android 编译 java 代码的时候,经常会遇到一些 warning,有一些是自己写得不规范,可以根据建议来修改,而有一些是你觉得必要的,不能修改的,比如说某些方法未被使用的 warning。 出现这种情况,你可以使用 @Suppresswarnings 来解决: 而 @Suppresswarnings("") 里面的字符串"" 有多种选择,以下是常见的: name using all to suppress all warnings (将方法块里面所有的 warning 都取消) cast to suppress w……继续阅读 »

sharezer 4年前 (2022-01-12) 1428浏览 0评论 0个赞

强制Gradle/Maven刷新缓存并重新从Nexus下载依赖jar包

最近需要搭建一个Nexus私服,完全不能连接外网的那种,各种Jar包都是手动拷过来的,碰到需要gradle和maven强制重新下载依赖的问题。 问题 第一次上传某个jar包(比如junit-4.12.jar)到Nexus上,然后调用gradle build可以正确下载到依赖包。但如果手动删掉了本地缓存的jar包(在~/.gradle下),这时从Nexus的下载过程中断,或者Nexus上暂时不存在这个jar包,那么即使Nexus恢复了正常下载,下次执行gradle build时就一直提示不能够找到jar包。 FAILURE: Build failed with an exception. - ……继续阅读 »

sharezer 4年前 (2022-01-11) 1422浏览 0评论 0个赞

Java获取当前类名方法名与获取调用者类名和方法名

本文由 简悦 SimpRead 转码, 原文地址 www.cnblogs.com 获取当前方法的名称空间、类名和方法名称 var className=System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name; public string GetMethodInfo() { string str = ""; //取得当前方法命名空间 str += "命名空间名:" + System.Reflection.MethodBase.GetCurren……继续阅读 »

sharezer 4年前 (2021-11-18) 1550浏览 0评论 0个赞

aspectJ拦截Log用例

工程build.gradle classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.10' App build.gradle apply plugin: 'com.hujiang.android-aspectjx' api 'org.aspectj:aspectjrt:1.9.6' InjectLog.java package com.wangsu.wsapm; import android.util.Log; import org.asp……继续阅读 »

sharezer 5年前 (2021-08-24) 1402浏览 0评论 0个赞

反射修改修饰符

// 移除所有方法的final字段 public static void removeFinal(Class<?> clazz, Method[] methods) { Class classClass = Method.class; for (Method method : methods) { try { Field accessFlagsField = classClass.getSuperclass().getDeclaredField("accessFlags"); accessFlagsField.setAcc……继续阅读 »

sharezer 5年前 (2020-10-10) 2500浏览 0评论 27个赞