この SDK を使用すると、カスタムチャンネルと JSAPI プレフィックスを設定できます。この機能を有効にするには、お問い合わせください。
概要
const authorize = () =>{
window.WindVane.call('WVAuthorize', 'authorize', {}, function(e) { ... }, function(e) { ... });
};
document.addEventListener('WV.Event.WVBluetooth.characteristicValueChanged', function(e) { ... }, false);上記のコードでは、識別子として "WindVane" と "WV" を使用しています。ミニプログラムでカスタム識別子を使用したい場合は、以下の 3 つの設定オプションを設定します。
setSuperAppNameSpace(String nameSpace): ミニプログラムが JSAPI にアクセスするために使用するウィンドウオブジェクト名を設定します。デフォルト値は "WindVane" です。setJsApiClassNamePrefix(String classNamePrefix): カスタム JSAPI クラス名プレフィックスを設定します。デフォルト値は "WV" です。setWindVaneBackwardCompatible(boolean bool): 古いバージョンのミニプログラムとの下位互換性を維持するかどうかを設定します。デフォルトはtrueです。
新しい設定オプション
a. 新しい設定オプション
public static void init() {
MiniAppInitConfig config = new MiniAppInitConfig.Builder()
.setUseWindVane(true)
.setHost("your.host.name")
.setAppCode("your app code")
.setAccessKey("your access key")
.setSecretKey("your secret key")
...
// 新しい設定項目
.setWindVaneBackwardCompatible(true)
.setSuperAppNameSpace("your NameSpace")
.setJsApiClassNamePrefix("your ClassNamePrefix")
...
.build();
IMiniAppService miniAppService = new MiniAppService();
miniAppService.initialize(application, config);
}ユースケース
この例では、名前空間は SuperApp に、クラス名プレフィックスは SA に設定されています。
public static void init() {
MiniAppInitConfig config = new MiniAppInitConfig.Builder()
.setUseWindVane(true)
.setHost("your.host.name")
.setAppCode("your app code")
.setAccessKey("your access key")
.setSecretKey("your secret key")
...
// 新しい設定項目
.setWindVaneBackwardCompatible(true)
.setSuperAppNameSpace("SuperApp")
.setJsApiClassNamePrefix("SA")
...
.build();
IMiniAppService miniAppService = new MiniAppService();
miniAppService.initialize(application, config);次の例では、これらの設定を適用する前と後で、ミニプログラムでの JSAPI 呼び出しを比較します。
// カスタマイズ前の JSAPI 呼び出し
const authorize = () =>{
window.WindVane.call('WVAuthorize', 'authorize', {}, function(e) { ... }, function(e) { ... });
};
document.addEventListener('WV.Event.WVBluetooth.characteristicValueChanged', function(e) { ... }, false);
// カスタマイズ後の JSAPI 呼び出し
const authorize = () =>{
window.SuperApp.call('SAAuthorize', 'authorize', {}, function(e) { ... }, function(e) { ... });
};
document.addEventListener('SA.Event.SABluetooth.characteristicValueChanged', function(e) {
...
}, false);コードが示すように、名前空間を "SuperApp" に、クラス名プレフィックスを "SA" に設定すると、JSAPI 呼び出しが変更されます。名前空間は WindVane から SuperApp に、クラス名プレフィックスは WV... から SA... に変わります。
b. 構成
すべてのミニプログラムがデフォルトの "WindVane" 名前空間と "WV" クラス名プレフィックスのみを使用する場合、構成は不要です。
すべてのミニプログラムがカスタムの名前空間とカスタムのクラス名プレフィックスのみを使用する場合は、次の構成を使用します。
public static void init() {
MiniAppInitConfig config = new MiniAppInitConfig.Builder()
...
// 新しい設定項目
.setWindVaneBackwardCompatible(false)
.setSuperAppNameSpace("your NameSpace")
.setJsApiClassNamePrefix("your ClassNamePrefix")
...
.build();
IMiniAppService miniAppService = new MiniAppService();
miniAppService.initialize(application, config);
}一部のミニプログラムでは引き続き "WindVane" 名前空間と "WV" クラス名プレフィックスを使用し、
また、新しいバージョンでは、カスタムの名前空間とカスタムのクラス名プレフィックスが使用されます。
次の構成を使用します。
public static void init() {
MiniAppInitConfig config = new MiniAppInitConfig.Builder()
...
// 新しい設定項目
.setWindVaneBackwardCompatible(true)
.setSuperAppNameSpace("your NameSpace")
.setJsApiClassNamePrefix("your ClassNamePrefix")
...
.build();
IMiniAppService miniAppService = new MiniAppService();
miniAppService.initialize(application, config);
}