shortx命令
1 subscriber
1 photo
1 file
5 links
Download Telegram
Forwarded from 𝓗𝓮
import android.os.ServiceManager;
import android.hardware.input.IInputManager;
import android.view.InputDevice; // 导入 InputDevice 类
import android.os.IBinder;

// 获取 IInputManager 接口
IBinder binder = ServiceManager.getService("input");
IInputManager inputManager = IInputManager.Stub.asInterface(binder);

// 获取设备ID
int[] deviceIds = inputManager.getInputDeviceIds();
int touchDeviceId = -1;

// 遍历输入设备并找到触摸设备
for (int id : deviceIds) {
int sources = inputManager.getInputDevice(id).getSources(); // 获取输入设备源
if ((sources & InputDevice.SOURCE_TOUCHSCREEN) == InputDevice.SOURCE_TOUCHSCREEN) {
touchDeviceId = id;
}
}

// 如果找到触摸设备,启用它
if (touchDeviceId != -1) {
// 调用 IInputManager 的启用方法
inputManager.enableInputDevice(touchDeviceId); // 请替换为实际启用调用
// 输出启用的设备 ID
"启用触摸设备 ID: " + touchDeviceId;
}
Forwarded from 𝓗𝓮
import android.content.Intent;
import android.provider.AlarmClock;

// 定义闹钟的属性
String message = "闹钟标签"; // 闹钟标签
int hour = 17; // 闹钟小时(24小时制)
int minutes = 30; // 闹钟分钟

// 创建一个系统闹钟的 Intent
Intent alarmIntent = new Intent(AlarmClock.ACTION_SET_ALARM);
alarmIntent.putExtra(AlarmClock.EXTRA_MESSAGE, message);
alarmIntent.putExtra(AlarmClock.EXTRA_HOUR, hour);
alarmIntent.putExtra(AlarmClock.EXTRA_MINUTES, minutes);
alarmIntent.putExtra(AlarmClock.EXTRA_SKIP_UI, true); // 设置跳过UI

// 为 Intent 添加 FLAG_ACTIVITY_NEW_TASK 标志
alarmIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

// 发送 Intent,设置系统闹钟
context.startActivity(alarmIntent);

// 返回设置成功的信息
return "系统闹钟已设置成功";
Forwarded from Prslc
// 使用mvel写入文件
import java.io.*;
// 定义文件路径
String FilePath="/data/media/0/Download/1.txt";
// false为覆盖模式,true为追加模式
FileWriter file = new FileWriter(FilePath,false);
// 写入的内容
file.write("test");
// 关闭文件写入,如果没有这条内容无法正常写入
file.close()
Forwarded from kuro
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.util.Base64;
import java.io.ByteArrayOutputStream;
String path = "/sdcard/Download/test.jpg";
Bitmap img = BitmapFactory.decodeFile(path);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
img.compress(Bitmap.CompressFormat.JPEG, 100, stream);
byte[] bytes = stream.toByteArray();
String code = Base64.encodeToString(bytes,Base64.NO_WRAP);
code

这个mvel的功能就是把本地一个图片转换为Android的bitmap对象,然后转换为字节数组,然后base64编码。我这运行报错了,我需要一点帮助
Forwarded from Prslc
使用包名获取应用名
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;

def apkname(context, app) {
// 获取PackageManager实例,用于管理应用程序
PackageManager packageManager = context.getPackageManager();

// 获取指定包名的应用信息
ApplicationInfo appInfo = packageManager.getApplicationInfo(app, 0);

// 获取应用名称
String appName = packageManager.getApplicationLabel(appInfo).toString();

return "应用名称: " + appName;
}

apkname(context, "org.telegram.messenger");
//将后面的内容修改为你需要的包名
Forwarded from 𝓗𝓮
//应用是否被冻结,用作条件
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;

// 定义需要检查的应用包名
String targetPackageName = "包名";

// 获取PackageManager实例,用于管理应用程序
PackageManager packageManager = context.getPackageManager();


// 获取指定包名的应用信息
ApplicationInfo appInfo = packageManager.getApplicationInfo(targetPackageName, 0);

// 获取应用的启用状态
Boolean isApplicationEnabled =! appInfo.enabled;

