Ребята из СибГУТИ, ВЫ круты!
Month: Июнь 2013
Заготовка для работы с SQLite в Android
Маленький шаблон, для работы с SQLite:
public class DBAdapter
{
private static final String DATABASE_NAME = "test";
private static final int DATABASE_VERSION = 1;
private final Context context;
private DatabaseHelper DBHelper;
private SQLiteDatabase db;
public DBAdapter(Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}
private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super(context,DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
public SQLiteDatabase GetDataBaseOpen() throws SQLException
{
return this.db;
}
public DBAdapter Open() throws SQLiteException
{
db = DBHelper.getWritableDatabase();
return this;
}
public DBAdapter OpenForRead() throws SQLiteException
{
db = DBHelper.getReadableDatabase();
return this;
}
public void Close()
{
DBHelper.close();
}
}
Как получить SSID Wi-Fi сети из Android-приложения
Возникла необходимость получить SSID сети из Android приложения. Облазил StackOverflow вдоль и поперек… Ответ помечен как правильный. но я имплементирую код который дан и… приложение на нем останавливается. Долго я мучился. Оказывается, нужно добавить Permission…, а лучше два. Код почти полностью из ответа, но у меня он полностью не заработал, так что пришлось удалить ту часть, которая не работает:
private String getCurrentSsid(Context context) {
String ssid = null;
ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (networkInfo.isConnected()) {
final WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
final WifiInfo connectionInfo = wifiManager.getConnectionInfo();
if (connectionInfo != null) {
ssid = connectionInfo.getSSID();
}
}
return ssid;
}
Метод возвращает название SSID (строка) или null если wi-fi не подключен.
Для работы требуются следующие разрешения:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Как установить APK на телефон?
Бывает, когда нужно установить apk-файл на телефон. Есть простой способ сделать это при помощи SDK.
Команда в CMD будет такой:
adb.exe install <filename>.apk
Просто до безобразия, но работает. Есть несколько НО.
- На телефоне должна быть включена отладка по USB.
- Телефон должен быть определен SDK. У моего HTC была проблема…
- Нужен SDK или его часть — про это подробнее потом расскажу.
Java: GUI приложение для работы с текстовыми файлами
Привет, читатель :)
Дали вот такое задание, для написание на Java и обязательно в среде NetBeans:
Написать программу, которая должна уметь:
- Открывать каталог, типа С:\users\
- Выводить из каталога в Combobox файлы
- По нажатию кнопки «открыть» открывать в редактор текстовый файл из каталога
- При изменении файла и нажатии на кнопку «сохранить» сохранять изменения в том же файле который был открыт
Можно сказать, что я начал и закончил интерфейсом. А ну и еще одно — эта инструкция не будет такой подробной как некотрые ранее, так как мне кажется что тут все примитивно.
Google Play: Developer Console. Alpha\Beta Tesring
На последнем Google I/O 2013 Google же анонсировал возможность Alpha\Beta — тестирования приложений в магазине Google Play. Штука интересная, нужная, но при попытке выложить так приложение у меня возникли дикие проблемы, которые удалось решить не сразу, поэтому я надеюсь, что этот материал будет полезен начинающим разработчикам, тем более, что материала по данной теме на русском языке я не нашел. Есть только небольшая заметка на stackoverflow.com
Выкладка Бета\Альфа-версии отличается от релизной выкладки тем, что:
- Приложение недоступно по средствам поиска в Google Play.
- Если это единственное приложение у разработчика, то его страницы просто нет.
- Приложение доступно для тестирования только пользователям по приглашению. Об этом ниже.
На странице «Файлы APK» Появляется блок «Бета-тестировщики», который внутри выглядит так:
Сразу после публикации есть ссылка, но при переходе на нее (и авторизации на Google) получаем ошибку 404. Все потому что нужно сначала создать сообщество на Google Plus и пригласить туда людей, а уж после этого можно давать им эту ссылку. Создать сообщество можно тут. После этого ссылка начнет открываться и тестеры смогут увидить примерно такую картинку (название приложение, группы и автора закрыты):
После нажатия кнопки «Учавствовать в тестировании» у пользователя появляется возможность скачать приложение.
При этом стоит заметить, что приложение добавляются на Google Play несколько часов… Поэтому сначала ссылка будет вести в пустоту, потом оно появится в Google Play, но при попытке скачать приложение телефон будет говорить: «приложение не найдено». Это нормальное поведение. Нужно еще подожать часа два-три.
Очень кратко. Надеюсь понятно. Если есть вопросы, вы как обычно можете задать их в комментариях.