Android Studio - Java - TelephonyManager - error: non-static method

Android Studio - Java - TelephonyManager - error: non-static method

我该如何解决这个问题? 我没看到 System.out.println 我想看看 System.out.println 中的以太。 我在 logcat 中看到错误。 我的代码在外部 java class.

我的代码在这里:

package com.example.test;

import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;

public class bilgiCek extends AppCompatActivity {
    public static void telefonBilgi(){
        TelephonyManager bilgiler = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); // Error is here.

        String simUlke = bilgiler.getSimCountryIso();
        String netUlke = bilgiler.getNetworkCountryIso();
        String imei = bilgiler.getImei();
        String simNo = bilgiler.getSimSerialNumber();
        String sesMail = bilgiler.getVoiceMailNumber();
        System.out.println("İmei Numarası" + imei);
    }

}

错误输出在这里:

> Task :app:compileDebugJavaWithJavac FAILED
C:\Users505\AndroidStudioProjects\test\app\src\main\java\com\example\test\smsOkuma.java:16: error: non-static method getSystemService(String) cannot be referenced from a static context
        TelephonyManager bilgiler = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
                                                       ^
1 error

FAILURE: Build failed with an exception

添加非静态上下文作为参数如下

  public static void telefonBilgi(Context context){
    TelephonyManager bilgiler = (TelephonyManager) context.getSystemService(TELEPHONY_SERVICE);
    String simUlke = bilgiler.getSimCountryIso();
    String netUlke = bilgiler.getNetworkCountryIso();
    String imei = bilgiler.getImei();
    String simNo = bilgiler.getSimSerialNumber();
    String sesMail = bilgiler.getVoiceMailNumber();
    System.out.println("İmei Numarası" + imei);
}

这可能有效