Skip to content

Instantly share code, notes, and snippets.

View Gizmodo's full-sized avatar
:atom:
Eat, Code, Sleep, Repeat

SS Gizmodo

:atom:
Eat, Code, Sleep, Repeat
  • DL
  • Kostroma
  • 12:12 (UTC +03:00)
View GitHub Profile
@Gizmodo
Gizmodo / gist:b981435de95146cb5a18f66ce3ac6494
Created January 18, 2017 19:43
Bank list encodnig/decoding
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Text;
namespace EncodeBanks
{
class Program
{
private static Observable<Pair<Object, Integer>> observeSelect(Spinner spinner) {
final PublishSubject<Pair<Object, Integer>> selectSubject = PublishSubject.create();
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
@SuppressWarnings("unchecked") Pair<Object, Integer> pair = new Pair<>(parent.getItemAtPosition(position), position);
//Tuple tuple = new Tuple(parent.getItemAtPosition(position), position);
selectSubject.onNext(pair);
}
Multidex
Рано или поздно разработчик сталкивается с проблемой в 65 тысяч методов. Но начнем сначала. Когда вы хотите установить приложение на телефон вам нужен apk файл. Основа любого apk файла dex файл. Dex файл — это ваши java классы собранные в один файл. Но у dex файла есть ограничение в 65 тысяч методов. И большая часть приложений превышает этот лимит и получает exception при сборке. Для таких случаев создан multidex. В gradle(app module) добавляете:
...
defaultConfig {
...
multiDexEnabled true
...
}
//this is BAD!
def buildDateTime = new Date().format(‘yyMMddHHmm’).toInteger()
android {
defaultConfig {
versionCode buildDateTime
}
}
Instead, disable this on development builds:
def buildDateTime = project.hasProperty(‘devBuild’) ? 100 : new Date().format(‘yyMMddHHmm’).toInteger()
@Gizmodo
Gizmodo / gist:9584adf4602cc50f2c07ef96799dc644
Created September 23, 2017 21:37
Повороты экрана в Android без боли
https://habrahabr.ru/post/328512/
https://github.com/BrianOdisho/SimpleNewsReader
https://github.com/vpaliyX/Melophile
https://android-tools.ru/coding/otmena-zadachi-v-asynctask/
https://blog.aritraroy.in/20-awesome-open-source-android-apps-to-boost-your-development-skills-b62832cf0fa4
https://blog.mindorks.com/how-to-learn-android-development-f33dd6dba40d
https://rongi.github.io/kotlin-blog/rxjava/rx/2017/08/01/error-handling-in-rxjava.html
https://habrahabr.ru/post/332642/ Validator
https://blog.aritraroy.in/20-awesome-open-source-android-apps-to-boost-your-development-skills-b62832cf0fa4
@Gizmodo
Gizmodo / Api.java
Created November 20, 2017 20:27 — forked from ar-android/Api.java
OkHttp With RxAndroid and RxJava
public static Observable<Response> getData() {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
final OkHttpClient client = new OkHttpClient();
final Request request = new Request.Builder()
.url("https://github.com/ar-android/panfic/raw/master/Panfic/gen/com/ocit/data.json")
.get()
.addHeader("cache-control", "no-cache")
@Gizmodo
Gizmodo / Java
Created December 17, 2017 18:35
Java
public BaseJavaClass setInCircle(Boolean inCircle) {
this.inCircle = inCircle;
return this;
}
public BaseJavaClass setNeedFit(Boolean needFit) {
this.needFit = needFit;
return this;
}
@Gizmodo
Gizmodo / gist:21d7be622ab22076e147e01487e1eab3
Last active March 25, 2019 20:35
CMAKE для Boost & MongoDB под Ubuntu
cmake_minimum_required(VERSION 3.13)
project(untitled)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
set(CMAKE_CXX_STANDARD 11)
set(BOOST_ROOT /home/user/boost_1_69_0)
set(BOOST_INCLUDEDIR /home/user/boost_1_69_0)
set(BOOST_LIBRARYDIR /home/user/boost_1_69_0/stage/lib)
include_directories(
/usr/local/include/mongocxx/v_noabi
/usr/local/include/bsoncxx/v_noabi
@Gizmodo
Gizmodo / I2C_Scanner.ino
Created July 30, 2019 20:43
I2C Scanner
/*********
Rui Santos
Complete project details at https://randomnerdtutorials.com
*********/
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(115200);