Eric Steven Raymond, Thyrsus Enterprises, < esr@thyrsus.com >
Rick Moen, < respond-auto@linuxmafia.com >
翻译:柯非, < zer4tul@gmail.com >
这篇译文基于2014.05.21更新的原文修订版3.10。
特别感谢王刚,此前本文的翻译是由他进行的。
const { ContractFactory, utils } = require("ethers") | |
const WETH9 = require("../WETH9.json") | |
const fs = require('fs'); | |
const { promisify } = require('util'); | |
const artifacts = { | |
UniswapV3Factory: require("@uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json"), | |
SwapRouter: require("@uniswap/v3-periphery/artifacts/contracts/SwapRouter.sol/SwapRouter.json"), | |
NFTDescriptor: require("@uniswap/v3-periphery/artifacts/contracts/libraries/NFTDescriptor.sol/NFTDescriptor.json"), |
// 被hook的app的包名 | |
String hookedPackageName = "com.xekvhaDYe.androie"; | |
// app里面的Activity | |
String hookedActivityName = "com.xekvhaDYu.android.a.MainActivity"; | |
if (hookedPackageName.equals(lpparam.packageName)) { | |
XposedBridge.log("has hooked..."); | |
XposedBridge.log("inner => " + lpparam.processName); | |
Class ActivityThread = XposedHelpers.findClass("android.app.ActivityThread", lpparam.classLoader); | |
XposedBridge.hookAllMethods(ActivityThread, "performLaunchActivity", new XC_MethodHook() { | |
@Override |
Eric Steven Raymond, Thyrsus Enterprises, < esr@thyrsus.com >
Rick Moen, < respond-auto@linuxmafia.com >
翻译:柯非, < zer4tul@gmail.com >
这篇译文基于2014.05.21更新的原文修订版3.10。
特别感谢王刚,此前本文的翻译是由他进行的。
launchctl unload /Library/LaunchAgents/org.macosforge.xquartz.startx.plist | |
sudo launchctl unload /Library/LaunchDaemons/org.macosforge.xquartz.privileged_startx.plist | |
sudo rm -rf /opt/X11* /Library/Launch*/org.macosforge.xquartz.* /Applications/Utilities/XQuartz.app /etc/*paths.d/*XQuartz | |
sudo pkgutil --forget org.macosforge.xquartz.pkg | |
# Log out and log in |
<?php | |
namespace App\Policies; | |
use Illuminate\Contracts\Auth\Access\Gate as GateContract; | |
class ApplicationPolicy | |
{ | |
/** | |
* @var GateContract | |
*/ |
#Laravel 5 Simple ACL manager
Protect your routes with user roles. Simply add a 'role_id' to the User model, install the roles table and seed if you need some example roles to get going.
If the user has a 'Root' role, then they can perform any actions.
Simply copy the files across into the appropriate directories, and register the middleware in App\Http\Kernel.php
DB_HOST=mysql | |
DB_DATABASE=homestead | |
DB_USERNAME=homestead | |
DB_PASSWORD=secret |
# Before Script | |
before_script: | |
- composer self-update | |
- composer install --prefer-dist > /dev/null | |
- cp .env.example .env | |
- php artisan key:generate | |
- php artisan migrate:refresh | |
# Services | |
services: |
Download the following ZIPs: | |
ARM Translation Installer v1.1 (http://www.mirrorcreator.com/files/0ZIO8PME/Genymotion-ARM-Translation_v1.1.zip_links) | |
Download the correct GApps for your Android version: | |
Google Apps for Android 5.1 (https://www.androidfilehost.com/?fid=96042739161892865 - gapps-L-4-21-15.zip) | |
Google Apps for Android 5.0 (https://www.androidfilehost.com/?fid=95784891001614559 - gapps-lp-20141109-signed.zip) | |
Google Apps for Android 4.4.4 (https://www.androidfilehost.com/?fid=23501681358544845 - gapps-kk-20140606-signed.zip) | |
Google Apps for Android 4.3 (https://www.androidfilehost.com/?fid=23060877490000124 - gapps-jb-20130813-signed.zip) | |
Google Apps for Android 4.2 (https://www.androidfilehost.com/?fid=23060877490000128 - gapps-jb-20130812-signed.zip) |
var gulp = require('gulp'); | |
var browserify = require('browserify'); | |
var babelify = require('babelify'); | |
var source = require('vinyl-source-stream'); | |
gulp.task('browserify', function() { | |
return browserify('./js/app.js') | |
.transform(babelify, { stage: 0 }) | |
.bundle() | |
.on('error', function(e){ |