负责SQL CRUD
- insert
- single
insertX(x:X)
- multiple
insertXxList(xxs:List<X>)
- single
- update
updateXXbyYY(xx:X,yy:Y)
- delete
- single
deleteX(x:X)
- multiple
deleteByYY(yy:Y)
- single
- read
<?php | |
/** | |
* Created by PhpStorm. | |
* User: aric | |
* Date: 18/7/10 上午9:34 | |
*/ | |
//获取重定向最终网址 | |
function get_redirect_final_target($url) | |
{ |
/** | |
* No Licenses. Use it in your favourite way. | |
*/ | |
import android.content.Context; | |
import android.os.Build; | |
import android.os.Handler; | |
import android.os.ParcelFileDescriptor; | |
import android.os.ProxyFileDescriptorCallback; | |
import android.os.storage.StorageManager; |
import android.arch.lifecycle.GenericLifecycleObserver | |
import android.arch.lifecycle.Lifecycle | |
import android.arch.lifecycle.Lifecycle.Event.ON_DESTROY | |
import android.arch.lifecycle.LifecycleOwner | |
import kotlinx.coroutines.experimental.CoroutineScope | |
import kotlinx.coroutines.experimental.Dispatchers | |
import kotlinx.coroutines.experimental.Job | |
import kotlinx.coroutines.experimental.android.Main | |
fun Lifecycle.createJob(cancelEvent: Lifecycle.Event = ON_DESTROY): Job { |
I can't find exact specifications on this, but it seems that iOS restricts bringing up the keyboard via programmatically focusing on <input>
. It only brings up the keyboard in response to explicit user interaction.
This presents a curious problem when you want to autofocus an input inside a modal or lightbox, since what you generally do is click on a button to bring up the lightbox, and then focus on the input after the lightbox has been opened. Without anything fancy, it actually works ok. The problem shows up when you try to add something fancy like a setTimeout
or a promise.then()
. I don't know why people would want to use a setTimeout here, but waiting for a promise is actually a pretty common use case. E.g. we try to batch dom manipulations like getting a lightbox to show up inside `requestAnimati
import android.annotation.TargetApi; | |
import android.content.Context; | |
import android.graphics.Bitmap; | |
import android.graphics.Canvas; | |
import android.graphics.pdf.PdfDocument; | |
import android.graphics.pdf.PdfRenderer; | |
import android.os.AsyncTask; | |
import android.os.Build; | |
import android.os.ParcelFileDescriptor; | |
import android.util.Log; |
In your command-line run the following commands:
brew doctor
brew update
/* | |
* Copyright (C) 2017 The Android Open Source Project | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software |
# Preconditions: | |
# 1. Install adb drivers on your computer | |
# 2. Append the path of 'adb.exe' to the PATH environment variable | |
# 3. run "adb devices" to run adb ademon in background and list all connected devices | |
# 4. run "adb shell" get in the shell interface | |
cd /sdcard | |
# list all directories in current path, whose size is less than 100 KB | |
#du -d 1 | grep -v '\./\.' | awk '$1 < 100 {print $0}' |