美しすぎるAlibaba Cloud画像ホスティングツール

一度サボると気持ちいい、ずっとサボればずっと気持ちいい。うっかりまた一ヶ月も更新をサボってしまい、元旦にさえ顔を出すこともなく、お恥ずかしい限りです。 その埋め合わせとして、今日の週末にAlibaba画像アップローダーを一つ公開します。 以前のプログラムは多くの方からインストールが難しいと言われましたが、今回のAlibaba画像アップローダーは非常にシンプルです。サーバーにアップロードしてアクセスするだけで利用でき、設定は一切不要。本当にこれだけです。(決して手抜きで何も書いていないわけではありません) インターフェースをご覧ください。とても美しいでしょう? 非常にシンプルなため、今のところデモサイトはありません。もし設置が完了した方がいらっしゃれば、下部のコメント欄にご自身のアップローダーのURLを投稿して、他の方々の参考にしていただけると幸いです。 プロジェクトページ ここ数日で新しいロゴに変更しました。これもまた綺麗でしょう?(会社のPhotoshopの達人にお願いして作ってもらいました) 幻想領域画像アップローダーも認証コードを導入しました。皆さん、不適切な画像をアップロードしないようにお願いしますね。 最後に 遅くなってしまいましたが、それでも言わせてください。皆様の新しい一年が、楽しく幸せなものでありますように!

2020年1月12日 · 1 分 · MoeJue

感熱ブルートゥースプリンター開発