//true代表已经被冻结
Forwarded from 𝓗𝓮
import java.io.File;
import java.util.Scanner;

// 读取文件内容
new Scanner(new File("/data/media/0/newfile.txt")).useDelimiter("\\Z").next()
Forwarded from 𝓗𝓮
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.charset.StandardCharsets;

// 创建表示目录的File对象
File directory = new File("/data/media/0");

// 定义要创建的文件名
String newFileName = "newfile.txt";
File newFile = new File(directory, newFileName);

// 检查目录是否存在,如果不存在则创建目录
if (!directory.exists()) {
directory.mkdirs();
}

// 如果文件已存在,输出文件存在提示;否则创建新文件
if (newFile.exists()) {
return newFileName + " 文件已经存在。";
} else {
// 创建新文件
if (newFile.createNewFile()) {
return newFileName + " 文件已创建。";
}
else {
return "创建文件时发生错误。";
}
}
Forwarded from 𝓗𝓮
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.charset.StandardCharsets;

// 创建表示目录的File对象
File directory = new File("/data/media/0");

// 获取目录中的所有文件和子目录
File[] files = directory.listFiles();

// 定义要读取的文件名
String targetFileName = "2.html";

File targetFile = new File(directory, targetFileName);

// 检查文件是否存在并且是一个文件
if (targetFile.exists() && targetFile.isFile()) {
// 读取文件内容
String content = new String(Files.readAllBytes(Paths.get(targetFile.getPath())), StandardCharsets.UTF_8);
// 返回文件路径和内容
return targetFileName + " 文件内容:\n" + content;
} else {
// 如果文件不存在,返回提示信息
return targetFileName + " 文件不存在。";
}
Forwarded from 𝓗𝓮
import java.io.File;

// 创建表示目录的File对象
File directory = new File("/data/media/0");

// 获取目录中的所有文件和子目录
File[] files = directory.listFiles();

// 检查是否成功获取文件列表
if (files != null) {
StringBuilder result = new StringBuilder();
// 遍历文件列表,并将每个文件名添加到结果字符串中
for (File file : files) {
result.append(file.getName()).append("\n");
}
// 输出结果字符串
return result.toString();
} else {
// 如果目录不存在或为空,输出提示信息
return "找不到指定目录或者目录为空。";
}
Forwarded from 𝓗𝓮
import android.content.Context;
import android.content.pm.PackageManager;

String packageName = "包名";

PackageManager packageManager = context.getPackageManager();

// 清除指定包的缓存数据
packageManager.deleteApplicationCacheFiles(packageName, null);
Forwarded from 𝓗𝓮
// 清除指定包的应用数据
packageManager.clearApplicationUserData(packageName, null);

自行替换
Forwarded from 𝓗𝓮
import java.util.HashSet;
import java.util.Set;

String text1 = "Hello";
String text2 = "Hell64664os";

// 计算两个字符串的Jaccard相似度
def jaccardSimilarity(str1,str2) {
Set set1 = new HashSet(); // 存储第一个字符串的字符集合
Set set2 = new HashSet(); // 存储第二个字符串的字符集合

// 将第一个字符串的字符添加到集合set1中
for (char c : str1.toCharArray()) {
set1.add(c);
}

// 将第二个字符串的字符添加到集合set2中
for (char c : str2.toCharArray()) {
set2.add(c);
}

// 创建集合intersection存储set1和set2的交集
Set intersection = new HashSet(set1);
intersection.retainAll(set2); // 只保留交集部分

int commonCount = intersection.size(); // 交集的大小
int totalUniqueCount = set1.size() + set2.size() - commonCount; // 并集的大小

// 计算Jaccard相似度并返回
return (double) commonCount / totalUniqueCount;
}

double similarityScore = jaccardSimilarity(text1, text2);

// 四舍五入并保留两位小数
String formattedScore = String.format("%.2f", similarityScore);

// 打印Jaccard相似度分数
return "Jaccard 相似分数: " + formattedScore;
Forwarded from 𝓗𝓮
import java.net.HttpURLConnection;
import java.net.URL;

// 创建一个URL对象,指向百度网站
URL url = new URL("https://baidu.com");

// 打开一个HTTP连接
HttpURLConnection connection = (HttpURLConnection) url.openConnection();

