android - एक प्राप्त करने के लिए प्रतीक नहीं मिल सकता है:विधि getSystemService चींटी से




ant (2)

मैं सिर्फ एंड्रॉइड के साथ शुरू कर रहा हूं और चींटी मुझे निम्न त्रुटि दे रही है:

-compile: java:44: cannot find symbol
[javac] symbol  : method getSystemService(java.lang.String)
[javac] AudioManager am = (AudioManager)this.getSystemService(Context.AUDIO_SERVICE);
                                            ^

मैं इस समस्या को समझ नहीं पा रहा हूँ क्योंकि मैं android.media.AudioManager; आयात कर रहा हूं android.media.AudioManager;

मेरा कोड निम्नानुसार है:

package com.example.findme;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.widget.Toast;
import android.media.AudioManager;

public class SMSReceiver extends BroadcastReceiver
{
public final static String EXTRA_MESSAGE = "com.example.RemoVol.MESSAGE";
public final static String SILENT_MESSAGE = "Your phone has been silenced";
public final static String VOLUME_MESSAGE = "Your phone volume is normal";

@Override   
public void onReceive(Context context, Intent intent)
{
//---get the SMS message passed in---
    Bundle bundle = intent.getExtras();
    SmsMessage msgs[] = null;
    String str ="";
    String testString="";   
    if (bundle != null)
    {
        //---retrieve the SMS message received---
        Object pdus[]=(Object[]) bundle.get("pdus");
        msgs = new SmsMessage[pdus.length];
        for (int i=0; i<msgs.length; i++)
            {
                msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
                str += "SMS from" + msgs[i].getOriginatingAddress();
                str += " :";
                str +=msgs[i].getMessageBody().toString();
                testString=msgs[i].getMessageBody().toString(); 
                str += "\n";
            }
    //---display the new SMS message---
    Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
        if(testString.equals("#silent"))
        {   
            intent.putExtra(EXTRA_MESSAGE, SILENT_MESSAGE);
            AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
            am.setRingerMode(AudioManager.RINGER_MODE_SILENT);
        }   
        else if(testString.equals("#volume"))
        {   
        AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
        am.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
        intent.putExtra(EXTRA_MESSAGE, VOLUME_MESSAGE);
        }
    }
}
}

मैं अपने एंड्रॉइड प्रोजेक्ट की जड़ में "एटी डीबग" कमांड का उपयोग कर संकलित कर रहा हूं।

मुझे आशा है कि यह वास्तव में कुछ बेवकूफ और स्पष्ट नहीं है अगर आपके समय बर्बाद कर दिया है तो पहले से माफ़ी मांगे

इस की समीक्षा करने के लिए धन्यवाद


Answers

आपको संदर्भ में प्रसारण की आवश्यकता है जिसमें ब्रॉडकास्ट रिसीवर आपूर्ति कर रहा है (आप इसका उपयोग नहीं कर सकते हैं)

//---display the new SMS message---
Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
if(testString.equals("#silent"))
{   
    intent.putExtra(EXTRA_MESSAGE, SILENT_MESSAGE);
    AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    am.setRingerMode(AudioManager.RINGER_MODE_SILENT);
}   
else if(testString.equals("#volume"))
{   
    AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    am.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
    intent.putExtra(EXTRA_MESSAGE, VOLUME_MESSAGE);
}







android ant