最近、レシート印刷の作業をしており、プロジェクトの要件としてiOSとAndroidの両方で実装する必要がありました。最初は全く分からず、インターネットで多くの資料を探し、たくさんの落とし穴にはまり、多くの記事を読みましたが、結果的にはうまくいきました。 Bluetoothプリンターは一般的に、レシート印刷とラベル印刷の2種類の印刷モードに分けられます。 会社が購入した粗悪なプリンターには開発ドキュメントすらなく、多くの落とし穴にはまる羽目になりました。開発担当者に購入時に相談してくれればよかったのに。 現在、WeChatミニプログラムでBluetoothプリンターに接続する wx.createBLEConnection は、iOSデバイスでは問題なく動作しますが、一部のAndroidスマートフォンでは異常が発生します(接続時にシステムペアリングボックスがポップアップ表示され、キャンセルをタップしても、ペアリングコードを入力して確定をタップしても、すぐに接続が切断されます。入力もキャンセルもしない場合、30秒以内にBluetoothプリンターから自動的に切断されます)。 現在採用している方法は、AndroidとiOSそれぞれにBluetooth印刷コマンドのセットを作成することです。 IOS // ====================蓝牙操作================== //初始化蓝牙模块 openBluetoothAdapter() { if (app.sysinfo.provider == 1) { // 开启蓝牙 app.onBluetooth() setTimeout(() => { this.android_search() }, 2000) return false; } this.closeBluetoothAdapter() uni.openBluetoothAdapter({ success: (res) => { console.log("初始化蓝牙模块: " + JSON.stringify(res)); this.startBluetoothDevicesDiscovery() }, fail: (res) => { if (res.errCode === 10001) { uni.onBluetoothAdapterStateChange((res) => { console.log('监听蓝牙适配器状态变化事件', res) if (res.available == false) { app.global_printing = {} this.connected = false this.chs = [] this.canWrite = false } if (res.available) { this.startBluetoothDevicesDiscovery() } }) } if (res.errCode) { app.alert('初始化蓝牙失败,错误码:' + res.errCode) return false; } app.alert(res.errMsg) } }) }, //获取本机蓝牙适配器状态 getBluetoothAdapterState() { uni.getBluetoothAdapterState({ success: (res) => { console.log('获取本机蓝牙适配器状态。', JSON.stringify(res)) if (res.discovering) { this.onBluetoothDeviceFound() } else if (res.available) { this.startBluetoothDevicesDiscovery() } }, fail: (res) => { console.log('error:获取本机蓝牙适配器状态失败', JSON.stringify(res)) setTimeout(() => { this.getBluetoothAdapterState() }, 500) } }) }, //开始搜寻附近的蓝牙外围设备 startBluetoothDevicesDiscovery() { console.log(this.discoveryStarted); if (this.discoveryStarted) { return } console.log('开始搜索蓝牙设备'); this.discoveryStarted = true this.onBluetoothDeviceFound() setTimeout(() => { uni.startBluetoothDevicesDiscovery({ allowDuplicatesKey: true, success: (res) => { console.log('startBluetoothDevicesDiscovery success', JSON.stringify( res)) }, fail: (res) => { if (res.errCode == '10001') { app.alert('当前蓝牙适配器不可用') } else { app.alert('搜索蓝牙失败,状态码:' + res.errCode) } } }) }, 500) }, // 停止搜索 stopBluetoothDevicesDiscovery() { uni.stopBluetoothDevicesDiscovery() this.discoveryStarted = false }, //寻找到新设备的事件的回调函数 onBluetoothDeviceFound() { console.log('寻找到新设备的事件的回调函数'); uni.onBluetoothDeviceFound((res) => { console.log(res); res.devices.forEach(device => { if (!device.name && !device.localName) { return } const foundDevices = this.devices const idx = this.inArray(foundDevices, 'deviceId', device.deviceId) if (idx === -1) { this.devices.push(device) } else { this.devices[idx] = device } }) }) }, //连接低功耗蓝牙设备 createBLEConnection(e) { uni.showLoading({ title: '设备连接中', mask: true }); const ds = e.currentTarget.dataset const deviceId = ds.deviceId const name = ds.name if (app.sysinfo.provider == 1) { if (ds.pair !== true) { this.android_search(deviceId) } else { console.log('已配对') } var device = null, BAdapter = null, BluetoothAdapter = null, uuid = null, main = null, bluetoothSocket = null; var mac_address = deviceId var main = plus.android.runtimeMainActivity(); BluetoothAdapter = plus.android.importClass("android.bluetooth.BluetoothAdapter"); var UUID = plus.android.importClass("java.util.UUID"); uuid = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"); BAdapter = BluetoothAdapter.getDefaultAdapter(); device = BAdapter.getRemoteDevice(mac_address); plus.android.importClass(device); bluetoothSocket = device.createInsecureRfcommSocketToServiceRecord(uuid); plus.android.importClass(bluetoothSocket); if (!bluetoothSocket.isConnected()) { console.log('检测到设备未连接,尝试连接....'); bluetoothSocket.connect(); } this.connected = true this.name = name this.deviceId = deviceId this.canWrite = true app.global_printing = { name: name, deviceId: deviceId } app.saveData1('global_printing', app.global_printing) uni.hideLoading(); return false; } uni.createBLEConnection({ deviceId, success: (res) => { this.connected = true this.name = name this.deviceId = deviceId app.global_printing = { name: name, deviceId: deviceId } this.onBLEConnectionStateChange() // 防止获取失败 setTimeout(() => { this.getBLEDeviceServices(deviceId) }, 1000) }, fail: (res) => { uni.hideLoading(); app.Toast('设备连接失败') console.log("蓝牙连接失败:", res); } }) this.stopBluetoothDevicesDiscovery() }, //获取蓝牙设备所有服务(service) getBLEDeviceServices(deviceId) { uni.getBLEDeviceServices({ deviceId, success: (res) => { console.log("获取蓝牙服务成功:" + JSON.stringify(res)) if (res.services.length == 0) { uni.hideLoading(); app.alert('没有获取到蓝牙服务,无法打印001') app.global_printing = {} return false } for (let i = 0; i < res.services.length; i++) { if (res.services[i].isPrimary) { this.getBLEDeviceCharacteristics(deviceId, res.services[i].uuid) return } } }, fail: (res) => { setTimeout(() => { this.getBLEDeviceServices(deviceId) }, 500) console.log("获取蓝牙服务失败:" + JSON.stringify(res)) } }) }, //获取蓝牙设备某个服务中所有特征值(characteristic) getBLEDeviceCharacteristics(deviceId, serviceId) { console.log('获取蓝牙设备某个服务中所有特征值', deviceId, serviceId) uni.getBLEDeviceCharacteristics({ deviceId, serviceId, success: (res) => { console.log('获取蓝牙设备某个服务中所有特征值 success', JSON.stringify(res)) uni.hideLoading(); if (res.characteristics.length == 0) { app.alert('没有获取到蓝牙服务,无法打印002') app.global_printing = {} return false } for (let i = 0; i < res.characteristics.length; i++) { let item = res.characteristics[i] if (item.properties.read) { uni.readBLECharacteristicValue({ deviceId, serviceId, characteristicId: item.uuid, }) } if (item.properties.write) { this.canWrite = true app.global_printing._deviceId = deviceId app.global_printing._serviceId = serviceId app.global_printing._characteristicId = item.uuid app.saveData1('global_printing', app.global_printing) //this.writeBLECharacteristicValue() } if (item.properties.notify || item.properties.indicate) { uni.notifyBLECharacteristicValueChange({ deviceId, serviceId, characteristicId: item.uuid, state: true, }) } } }, fail(res) { console.error('获取特征值失败:', res) } }) // 操作之前先监听,保证第一时间获取数据 uni.onBLECharacteristicValueChange((characteristic) => { console.log(this.data.chs); const idx = this.inArray(this.data.chs, 'uuid', characteristic.characteristicId) const data = {} if (idx === -1) { this.chs[this.data.chs.length] = { uuid: characteristic.characteristicId, value: ab2hex(characteristic.value) } } else { this.chs[idx] = { uuid: characteristic.characteristicId, value: ab2hex(characteristic.value) } } }) }, onBLEConnectionStateChange() { uni.onBLEConnectionStateChange((res) => { // 该方法回调中可以用于处理连接意外断开等异常情况 console.log(`蓝牙连接状态改变device ${res.deviceId} state has changed, connected: ${res.connected}`) if (res.connected == false) { app.global_printing = {} this.connected = false this.chs = [] this.canWrite = false } }) }, //断开与低功耗蓝牙设备的连接 closeBLEConnection() { app.global_printing = {} uni.closeBLEConnection({ deviceId: this.deviceId }) this.connected = false this.chs = [] this.canWrite = false }, //关闭蓝牙模块 closeBluetoothAdapter() { app.global_printing = {} uni.closeBluetoothAdapter() this.discoveryStarted = false }, //发送数据 sendStr(bufferstr, success, fail) { var that = this; uni.writeBLECharacteristicValue({ deviceId: app.global_printing._deviceId, serviceId: app.global_printing._serviceId, characteristicId: app.global_printing._characteristicId, value: bufferstr, success: function(res) { success(res); console.log('发送的数据:' + bufferstr) // console.log('message发送成功') }, fail: function(res) { fail(res) console.log("数据发送失败:" + JSON.stringify(res)) }, complete: function(res) { // console.log("发送完成:" + JSON.stringify(res)) } }) }, //遍历发送数据 printCode(arr) { var that = this; if (arr.length > 0) { this.sendStr(arr[0], function(success) { arr.shift(); that.printCode(arr); }, function(error) { app.alert('打印失败,错误码:' + error.errCode) app.printing_status = false console.log(error); }); return false; } setTimeout(function() { app.printing_status = false console.log('打印结束'); }, 1000); }, Android 比較的シンプルで便利です。Native.jsを使用してNative Javaインターフェースチャネルを直接呼び出し、plus.androidを介してAndroidネイティブシステムAPIを呼び出します。 ネイティブAndroidドキュメント https://developer.android.google.cn/reference/android/bluetooth/BluetoothAdapter?hl=en ...

