Вопрос кажется довольно глупым, но я потратил довольно много времени, пытаясь решить его успешно. Проблема в том, что Eclipse IDE выдает мне различные ошибки, если я пробую какие-либо решения, которые я использовал в обычной Java. Другое дело, что сразу после реализации интерфейса я получаю сообщение об ошибке, и Eclipse меняет мой класс на абстрактный. Итак, исходный код:
public class analyzer extends Activity {
TextView dateAndTimeLabel;
private Button closeButton;
private int signalDBm = 0;
public class GetParams extends PhoneStateListener
{
@Override
public void onSignalStrengthsChanged(SignalStrength signalStrength)
{
super.onSignalStrengthsChanged(signalStrength);
signalDBm = signalStrength.getGsmSignalStrength();
}
}
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
TextView tv = (TextView)findViewById(R.id.text);
tv.setText("Greetings, My Lord");
EditText fld=(EditText)findViewById(R.id.field);
fld.setText("Nothing here at the moment");
new GetParams();
Button btn=(Button)findViewById(R.id.start);
btn.setOnClickListener(this);
btn=(Button)findViewById(R.id.stop);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
}
});
/**updateLabel();*/
/**Zakritie programmi*/
this.closeButton = (Button)this.findViewById(R.id.end);
this.closeButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
finish();
}
});
/**Prosmotr loga*/
Button btn_log=(Button)findViewById(R.id.viewlog);
btn_log.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
TextView tv = (TextView)findViewById(R.id.text);
tv.setText("U pressed the button, now you will die!");
EditText fld=(EditText)findViewById(R.id.field);
fld.setText("Power: " + signalDBm +" dBm\n" + "BER:... \n" + "Coordinates: ... \n");
};
});
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.start:
Toast.makeText(this, "GSM signal strength is " + signalDBm, Toast.LENGTH_SHORT).show();
break;
}
}
};
Итак, есть класс GetParams с его методом signalStrength.getGsmSignalStrength (), который я хочу использовать. Еще одна вещь, которую я могу добавить, - это то, что класс SignalStrength () не имеет открытого конструктора, и это единственный способ, которым я могу получить метод getGsmSignalStrength (). Я был бы очень рад, если бы кто-нибудь мог мне помочь, потому что вся моя работа остановилась, пока я не нашел решение.