Witam,
mam poniższy kod:
public class Main extends Activity {
public class Socket extends Websocket
{
public Socket(String serverURI) throws URISyntaxException {
super(serverURI);
}
@Override
public void onMessage(String s) {
Log.d("Main WebSocket class", s);
try {
JSONObject message = new JSONObject(s);
MessageParser messageParser = new MessageParser(message);
messageParser.parse(Main.this);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
public class MessageParser {
private JSONObject message;
public MessageParser(JSONObject message)
{
this.message = message;
}
public void parse(Main obj) throws JSONException {
new DialogBuilder(obj, "TEST", "OPIS");
}
}
public class DialogBuilder {
public DialogBuilder(Context context, String title, String content)
{
AlertDialog.Builder notice = new AlertDialog.Builder(context);
notice.setTitle(title)
.setMessage(content)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
})
.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
}
}
Każda klasa w innym pliku.
Generalnie jak przyjdzie websocketem wiadomość do aplikacji chce wyświetlić AlertDialog, jednak wywołanie jej w taki sposob jak przedstawilem w kodzie nie dziala. Nie generuje to żadnego błędu jednak nic się nie wyświetla.
Chciałbym obsługiwać wiadomości przychodzące przez zewnętrzną klasę tak jak jest w przykładzie, ale czy tak się da :)?
dzięki