2019年11月5日 · 9 分 · MoeJue

サボっていた主が、新版の三合一を持って帰ってきました。

5月20日の告白以来、ハト主は行方不明の状態が続いていました……. 何ヶ月ぶりか分かりませんが、三合一がまた更新されました。2ヶ月前にグループで立てた目標を、今日達成しました。間の2ヶ月間何をしていたかは聞かないでください-.-(大規模なハトの集会に参加するのに忙しかった) 正文 ネットワーク認識が頻繁にダウンし、非常に不安定であるというフィードバックを多くの仲間から受けていたため、今回特別にローカル認識を更新しました。 1G以上のメモリを搭載したマシンへのインストールを推奨します。推奨構成は2コア2G、最適構成は16コア32Gです [#手動顔文字] v2.0 ローカルQRコード認識と生成を追加 ネットワーク認識インターフェースを削除 既知のバグを修正 その他のいくつかの詳細な最適化 詳細な説明とインストールチュートリアルは、こちらをクリックして以前のバージョンをご覧ください。 新しいバージョンのウェブサイトはすべて古いバージョンのデータを保持しており、以前のユーザーの使用には影響せず、スポンサー版のデータとも同期されています。 スポンサー版 旧バージョンの海賊版が横行していたため、新版の三合一にはスポンサー版が追加されました。 デモサイト:https://qr.moeins.cn スポンサー版の主な特徴: QRコードの認識と生成を最適化し、認識精度を大幅に向上させ、認識速度を高速化し、CPUとメモリを占有せず、より安定しています。 21種類の三合一生成テンプレートを新規追加し、無限拡張をサポートします。追加チュートリアルは文末にあります。 外部APIインターフェースを新規追加しました。このプログラムに限定されず、どのプログラムからでも呼び出し可能です。 入手方法: こちらをクリックして18.88元以上をプロジェクトに寄付すると、決済コード三合一のスポンサー限定版を入手できます。ぜひお試しください! スポンサー版に関するいくつかの小さな説明(これまでは特に説明していませんでした) これまでのところ、私のすべてのスポンサー版プロジェクトはドメインに縛られず、暗号化されておらず、自由に拡張でき、二次開発をサポートしており、スポンサー金額も低く設定されています。そのため、スポンサーしてくださった方々は、入手したソースコードを安易に共有しないようお願いいたします。これは作者への敬意であり、ご自身の権利の保護でもあります。売買関係ではないため、重大なバグがない限り、作者は不定期に更新するか、無期限に更新を延期する場合があります。小さな問題が発生した場合、作者が空いている時間であれば指導や修正を手伝う用意がありますが、大規模な新機能の追加といった場合には、協力を拒否するか、別途料金をいただく権利があります。 スポンサー版テンプレート拡張チュートリアル テンプレートの推奨サイズは:900*1200 テンプレート画像を/public/static/images/template/テンプレートディレクトリに配置します。注意点として、中国語名を使用せず、jpg拡張子のみをサポートします。 ルートディレクトリのconfig.phpにあるqr_template項目に関連データを以下のような形式で設定します。 '001' => [ 'name' => '默认模板', 'data' => [ 150,200 ], 'title' => true, 'size' => 20 ] パラメータ説明 名称 変数名 必須 型 例 説明 テンプレートID なし はい int 001 テンプレートのファイル名。数字を推奨し、重複不可。 エイリアス name はい string デフォルトテンプレート フロントエンドに表示されるテンプレートのエイリアス X,Y data はい array [150,200] QRコード生成の左上隅の開始X(横座標)、Y(縦座標)座標。負の値は不可で、テンプレートサイズより小さいこと。 テンプレートタイトル title いいえ bool false テンプレートタイトルを有効にするかどうか。テンプレートがサポートしている場合(デフォルトテンプレートなど)に使用。空でも可。 サイズ size いいえ int 20 QRコードの生成サイズ。デフォルトは20。空でも可。 はい、とても簡単です!

2019年8月4日 · 1 分 · MoeJue

萌音クラウドノートプラットフォーム

公式サイト | 公式交流グループ | ブログ | GitHub エレガントなLaravel + 非常に使いにくいMDUI = 萌音クラウドノート。効率的なオンラインクラウドノートであり、技術文書のオンライン作成、閲覧、共有、ホスティングに特化しています。 プロジェクトの起源 ある日、某コミュニティ公式交流グループで、グループオーナーのRBQがこう言いました: クラウドノートを書いてくれない? また、ブロガーに残された時間が少ないため、多くの計画中の機能は断念されました…..残念╮(╯▽╰)╭ まあ、私は通常プロジェクトの機能を紹介するのが好きではないので、ご自身で発見してください! これは今年書いた最後のプロジェクトになるかもしれません。なぜなら、ブログのサブタイトルに書かれているように、私は夢を追いかけるからです。 今年も年初の目標を達成しました。完璧〜! インストール要件 LNMP/AMP PHP5.6.4+ OpenSSL、PDO、Mbstring、Tokenizer、XML、fileinfo Composer ダウンロード 1. このプロジェクトをクローン git clone https://github.com/178146582/note.git 2. composerで拡張パッケージをインストール composer install 3. Laravelのインストールを参照 途中の1万ステップは省略 xx. 完了 このプロジェクトにStarを付けてください〜(注意、これは特に重要です) あなたのドメインにアクセスするだけです 寄付❤ここをクリック

2018年11月6日 · 1 分 · MoeJue

萌音影视 - オンライン動画アプリ

ブログ | デモサイト | QQグループ | GitHub 洗練されたLaravelフレームワークと、全然可愛くないMeizi UIに基づいたオンライン動画アプリケーション 作者より オンライン動画サイトはどこにでも溢れていますが、それは私が自分で一つ書くことを妨げるものではありません。こうすれば、後で自分でアニメを見るのも便利になりますし、結局、自分で手を動かしてこそ豊かになれるものです。さらに新しい知識も学べるのですから、なんと素晴らしいことでしょう。 ページデザインは一部のウェブサイトを参考にしました。動画リソースはすべてインターネットからのものです。もし著作権侵害がありましたら、速やかにご連絡ください。 一緒にあのうんざりする60秒広告を捨てましょう〜 データベースなし、バックエンドモードなし、設定ファイルは一つだけ(config/web.php) 広告なし、VIP解析をサポート、公式ソース、高速、多チャンネル、多カテゴリ To-do: 独立したチャンネルホームページ テレビ局ライブ配信 複数の解析インターフェース 追加予定… スポンサー限定版 これはデュアルバージョンアプリケーションです。つまり、2つの異なるバージョンがあります。スポンサー版は通常版を最適化したもので、機能とパフォーマンスが大幅に向上し、実行速度が大幅に向上し、優先的な更新が維持されます。 さて、問題です。スポンサー限定版はどのように入手できますか? ここ または ここ でプロジェクトに58元以上を寄付することで入手できます。 もちろん、もしプロジェクトがあなたのお役に立てたなら、またはあなたが必要とするなら、私たちを支援することを選択できます。たとえわずかな金額でも、それは愛です。 オープンソースプロジェクトを書く人が利益のために書くことはないと思います。結局のところ、それはレンガ工場で一日レンガを運ぶよりも稼げないからです。 インストール要件 LNMP/AMP (PHP5.6+が必要) curl、OpenSSL拡張機能 Composer Composerによるメインプログラムのインストール 1. Composerを使用してmoeinsをインストール $ composer create-project a-jue/moeins #依存ライブラリのインストール後、インストールスクリプトが自動的に実行されます #以下のプロンプトが表示されたらインストール完了です > Illuminate\Foundation\ComposerScripts::postInstall > php artisan optimize Generating optimized class loader The compiled services file has been removed. > php artisan key:generate Application key [base64:Hx0I9UUQg7OyIz8lpDYG6Y/gW1uxS760ERdWfGG2jyQ=] set successfully. 2. ディレクトリ権限 publicサブディレクトリを公開Webディレクトリとして設定します 3. URLリライト Apacheサーバーの場合、プロジェクトディレクトリ内の.htaccessにはすでにリライトルールが設定されています。必要に応じて適宜修正してください。Nginxサーバーの場合、以下は参考となる設定です: ...

2018年9月25日 · 1 分 · MoeJue

QQ、支付宝(アリペイ)、微信支付(WeChat)の3つの決済コードが1つに

Receive the money ラ受け取りは、アリペイ、ウィーチャット、QQキャッシュコードの3つの統合システムです。 thinkPHP5.0 + MySQL + layuiで完成しました。 デモサイト:Paypal プロジェクトアドレス: GitHub 序文 チュートリアルも既成のコードも、インターネット上ではほとんどどこにでもある。 QRコードのアップロード、QRコードの識別、3-in-one支払いコードの生成、プロセスサービスの完全なセットを含むセットという言葉の具体化です。 3 in 1の大部分は個人的な使用のためだけであり、お金ラのコレクションは、複数のユーザーに3 in 1のサービスを提供することができます。 しかし、それは背景を持っていない、2つの主な理由があります: 1.頻繁に表示したり、構成、構成、生涯使用を変更する必要はありません。 2.著者の怠惰な癌の攻撃(また、インストールウィザードの不在を促した) 3.あなたが本当にそれを必要とする場合は、後でそれについて話します コード自体は比較的軽量で、フレームワークを使っているためにサイズが大きくなっている。 まあ、技術的な内容自体はなく、ほとんど使われない、人間の必要性に応じて書かれている、ちなみに、水水テキスト〜〜エスケープ(-)。 原則 3つのコードが1つになった領収書、とても魔法のように聞こえるし、感じるが、実際には、原理は非常に簡単です! QRコードは、実際には一連の文字列を含む単なる画像である。アリペイであれWeChatの支払いコードであれ、基本的には支払いリンクを含むQRコードなのだ。つまり、アリペイの閲覧ページであればアリペイの決済リンクを、WeChatであればWeChatのリンクを……という具合だ。 そして、ここには「ユーザーエージェント」というナレッジポイントがあり、例えばウェブビューの大手メーカーは独自のUA情報を持っている: QQ: MQQBrowser/6.2 TBS/043221 Safari/537.36 QQ/7.0.0.3135. WeChat: MQQBrowser/6.2 TBS 043220 Safari/537.36 MicroMessenger/6.5.8.1060 NetType/4G Language/zh_CN. Alipay: UCBrowser/11.5.0.939 UCBS/2.10.1.6 Mobile Safari/537.36 AliApp(AP/10.0.15.051805) AlipayClient/10.0.15.051805 Language/zh-Hans. これでQQなのかWeChatなのかアリペイのスキャンなのか一目瞭然: ユーザーエージェント`にQQ/が含まれている。 MicroMessengerを含むUser-AgentはWeChatです。 User-Agent` には AlipayClient が含まれています。 各ソフトウェアを区別できるので、URLを作成し、QRコード生成でURLをスキャンし、ブラウザのUAを判別して異なる決済コードを配信することができる。 大まかには以下のような流れになる: クライアントがコードをスキャン → サーバが User-Agent によってクライアントの種類を判別 → 異なる処理を返す これも注目に値する: QQ: httpsプロトコルは、QQを起こすことができない。 アリペイ:httpsプロトコル、直接アリペイAPPを起動することができます。 ...

2018年8月24日 · 1 分 · MoeJue

萌音コミュニティがやってきたよ〜!わぁ!

2ヶ月の情熱を込めた作品、萌音コミュニティがついに登場! 新世代のオープンな二次元交流コミュニティとして、画像、動画、音声、さらにはブラックテクノロジーなど、許可された範囲内で、ほぼあらゆるコンテンツを投稿できます… 幻想領域は去り、萌音コミュニティがやってきた!女装男子、BL、百合、えええっなロリ、緩♀交探し、哲♂学談義など、何でもあり!古来より赤と青はCP(カップル)になり、百合かBLのどちらかだ。さあ、私たちと契約しよう! 萌音コミュニティは、超楽しいACGN二次元交流コミュニティ、愛と調和に満ちた二次元コミュニティです。新作アニメ、旧作アニメ、日本のアニメ画像、福利アニメ、MMDなど、ACGNリソースが何でも揃っています。みんなでツッコミを入れ、弾幕を流し、コスプレ仲間を見つけ、二次元オタクの日常を共有し、二次元の素晴らしい世界へ飛び込もう! 主站点 www.moeins.com 备用站点 www.moeins.cn # このコミュニティを作った目的について 実は特に目的はありません。ただ、自分だけの二次元コミュニティが欲しかったんです。そして、二次元好きの仲間たちがそこで他愛もないおしゃべりをするような場所を。例えば、「俺の嫁が可愛いか、お前の嫁が可愛いか」みたいなことを。そうして、このコミュニティは誕生しました。 萌音コミュニティが成功するかどうかは分かりませんが、私たちは心を込めて作り上げていきます。 どうせドメインの更新料が増えるだけですし、現在、齐乐分享が提供するロサンゼルスのデータセンターでホスティングされています。ドメインの登録(备案)をしていないので。 # 萌音コミュニティの誕生は以下のプロジェクトに感謝します thinkPHP layui fly Onedrive layuiCMS 2.0 video.js jQuery 上記の偉大な方々に敬意を表します! # 恒例の画像公開

2018年7月7日 · 1 分 · MoeJue

萌音全自動カード発行プラットフォーム、リリース

萌音自動カード発行プラットフォーム(以下「萌音発券」)は、個人ユーザーに仮想商品のオンライン購入および全自動配送サービスを提供します。 開発の目的は、私自身にはあまり必要なく、市場には多くの類似製品がありますが、友人が欲しがっていたため、これが誕生しました。 可能な限りシンプルな原則で最も基本的な機能を実現したため、インターフェースは非常にミニマルで、将来の拡張も非常に簡単です。 デモサイト (サーバーは米国オレゴン州にあり、速度が少し遅いですが、デモンストレーション専用です) 資金は即時入金 第三者による持ち逃げを心配する必要はありません。資金は直接入金され、第三者を介しません。迅速な資金回収で、競合他社を凌駕します。 複数ユーザー無制限 いかなるアカウント、ドメイン、CPUにも縛られず、完全に自由に利用でき、いつでも変更可能です。 複数の支払い方法 WeChat Pay、Alipay、QQウォレット、Tenpay。PCとモバイルの両方に対応しています。 非同期通知 同期+非同期通知を採用しているため、支払い完了後にページが閉じられて注文が無効になる心配はありません。 萌音発券のソースコードを入手するには? 現在、以下の方法でのみ提供しています: ブロガーの知人、友人、またはプロジェクトに貢献した方(萌音発券に限らず) 優秀な幻想領域画像ホスティングユーザー プロジェクトに58元以上寄付することで入手できます。 何かご質問があれば、デモサイト右上の「お問い合わせ」をクリックして、私と詳しく話し合ってみてください。よくある質問 1、萌音発券は何をするものですか、どんな用途がありますか? 萌音発券は、プロフェッショナルな仮想カードコード自動配送サービスを提供します。 2、萌音発券プラットフォームに登録して、加盟店になるにはどうすればよいですか? プロジェクトに58元以上寄付することで入手できます。 3、注文/カードコードを照会するにはどうすればよいですか? プラットフォームの注文照会機能を通じて、注文時に記入した連絡先または注文番号を入力して照会してください。こちらをクリックして照会 4、プラットフォームでは何を販売できますか? ゲーム内仮想通貨、アイテム、会員カード、ソフトウェア使用権など 5、現在、御社のプラットフォームには何種類の支払い方法がありますか? 現在、Alipay、WeChat、QQウォレットの3種類です。 6、萌音発券加盟店の料金はどのように計算されますか? 全額無料、手数料は一切かかりません。 7、購入者はどのようにカードコード情報を取得しますか? 商品購入ページで希望の商品を選択し、支払いチャネルを選択して支払いを完了すると、自動的に配送ページにリダイレクトされます。対応するカードコードが届かない場合は、注文番号を保存し、カードコード照会アドレスを開いてください: こちらをクリック 注文時に記入した注文連絡先または注文番号を入力して照会してください。 8、出金申請の最低金額はいくらですか?申請後、どのくらいの時間で入金されますか? 萌音発券の金額はリアルタイムで入金され、第三者を介する必要はありません。

2018年5月12日 · 1 分 · MoeJue

幻想領域画像ホスティングシステム更新停止のお知らせ

不完全な統計によると、軽量Sina画像ホスティングシステム「幻想領域」は、バージョン1.0のリリース(2018-03-08)から現在(2018-04-30)まで、累計インストール数は2000回を超え、さらに毎日数十件のペースで急増しています。そのうち、海賊版ユーザーは5%以下です(あなた方は恥を知りなさい)。この間、大小さまざまなウェブサイト、ブログ、フォーラム、ソフトウェア配布サイトなどで100回以上転載・公開されました。海賊版を広めるものも含め、さらには某プラットフォームで販売されることさえありました。 幻想領域 非商業バージョン(永久無料、商用版なし)は、GPLライセンスおよび付属条項を遵守して公開されています。 もしあなたが私のGPLソフトウェアを使用し、改変した場合、あなたのソフトウェアもオープンソースにしなければなりません。さもなければ、私のソフトウェアを使用することはできません。 幻想領域をベースにしたすべての改変版または二次開発版は、オープンソースでなければなりません。関連条項を遵守しない場合は、使用を停止し、幻想領域に関連するすべてのものを削除してください。 一度GPL契約に違反しても、直接的な結果はないかもしれません。しかし、それはあなた方がこれから異なる方向、危険な方向へ進むことを意味します。どうかご理解いただき、自重してくださることを願います。—-海賊版を作成し、広める人々へ バージョン1.2.3の時点で、機能はかなり完成されており、バグもありません。軽量な画像ホスティングシステムとしては十分です。そもそもこのシステムは、自分自身が便利に使うためだけに開発したものです。つきましては、幻想領域の外部向け更新サービスを停止することを決定しました。今後は、交流グループ内の優秀な幻想領域で構築された画像ホスティングシステムサイトにのみ更新を提供します。関連するプラグインインターフェースファイルは、グループ内で私に個人メッセージを送って請求することができます。 最後に、これまでの皆様のサポートとご関心に感謝いたします!グループ内で私の権利を守ってくれた方々にも感謝します! 余談ですが、この記事は数日前に書き上げていました。公開すべきかどうかずっと悩んでいましたが、様々な理由から、やはり葛藤がありました。でも、せっかく書いたのだから公開することにしました。主な理由は、メンテナンスにあまり多くのエネルギーを割けないこと、そしてまた新しいプロジェクトを始めてしまったことです……続く 5月5日追記 今日、友人から画像付きでフィードバックがありました。要するに、私の幻想領域がChevereto(海外の有名な画像ホスティングシステムで、国内でどれだけの人がこのクラック版を使っているかは知りませんが)を盗用しているという内容でした。主に以下の2つの問題について回答します。 あの代物?そんなもの、お前が書いてみろよ?幻想領域の最も中心的な機能は、画像をSina Cloud Storageにアップロードすることであり、ローカルアップロード機能は提供していません。Cheveretoにこの機能があるのか?100%盗用?何も理解していないくせに、どうしてそんなに無責任に非難できるんだ? いわゆる幻想領域?インターフェースはどのプログラムを参考にしたって?幻想領域のトップページのインターフェースは、bootcss V3が提供するテンプレートを使用しています。参考にしたなどという話はどこから出てきたのですか? https://v3.bootcss.com/examples/cover/ まず調べてからにしてください。むやみに他人を中傷しないでください。私は論争を起こしたくありません。これを見ても何も言わないでください。 **6月24日追記 **今日、またグループのメンバーから@メンションがあり、画像が送られてきました。画像を見て判断してください。 同じプログラマーとして、そんなことをして良心が痛まないのか?だからお前はただの海賊版野郎だ。海賊版を広める者は、使う者よりもさらに悪質だ。お前の人間性も人格も、その行動と同じくらい汚らわしく、唾棄すべきものであることは想像に難くない。

2018年4月30日 · 1 分 · MoeJue

幻想領域画像ホスティングシステムV1.2正式版リリース

幻想領域1.2 これは最終的なソリューションとして生まれたものではなく、開発の目的は単に自分自身の利便性を高めるためです。 プロジェクトホームページ プロジェクトアドレス 幻想領域V1.0 ☜(詳細はこちらをクリック) ダウンロード 最新の正式版 今すぐダウンロード インストール 幻想領域のソースコードを解凍し、ウェブサイトのルートディレクトリにアップロードする必要があります。ウェブサイトのドメインにアクセスすると、自動的にインストーラーにリダイレクトされますので、ウィザードの指示に従ってインストールしてください。リダイレクトされない場合は、手動で http://あなたのドメイン/install.php にアクセスしてインストールを行ってください。 初回インストールが成功した後、管理者バックエンドにログインして画像ホスティングの基本設定を行う必要があります。 バックエンドアドレス:http://あなたのドメイン/admin しかし皮肉なことに、ログインはフロントエンドで行う必要があります。 動作環境 注意:幻想領域はバージョン1.0からPHPバージョン≥5.6のみをサポートしています。お使いのPHPバージョンを更新してください。 幻想領域はバージョン1.2から上書きインストール方式を採用します。つまり、過去のデータは保持されます。データを削除する必要がある場合は、手動で空にしてください。 更新内容 探索インターフェース(最近、ランダム)の改善 画像ホームページの追加 HTML、BBcode、Markdownなどのコードをワンクリックで生成 自動更新システムの追加(ただし、使用できるとは限りません) よりフレンドリーなアップロード進捗表示(ただし、正確ではありません) 各種デフォルト設定をより合理的に変更 システムの重大な脆弱性を修正(現行バージョンは必ず更新してください) 登録関連の制限を追加 互換性の向上、マルチプラットフォームでの実行、PHP7.0+をサポート 既知のバグを修正

2018年4月11日 · 1 分 · MoeJue