Skip to content

Instantly share code, notes, and snippets.

View kiuchikeisuke's full-sized avatar

k-kiuchi/fei-san kiuchikeisuke

View GitHub Profile
@kiuchikeisuke
kiuchikeisuke / TechbookFes7-Retrospective.md
Last active September 22, 2019 12:34
技術書典7のふりかえり

準備期間の振り返り

執筆について

執筆環境

  • Windows(仕上げだけ一瞬Mac登場)
  • Atom(プラグインはテンプレートに言われるままインストールした)
  • REVIEW
@kiuchikeisuke
kiuchikeisuke / build.gradle
Last active October 30, 2018 08:13
3行でわかるKotlin v1.2.71からv1.3.0へのアップデート方法 ref: https://qiita.com/k_keisuke/items/91c76d6b3bae3fedc8fb
buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.71" //削除
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.0" //追加
...
}
}
@kiuchikeisuke
kiuchikeisuke / file1.txt
Created September 18, 2018 08:22
shellでcurlコマンドを使って無理やりURLエンコードする方法 ref: https://qiita.com/k_keisuke/items/321407a500edf20bfb13
HOST="https://sample.co.jp"
URL=""
while IFS='\&' read P1 P2;do
# curlのrequestログを一時的なファイルに書き出す
curl ${URL} -v --verbose --get --data-urlencode "${P1}" --data-urlencode "${P2}" 1> /dev/null 2>temp_log
# curlのログからurlEncodeされたリクエストを取り出し、Hostとくっつける
while read Q1 Q2 Q3 Q4;do
URL=`echo ${HOST}${Q3}`
done <<< `grep -E "> GET .+ HTTP/1\.[0-9]" temp_log`
done <<< `sample_query`
@kiuchikeisuke
kiuchikeisuke / main.gs
Created July 24, 2018 00:11
FCMの対象端末へのプッシュ通知をGAS使って簡単に実現する ref: https://qiita.com/k_keisuke/items/f670d2a3d7f78126f2f5
Const = {
FCMServerKey: "AAAAW1C_znk:APA91bHcG..."
}
function sendNotification(token, value1, value2) {
var data = {
"to": token,
"data":{
"value1": value1, //hogehoge
"value2": value2 //mogemoge
@kiuchikeisuke
kiuchikeisuke / file0.txt
Created June 20, 2018 07:06
Gmailに来るConnpass通知をいい感じにSlackに通知する ref: https://qiita.com/k_keisuke/items/072086fa760300ac060b
var messages = thread.getMessages();
var message = messages[0];
var subject = message.getSubject();
var body = message.getBody();
var url = body.match(/<a href="https:\/\/.+\.connpass\.com\/event\/.+\/.+utm_content=detail_btn"/);
if(url != null) {
url = url[0].substring('<a href="'.length, url[0].lastIndexOf('/') + 1);
var msg = "*" + subject + "* \n" + url;
@kiuchikeisuke
kiuchikeisuke / Activit
Last active July 23, 2018 23:39
JetpackのNavigationのオプション、NavOptionsをざっくり覗いてみる ref: https://qiita.com/k_keisuke/items/29cf9f4df7b3cdcbb147
/**
* 略
* @param launchDocument true to launch a new document task
* @deprecated As per the {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
* documentation, it is recommended to use {@link android.R.attr#documentLaunchMode} on an
* Activity you wish to launch as a new document.
*/
@Deprecated
@NonNull
public Builder setLaunchDocument(boolean launchDocument) {/* 略 */}
@kiuchikeisuke
kiuchikeisuke / example.js
Last active December 15, 2018 09:55
google-home-notifierが気づいたら動かなくなってた時の対処法 ref: https://qiita.com/k_keisuke/items/2974ddaf2bf24a3ea32e
const serverPort = 8091; // default port
const token = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; //追加
var deviceName = 'Google Home';
var ip = '192.168.xx.xx'; // default IP
// 中略
app.listen(serverPort, function () {
ngrok.connect({authtoken: token, addr: serverPort}, function (err, url) { //修正
@kiuchikeisuke
kiuchikeisuke / BadExample.kt
Created May 15, 2018 07:15
AndroidのテストをSpek+Mockitoで書こう ref: https://qiita.com/k_keisuke/items/815ced486e8cdff8670d
object SampleTest : Spek({
describe("describe1") {
describe(" describe2") {
describe(" describe3") {
on("input x=5,y=7") {
it("should be 12") {
val expected = 12
Assert.Equals(expected,Calc.sum(5,7))
}
}
@Provides
fun provideRealm(application: MainApplication): Realm {
val builder = RealmConfiguration.Builder().name(APP_KEY)
builder.initialData { /*引き継ぎ処理*/ } //追加
return if (BuildConfig.DEBUG) {
Realm.getInstance(builder.deleteRealmIfMigrationNeeded().build())
} else {
Realm.getInstance(builder.build())
}
}