导航菜单

页面标题

页面副标题

Fix Locker v1.5 - SimChangeReceiver.java 源代码

正在查看: Fix Locker v1.5 应用的 SimChangeReceiver.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.user.a4keygen.receiver;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.telephony.SmsManager;
import android.telephony.TelephonyManager;
import android.util.Log;
import com.user.a4keygen.sharedprefrence.SharedPrefManager;

public class SimChangeReceiver extends BroadcastReceiver {
    private static final String TAG = "SimChangeReceiver";

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent == null || intent.getExtras() == null || !intent.getAction().equals("android.intent.action.SIM_STATE_CHANGED")) {
            return;
        }
        checkSimChange(context);
    }

    private void sendMessage(Context context, String str, String str2) {
        if (str2 == null || str2.isEmpty()) {
            Log.d(TAG, "Invalid phone number: " + str2);
            return;
        }
        if (!isPhoneNumberValid(str2)) {
            Log.d(TAG, "Invalid phone number format: " + str2);
            return;
        }
        try {
            SmsManager.getDefault().sendTextMessage(str2, null, str, null, null);
            Log.d(TAG, "SMS sent to " + str2);
        } catch (IllegalArgumentException e) {
            Log.d(TAG, "Failed to send SMS: " + e.getMessage());
        }
    }

    private void checkSimChange(Context context) {
        TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService("phone");
        String subscriberId = telephonyManager.getSubscriberId();
        SharedPreferences sharedPreferences = context.getSharedPreferences("SimPrefs", 0);
        String string = sharedPreferences.getString("subscriber_id", null);
        if (string == null) {
            sharedPreferences.edit().putString("subscriber_id", subscriberId).apply();
            return;
        }
        if (string.equals(subscriberId)) {
            return;
        }
        Log.d(TAG, "SIM card has changed!");
        if (telephonyManager.getSimState() == 5) {
            sendMessage(context, "New Sim Inserted IMEI NO - " + SharedPrefManager.getInstance(context).getImeiOnline(), SharedPrefManager.getInstance(context).getPhonLockScreen());
            sharedPreferences.edit().putString("subscriber_id", subscriberId).apply();
        }
    }

    private boolean isPhoneNumberValid(String str) {
        return str.matches("^\\+?[0-9]{10,15}$");
    }
}