// 设置HTTP请求方法为GET
connection.setRequestMethod("GET");

// 设置连接超时时间为1秒
connection.setReadTimeout(1000); // 1秒

// 获取HTTP响应码
int responseCode = connection.getResponseCode();

// 如果收到的状态码不是在400-499范围内,则输出网络连接正常
if (responseCode < 400 || responseCode >= 500) {
("网络连接正常");
}
Forwarded from 𝓗𝓮
import android.app.ActivityManager;
import android.content.Context;
import android.app.ActivityManager.MemoryInfo;
import java.text.DecimalFormat;

// 创建DecimalFormat对象,指定格式
DecimalFormat df = new DecimalFormat("#.00");

// 获取ActivityManager服务
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);

MemoryInfo memoryInfo = new MemoryInfo();
activityManager.getMemoryInfo(memoryInfo);

// 获取可用内存大小
long availableMemory = memoryInfo.availMem;

// 将可用内存大小从字节转换为GB,并保留两位小数
String availableMemoryGB = df.format(availableMemory / (double) (1024 * 1024 * 1024));

// 输出可用内存大小(GB)
(availableMemoryGB + " GB");
Forwarded from 𝓗𝓮
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import java.util.ArrayList;
import java.util.List;

// 获取PackageManager实例,用于管理应用程序
PackageManager packageManager = context.getPackageManager();

String appName = "OwnDroid"; // 要查找的应用名称
List matchingPackageNames = new ArrayList();

List packages = packageManager.getInstalledApplications(PackageManager.GET_META_DATA);
// 获取所有已安装的应用程序信息列表

for (ApplicationInfo packageInfo : packages) {
String currentAppName = (String) packageManager.getApplicationLabel(packageInfo);
// 获取当前迭代的应用程序的标签名称

if (currentAppName != null && currentAppName.equals(appName)) {
matchingPackageNames.add(packageInfo.packageName); // 如果找到匹配的应用名称,则存储其包名
}
Thread.sleep(1); // 线程休眠1毫秒
}


// 使用StringBuilder来统一输出所有找到的包名
StringBuilder output = new StringBuilder();

for (String packageName : matchingPackageNames) {
output.append(packageName).append("\n");
}
// 在这里输出output
output;
Forwarded from 𝓗𝓮
import android.content.Context;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiManager;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

// 获取WifiManager实例
WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);

// 获取扫描结果列表
List scanResults = wifiManager.getScanResults();

Set uniqueSSIDs = new HashSet();

// 使用Set来保证唯一性
for (ScanResult result : scanResults) {
String ssid = result.SSID;
if (ssid == null || ssid.isEmpty()) {
ssid = result.BSSID;
}

// 将SSID添加到Set中
uniqueSSIDs.add(ssid);
}

// 构建输出结果
StringBuilder wifiInfoBuilder = new StringBuilder();
for (String ssid : uniqueSSIDs) {
wifiInfoBuilder.append(ssid).append("\n");
}

String wifiInfo = wifiInfoBuilder.toString();

// 一次性输出结果
wifiInfo;
Forwarded from 𝓗𝓮
importClass(android.app.admin.DevicePolicyManager);
importClass(android.content.Context);

var dpm = context.getSystemService(Context.DEVICE_POLICY_SERVICE);

// 获取输错次数
var attempts = dpm.getCurrentFailedPasswordAttempts();
Forwarded from 𝓗𝓮
ShortX-广播宝典_丰富你的触发器.txt
196.8 KB
众所不周知,广播可以作为 ShortX 触发器之一,同时也支持获取传递的数据,用好了可以丰富 ShortX 触发器。

广播数据是从 Android 16类原生中提取,适用度比国产定制化系统要高,广播介绍均为AI翻译。
TRANSACTION_snoozeNotificationUntilFromListener → snoozeNotificationUntilFromListener(android.service.notification.INotificationListener, java.lang.String, long): void

TRANSACTION_unsnoozeNotificationFromSystemListener → unsnoozeNotificationFromSystemListener(android.service.notification.INotificationListener, java.lang.String): void

TRANSACTION_getSnoozedNotificationsFromListener → getSnoozedNotificationsFromListener(android.service.notification.INotificationListener, int): android.content.pm.ParceledListSlice

#通知隐藏