столкнулся с проблемой. Данный код выполняется в сервисе, происходит подключение к сокет серверу, если к нам приходит сообщение, оно должно дешифроваться и сохраниться в БД, сообщения приходят но не сохраняются.
@Override
public void onMessage(WebSocket webSocket, String text) {
SharedPreferences prefs = getSharedPreferences("key", MODE_PRIVATE);
idme = prefs.getString(SAVED_PUB_KEY, "");
pKey = prefs.getString(SAVED_PRI_KEY, "");
// webSocket.send(myName);
if (text.contains("hello" + idme.replaceAll("\\s+", ""))) {
webSocket.send(idme.replaceAll("\\s+", "") + "imonline");
}
if (text.contains("chat")){
//парсим джисон
JSONObject jsonObject = null;
try {
jsonObject = new JSONObject(text);
JSONArray jsonArray = jsonObject.getJSONArray("chat");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject productObject = jsonArray.getJSONObject(i);
k = productObject.getString("to");
kk = productObject.getString("me");
kkk = productObject.getString("data");
}
} catch (JSONException e) {
e.printStackTrace();
}
if (k.contains(idme.replaceAll("\\s+", ""))){
try {
main(null);
} catch (LoginException e) {
e.printStackTrace();
} catch (NoSuchPaddingException e) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (InvalidKeyException e) {
e.printStackTrace();
} catch (BadPaddingException e) {
e.printStackTrace();
} catch (IllegalBlockSizeException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (InvalidKeySpecException e) {
e.printStackTrace();
}
}
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// база данных подключение
dbHelper = new DataBase(Fon.this);
db = dbHelper.getWritableDatabase();
cv = new ContentValues();
client = new OkHttpClient();
request = new Request.Builder().url("ws://178.165.18.248:8081").build();
Fon.Echo listener = new Fon.Echo();
ws1 = client.newWebSocket(request, listener);
return START_STICKY;
}
}
private void main(String[] args) throws LoginException, NoSuchPaddingException, NoSuchAlgorithmException, InvalidKeyException, BadPaddingException, IllegalBlockSizeException, UnsupportedEncodingException, InvalidKeySpecException {
byte[] decodedPrivateKey = Base64.decode(pKey, 0);
PKCS8EncodedKeySpec X509privbKey = new PKCS8EncodedKeySpec(decodedPrivateKey);
privKey = KeyFactory.getInstance("RSA").generatePrivate(X509privbKey);
byte [] decodedMess = Base64.decode(kkk, 0);
Cipher decript2 = Cipher.getInstance("RSA");
decript2.init(Cipher.DECRYPT_MODE, privKey);
byte[] decriptedBytes2 = decript2.doFinal(decodedMess);
ss = new String(decriptedBytes2, "UTF-8");
// ss - дешифрованное сообщение, здесь мы сохраняем всю информацию
cv.put("idme",kk);
cv.put("idyou",k);
cv.put("data",ss);
db.insert("mess",null,cv);
}
Пробовал создавать пустое приложение в котором выполнялось бы только сохранение строки, данный код работал. Подскажите, в чем может быть проблема?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Коллеги, пытаюсь добавить еще одну ссылку на радио с инета, сейчас есть кнопка которая воспроизводит аудио-поток, хочу добавить еще одну кнопку...
Из производственной необходимости возникла идея написать программу, которая издавала бы звук в том случае, если на общий в организации принтер...
Я принимаю изображение и рисую его в окне но с каждым нарисованным изображением памяти жрёт всё больше и большеПри долгой работе вообще отказывает...
Народ как с помощью flex расположить блоки помечены красними рамками в таком порядке как на картинке?