Страница 5 из 10
Re: Android и MySQL
Добавлено: 09 сен 2013, 12:22
Foenix
Isaev писал(а):да к mysql, просто у меня в драйвере прописано в манифесте, что
Main-Class: net.sourceforge.jtds.jdbc.Driver
и в services: net.sourceforge.jtds.jdbc.Driver
а в примере выше у mozilalvfg
в services: com.mysql.jdbc.Driver
вот и вся разница
да неправильно у тебя!
Re: Android и MySQL
Добавлено: 09 сен 2013, 13:13
Isaev
c новой версией так же получаю
Код: Выделить всё
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
log.info(">>> jdbc.Driver: instance successful");
} catch (Exception e) {
log.info(">>> jdbc.Driver: instance error");
e.printStackTrace();
}
try {
//conn = DriverManager.getConnection(url, userName, password);
conn = DriverManager.getConnection("jdbc:mysql://localhost/jugendkultur");
if(conn!=null) {
log.info(">>> jdbc.Driver: connect successful");
}
} catch (SQLException e) {
log.info(">>> jdbc.Driver: connect error");
System.out.println("SQLException: "+e.getMessage());
System.out.println("SQLState: "+e.getSQLState());
System.out.println("VendorError: "+e.getErrorCode());
e.printStackTrace();
}
Код: Выделить всё
09-09 10:12:35.185: INFO/MyActivity(556): >>> jdbc.Driver: instance successful
09-09 10:38:58.325: ERROR/dalvikvm(587): Could not find class 'javax.naming.StringRefAddr', referenced from method com.mysql.jdbc.ConnectionPropertiesImpl$ConnectionProperty.storeTo
09-09 10:12:36.515: INFO/MyActivity(556): >>> jdbc.Driver: connect error
09-09 10:12:36.525: INFO/System.out(556): SQLException: Communications link failure
09-09 10:12:36.525: INFO/System.out(556): [ 09-09 10:12:36.525 556:0x233 I/System.out ]
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
09-09 10:12:36.525: INFO/System.out(556): SQLState: 08S01
09-09 10:12:36.525: INFO/System.out(556): VendorError: 0
в новой версии драйвера ещё кричит на отсутствие класса кстати
Re: Android и MySQL
Добавлено: 09 сен 2013, 14:08
Foenix
порт где?
.newInstance() не надо.
Re: Android и MySQL
Добавлено: 09 сен 2013, 16:42
Isaev
Foenix писал(а):порт где?
порт не влияет... даже в официальной доке localhost без порта прописан... но я пробовал и с ним, ошибка та же
Foenix писал(а):.newInstance() не надо.
завтра попробую без, но не думаю что это причина, т.к. почти везде пишут что надо
Re: Android и MySQL
Добавлено: 09 сен 2013, 21:26
Foenix
нет, это не причина, но порт лучше написать а потом анализировать ошибки
скорее всего нужно подобрать устойчивую версию драйвера.
Re: Android и MySQL
Добавлено: 10 сен 2013, 00:07
Foenix
Isaev писал(а):Foenix писал(а):порт где?
порт не влияет... даже в официальной доке localhost без порта прописан...
ты удивишься, там столько неработающих примеров )))
Re: Android и MySQL
Добавлено: 10 сен 2013, 00:35
mozilalvfg
"Isaev" если вам нужна локальная база(тобиш MySql server ) на устройстве андроид! Вам сюда
KSWEB.
Хотя я установил не PRO версию и несмотря что писало мол "сервер MySql не включен" он пахал. После недели мне было приятно работать с этой программой и я решил поддержать разработчика = 3 WMZ+0,5 WMZ комиссия. Он прислал мне ключ на ПРО версию.
2. По Факу с тогоже
http://jtds.sourceforge.net/faq.html
Код: Выделить всё
What is the URL format used by jTDS?
The URL format for jTDS is:
jdbc:jtds:<server_type>://<server>[:<port>][/<database>][;<property>=<value>[;...]]
Выше я уже Вам писал в пункте 1 : использовать properties
Код: Выделить всё
Properties properties = new Properties();
properties.setProperty("user", "Ваш_пользователь");
properties.setProperty("password", "Пароль_рользователя");
properties.setProperty("useUnicode", "true");
properties.setProperty("characterEncoding", "UTF-8");
properties.setProperty("autoReconnect", "true");
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/" +"Имя_Вашей_базы", properties);
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/" +"Имя_Вашей_базы",
properties);
в Вашем коде нет свойств
Код: Выделить всё
conn = DriverManager.getConnection(url, userName, password);
Вы можете заметить разницу между
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/" +"Имя_Вашей_базы", properties);
и
conn = DriverManager.getConnection(url, userName, password);
Ваша стройка подключения должна быть такая
conn = DriverManager.getConnection(url, userName, password,properties);
Re: Android и MySQL
Добавлено: 10 сен 2013, 00:48
mozilalvfg
"Foenix" как я вас понимаю
Re: Android и MySQL
Добавлено: 10 сен 2013, 01:01
mozilalvfg
Isaev писал(а):Foenix писал(а):порт где?
порт не влияет... даже в официальной доке localhost без порта прописан... но я пробовал и с ним, ошибка та же
Foenix писал(а):.newInstance() не надо.
завтра попробую без, но не думаю что это причина, т.к. почти везде пишут что надо
Прочитайте Фак net.sourceforge.jtds очень внимательно:
Код: Выделить всё
What are the class names of the Driver, DataSource, ConnectionPoolDataSource, XADataSource and ObjectFactory implementations?
Interface jTDS Implementation
java.sql.Driver net.sourceforge.jtds.jdbc.Driver
javax.sql.DataSource net.sourceforge.jtds.jdbcx.JtdsDataSource
javax.sql.ConnectionPoolDataSource net.sourceforge.jtds.jdbcx.JtdsDataSource
javax.sql.XADataSource net.sourceforge.jtds.jdbcx.JtdsDataSource
javax.naming.spi.ObjectFactory net.sourceforge.jtds.jdbcx.JtdsObjectFactory
Класа " DriverManager" нет в net.sourceforge.jtds.jdbc!
а соединение возможно через Пул net.sourceforge.jtds.jdbcx.JtdsDataSource (javax.sql.ConnectionPoolDataSource)
Неморочте себе голову используйте стандартный драйвер от Оракла, который посоветовала Вам
"Foenix"
Re: Android и MySQL
Добавлено: 10 сен 2013, 09:45
Isaev
Код: Выделить всё
void connect() {
try {
Thread t = new Thread(new Runnable() {
public void run() {
log.info(">>> Thread is created");
Connection conn = null;
String sServerName = "localhost:3306";
String sDBName = "jugendkultur";
Properties properties = new Properties();
properties.setProperty("user", "root");
properties.setProperty("password", "");
properties.setProperty("useUnicode", "true");
properties.setProperty("characterEncoding", "UTF-8");
properties.setProperty("autoReconnect", "true");
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
log.info(">>> jdbc.Driver: instance successful");
} catch (Exception e) {
log.info(">>> jdbc.Driver: instance error");
e.printStackTrace();
}
try {
conn = (Connection) DriverManager.getConnection("jdbc:mysql://"+sServerName+"/"+sDBName, properties);
if(conn!=null) {
log.info(">>> jdbc.Driver: connect successful");
}
} catch (SQLException e) {
log.info(">>> jdbc.Driver: connect error");
System.out.println(">SQLException: "+e.getMessage());
System.out.println(">SQLState: "+e.getSQLState());
System.out.println(">VendorError: "+e.getErrorCode());
e.printStackTrace();
}
try {
conn.close();
} catch (SQLException e) {
log.info(">>> jdbc.Driver: close error");
System.out.println(">SQLException: "+e.getMessage());
System.out.println(">SQLState: "+e.getSQLState());
System.out.println(">VendorError: "+e.getErrorCode());
e.printStackTrace();
} catch (NullPointerException e) {
log.info(">>> jdbc.Driver: close error (попытка закрытия не созданного соединения)");
System.out.println(">NullPointerException: "+e.getMessage());
e.printStackTrace();
}
}
});
t.start();
} catch (Exception e) {
e.printStackTrace();
log.info(">>> Thread: create error");
}
}
Logcat
Код: Выделить всё
09-10 06:40:57.815: DEBUG/AndroidRuntime(463): --- registering native functions ---
09-10 06:40:58.265: INFO/ActivityManager(59): Starting activity: Intent { flg=0x10000000 cmp=com.example.Todo_List/.MyActivity }
09-10 06:40:58.295: INFO/ActivityManager(59): Start proc com.example.Todo_List for activity com.example.Todo_List/.MyActivity: pid=469 uid=10057 gids={3003}
09-10 06:40:58.344: DEBUG/AndroidRuntime(463): Shutting down VM
09-10 06:40:58.344: DEBUG/dalvikvm(463): Debugger has detached; object registry had 1 entries
09-10 06:40:59.035: DEBUG/dalvikvm(469): GC_EXTERNAL_ALLOC freed 672 objects / 53072 bytes in 42ms
09-10 06:40:59.395: INFO/MyActivity(469): === Logging Anfang ===
09-10 06:40:59.414: INFO/MyActivity(469): >>> Thread is created
09-10 06:40:59.455: INFO/MyActivity(469): >>> jdbc.Driver: instance successful
09-10 06:40:59.654: INFO/ActivityManager(59): Displayed activity com.example.Todo_List/.MyActivity: 1371 ms (total 1371 ms)
09-10 06:41:00.294: DEBUG/dalvikvm(469): GC_FOR_MALLOC freed 3366 objects / 198512 bytes in 42ms
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to find class referenced in signature (Ljavax/naming/Reference;)
09-10 06:41:00.534: INFO/dalvikvm(469): Could not find method javax.naming.Reference.get, referenced from method com.mysql.jdbc.ConnectionPropertiesImpl$ConnectionProperty.initializeFrom
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to resolve virtual method 8307: Ljavax/naming/Reference;.get (Ljava/lang/String;)Ljavax/naming/RefAddr;
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: replacing opcode 0x6e at 0x0004
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: dead code 0x0007-0013 in Lcom/mysql/jdbc/ConnectionPropertiesImpl$ConnectionProperty;.initializeFrom (Ljavax/naming/Reference;Lcom/mysql/jdbc/ExceptionInterceptor;)V
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to find class referenced in signature (Ljavax/naming/Reference;)
09-10 06:41:00.534: ERROR/dalvikvm(469): Could not find class 'javax.naming.StringRefAddr', referenced from method com.mysql.jdbc.ConnectionPropertiesImpl$ConnectionProperty.storeTo
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to resolve new-instance 521 (Ljavax/naming/StringRefAddr;) in Lcom/mysql/jdbc/ConnectionPropertiesImpl$ConnectionProperty;
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: replacing opcode 0x22 at 0x0006
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: dead code 0x0008-0019 in Lcom/mysql/jdbc/ConnectionPropertiesImpl$ConnectionProperty;.storeTo (Ljavax/naming/Reference;)V
09-10 06:41:00.664: INFO/dalvikvm(469): Could not find method java.lang.management.ManagementFactory.getThreadMXBean, referenced from method com.mysql.jdbc.MysqlIO.appendDeadlockStatusInformation
09-10 06:41:00.664: WARN/dalvikvm(469): VFY: unable to resolve static method 7676: Ljava/lang/management/ManagementFactory;.getThreadMXBean ()Ljava/lang/management/ThreadMXBean;
09-10 06:41:00.664: DEBUG/dalvikvm(469): VFY: replacing opcode 0x71 at 0x0079
09-10 06:41:00.675: DEBUG/dalvikvm(469): VFY: dead code 0x007c-00a9 in Lcom/mysql/jdbc/MysqlIO;.appendDeadlockStatusInformation (Ljava/lang/String;Ljava/lang/StringBuffer;)V
09-10 06:41:00.675: DEBUG/dalvikvm(469): VFY: dead code 0x00ea-020a in Lcom/mysql/jdbc/MysqlIO;.appendDeadlockStatusInformation (Ljava/lang/String;Ljava/lang/StringBuffer;)V
09-10 06:41:04.934: INFO/MyActivity(469): >>> jdbc.Driver: connect error
09-10 06:41:04.934: INFO/System.out(469): >SQLException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
09-10 06:41:04.934: INFO/System.out(469): >SQLState: 08001
09-10 06:41:04.934: INFO/System.out(469): >VendorError: 0
09-10 06:41:04.934: WARN/System.err(469): com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1012)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2388)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2309)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
09-10 06:41:04.954: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:412)
09-10 06:41:04.954: WARN/System.err(469): at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
09-10 06:41:04.954: WARN/System.err(469): at java.sql.DriverManager.getConnection(DriverManager.java:191)
09-10 06:41:04.954: WARN/System.err(469): at com.example.Todo_List.MyActivity$1.run(MyActivity.java:45)
09-10 06:41:04.954: WARN/System.err(469): at java.lang.Thread.run(Thread.java:1096)
09-10 06:41:04.954: WARN/System.err(469): Caused by: com.mysql.jdbc.CommunicationsException: Communications link failure
09-10 06:41:04.954: WARN/System.err(469): [ 09-10 06:41:04.954 469:0x1dc W/System.err ]
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:357)
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2482)
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2327)
09-10 06:41:04.964: WARN/System.err(469): ... 7 more
09-10 06:41:04.964: WARN/System.err(469): Caused by: java.net.ConnectException: localhost/127.0.0.1:3306 - Connection refused
09-10 06:41:04.964: WARN/System.err(469): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:254)
09-10 06:41:04.964: WARN/System.err(469): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:219)
09-10 06:41:04.974: WARN/System.err(469): at java.net.Socket.startupSocket(Socket.java:781)
09-10 06:41:04.974: WARN/System.err(469): at java.net.Socket.<init>(Socket.java:316)
09-10 06:41:04.974: WARN/System.err(469): at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:259)
09-10 06:41:04.974: WARN/System.err(469): at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:307)
09-10 06:41:04.974: WARN/System.err(469): ... 9 more
09-10 06:41:04.974: INFO/MyActivity(469): >>> jdbc.Driver: close error (попытка закрытия не созданного соединения)
09-10 06:41:04.974: INFO/System.out(469): >NullPointerException: null
09-10 06:41:04.974: WARN/System.err(469): java.lang.NullPointerException
09-10 06:41:04.974: WARN/System.err(469): at com.example.Todo_List.MyActivity$1.run(MyActivity.java:58)
09-10 06:41:04.974: WARN/System.err(469): at java.lang.Thread.run(Thread.java:1096)
09-10 06:41:05.174: DEBUG/dalvikvm(107): GC_EXPLICIT freed 661 objects / 36920 bytes in 128ms
09-10 06:41:10.204: DEBUG/dalvikvm(225): GC_EXPLICIT freed 157 objects / 11504 bytes in 144ms
09-10 06:41:15.235: DEBUG/dalvikvm(269): GC_EXPLICIT freed 49 objects / 2472 bytes in 134ms
ну по крайней мере теперь не ругается на путь
Только соединиться всё равно не выходит
на нескольких форумах писали что при переходе на старую версию 5.0 эта ошибка исчезала
пробовал, но у меня тогда до открытия вообще не доходит дело, отваливается поток
Код: Выделить всё
09-10 07:46:33.138: ERROR/AndroidRuntime(372): FATAL EXCEPTION: Thread-8
java.lang.VerifyError: com.mysql.jdbc.MysqlIO
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2921)
at com.mysql.jdbc.Connection.<init>(Connection.java:1555)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at com.example.Todo_List.MyActivity$1.run(MyActivity.java:47)
at java.lang.Thread.run(Thread.java:1096)
может он у меня криво реализован?
Re: Android и MySQL
Добавлено: 10 сен 2013, 18:42
mozilalvfg
Установите для начала
http://www.mysql.com/products/workbench/ и попробуйте зайти через него. Я подозреваю что у root нет пароля при соединении. Всё таки попробуйте подключиться локально через "workbench". Если удачно пишите будем пробовать следующий этап.
P.S. Практическим опытом собрав проект на Еклипсе я понял причину не работы кода:
1. у root не может быть пустого пароля;
2. без установленного MySql server на андроид эмуляторе "localhost:3306" работать не будет;
Решение проблем - установите виртуальною машину, в ней установите MySql сервер , настройте сеть с виртуалкой чтобы через "workbench" с материнской ОС Вы могли подключаться к MySql базе на виртуалке, создайте пользователей как писал я раньше.
В проекте пропишите IP виртуалки типа так
DriverManager.getConnection("jdbc:mysql://192.168.0.150:3306/db", properties);
гарантирую 100% работы данного метода.
P.S.S. В подтверждения Ваших мучений создал новый эмулятор по умолчанию, не устанавливал MySql server на андроид и строка DriverManager.getConnection("jdbc:mysql://localhost:3306/db", properties); не работает - по причине отсутствия MySql server на андроид
Re: Android и MySQL
Добавлено: 11 сен 2013, 00:40
Isaev
mozilalvfg писал(а):
Напомните пожалуйста в какой IDE Вы программируете? я соберу тестовый проект для Вас.
Установите для начала
http://www.mysql.com/products/workbench/ и попробуйте зайти через него. Я подозреваю что у root нет пароля при соединении. Всё таки попробуйте подключиться локально через "workbench". Если удачно пишите будем пробовать следующий этап.
Зачем? я на php делаю простенький скрипт и с теми же параметрами подключения всё прекрасно работает
у root нет пароля да, потому и в программе там пусто, без пароля должно подключаться
а IDE - IntelliJ IDEA, проект вы уже выкладывали, но у меня он ту же ошибку выдаёт, что и мой
Re: Android и MySQL
Добавлено: 11 сен 2013, 13:41
Isaev
mozilalvfg писал(а):Установите для начала
http://www.mysql.com/products/workbench/ и попробуйте зайти через него. Я подозреваю что у root нет пароля при соединении. Всё таки попробуйте подключиться локально через "workbench". Если удачно пишите будем пробовать следующий этап.
да, через workbench всё подключается нормально,
с пустым паролем для root
mozilalvfg писал(а):
1. у root не может быть пустого пароля;
2. без установленного MySql server на андроид эмуляторе "localhost:3306" работать не будет;
1. ну как не может, если он там по-умолчанию пустой и везде с пустым работает?
2. а на андроиде потом тоже придётся ставить MySql server или это только на этапе разработки?
если первое, то это не вариант, если второе, то звучит довольно странно
Re: Android и MySQL
Добавлено: 11 сен 2013, 13:48
Foenix
Странно звучит, чтоб сервер ставить на андроид, когда у андроида есть своя база данных хорошая, простая и быстрая. Смысл? Да скачайте вы данные с удаленного сервера в базу sqlite и работайте с ней - удобно, быстро.
Не знаю, конечно, для чего у вас приложение, но я бы сто раз подумала, прежде чем устанавливать приложение с такими требованиями в свой планшет. Сервер - это не просто какая-то "библиотечка" для работы с субд
Re: Android и MySQL
Добавлено: 11 сен 2013, 14:42
Mykola
Foenix писал(а):rezak90 писал(а):в-третьих, гемора никакого с моей стороны нету
это сейчас нету, а когда ты только интересовалась этой темой то сколько времени потратила? наверняка не одну неделю.
ну, а сколько бы я потратила на другую тему? Скажем так, чисто соединение я делала примерно неделю, но и потоки и все что с этим связано туда входило. ПРосто если уж так брать, то я месяца два-три первые каждый день какую-то подобную задачку решала, т.к. это все для меня новое.
Я так понимаю,что при описываемом тобой способе мне бы пришлось еще на стороне сервера что-то делать, а мне бы этого точно не дали.
Ну, к примеру что-то на ПХП замутить, сервис...))
У меня возникают другие вопросы:
Как держится соединение?
Насколько это безопасно с точки зрения данных?
И звените за офф
Не заметил что тут 5 страниц.
Re: Android и MySQL
Добавлено: 11 сен 2013, 15:12
Foenix
в моем случае все просто - это было требование руководства и для безопасности у нас есть армия админов, плюс обязательный фиксированный айпи на устройствах. Соединение держится отлично, если у устройства хороший вай-фай.
В других случаях лучше делать http-запросами и парсить json, замутив апи на сервере.
Re: Android и MySQL
Добавлено: 11 сен 2013, 15:20
Mykola
Foenix писал(а):в моем случае все просто - это было требование руководства и для безопасности у нас есть армия админов, плюс обязательный фиксированный айпи на устройствах. Соединение держится отлично, если у устройства хороший вай-фай.
В других случаях лучше делать http-запросами и парсить json, замутив апи на сервере.
Я не силен, но соединение с базой на прямую не есть хорошо(в том плане что все параметры подключения к базе статические, я правильно понимаю?).
В других случаях лучше делать http-запросами и парсить json, замутив апи на сервере. -Этот подход для ленивых (буду надеяться, что Славик, мне на спину плевать не будет))) ).
Re: Android и MySQL
Добавлено: 11 сен 2013, 15:23
Foenix
у тебя вопрос был держится ли соединение, а что хорошо или плохо мы уже обсуждали. Если возможность есть, значит, она кому-то требуется.
Re: Android и MySQL
Добавлено: 11 сен 2013, 15:40
Mykola
Foenix писал(а):у тебя вопрос был держится ли соединение, а что хорошо или плохо мы уже обсуждали. Если возможность есть, значит, она кому-то требуется.
Насколько это безопасно с точки зрения данных? - вопрос 2.
Если возможность есть... -возможность всегда есть...
Я не пытаюсь тебе переубедить это плохо, или хорошо. Все зависит от задачи...
Я всего хочу сказать, что выбирая не стандартное решение нужно быть уверенным, что заказчик полностью осознает последствия.
Сегодня читал статью на хабре(
http://habrahabr.ru/post/193204/) суть в том что он пишет приложения для таксистов связанное с расчетом приватбанковской картой и нашел уязвимость с переводом денег. Что делает банк, он обвиняет программиста и возбуждает уголовное дело.
Re: Android и MySQL
Добавлено: 11 сен 2013, 15:43
Mykola