npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@hmscore/hms-js-base

v6.1.0-300

Published

hms core base js

Downloads

8

Readme

hms-js-base

Contents

  1. Introduction
  2. Installation Guide
  3. Function Definitions & Sample
  4. Licencing & Terms

1. Introduction

The SDK provides the ability to use HMS Core with JavaScript under multiple platforms (RN, OHOS, QuickApp, Cordova).

2. Installation Guide

  • Go to your project
cd example/
  • Install
npm i @hmscore/hms-js-base 
project-name
    |_ node_modules
        |_ ...
        |_  @hmscore/hms-js-base
        |_ ...
  • import hms-js-base package to your application
import { hmsjsb, hmsbase } from '@hmscore/hms-js-base'

3. Function Definitions & Sample

hmsjsb.invoke({apiName, args, success, fail, complete})

Call the HMS Core method.

The returns of callback & promise are supported. When the paramters contain success/fail/complete, it will return from callbacks, otherwise it will return a promise.

| Parameters | Type | Required |Description | | --- | --- | --- | --- | | apiName | string | yes | JAVA API name | | args | Object | no | params | | success | successCallback | no |success callback | | fail | failCallback | no |fail callback | | complete | completeCallback | no |complete callback |

return value: result

example

// callback
hmsjsb.invoke({
  apiName: 'update.availability',
  args: {
    min_api_level: 2,
  },
  success: (result) => {
    console.info(JSON.stringify(result));
  },
  fail: (error) => {
    console.info(JSON.stringify(error));
  }
});

// promise 
hmsjsb.invoke({
  apiName: 'update.availability',
  args: {
    min_api_level: 2,
  }
}).then(res => console.info(JSON.stringify(res)))
.catch(err => console.info(JSON.stringify(err)));

hmsjsb.on(eventName, callback, eventCallbackMap)

listen for HMS Core events. After the interface is called, the listener will start automatically. You can use hmsjsb.off to stop listening.

| Parameters | Type | Required |Description | | --- | --- | --- | --- | | eventName | string | yes |event name | | callback | function | yes |event callback | | eventCallbackMap | Object | no |event callback map, only used in OHOS, other platforms can ignore it |

return value: result

hmsjsb.off(eventName, offKey, eventCallbackMap)

Stop listening for HMS Core events, call it when the page is destroyed.

| Parameters | Type | Required |Description | | --- | --- | --- |--- | | eventName | string | yes| event name | | offKey | * | yes | type is function or string, Event callback or hmsjsb.on result | | eventCallbackMap | Object | no | event callback map,only used in OHOS, other platforms can ignore it |

return value :result

hmsjsb.init(params)

Before calling the hmsjsb methods,call the method to initialize

Note: Currently only the React Native and OHOS platforms need to call this method, other platforms can ignore it.

| Parameters | Type | Required |Description | | --- | --- | --- |--- | | params | Object | no | RN and OHOS are must input, RN example:{ NativeModules, DeviceEventEmitter }, OHOS example:{}|

return value: result

hmsjsb.destroy()

Before the page is destroyed, call the method to destroy.

Note: Currently only the React Native platform needs to call this method, other platforms can ignore it.

return value: result

hmsbase.setSPvalue({key, value, spname})

SharedPreferences

| Param | Type | Description | | --- | --- | --- | | key | string | the key of SharedPreferences | | value | string | the value of SharedPreferences | | spname |string | the spname ofSharedPreferences |

hmsbase.getSPvalue({key, spname})

Read SharedPreferences value

| Param | Type | Description | | --- | --- | --- | | key | string | the key of SharedPreferences | | spname |string | the spname ofSharedPreferences |

hmsbase.removeSPvalue({key, spname})

Delete shareapeferences value

| Param | Type | Description | | --- | --- | --- | | key | string | the key of SharedPreferences | | spname |string | the spname ofSharedPreferences |

hmsbase.getMetaData({key, packagename})

Read metadata

| Param | Type | Description | | --- | --- | --- | | key | string |the key of metadata| | packagename |string |packagename|

hmsbase.getPackageName()

Get the package name of the third party application

hmsbase.getAppId()

Get the appid of the third party application

hmsbase.getAaId()

Get AAID

hmsbase.getUid()

Get UID, Depends on hms-js-base 5.2.0-300 and bridge-sdk 5.2.0.300

hmsbase.getAppVersion()

Get the application version number, Depends on hms-js-base 5.2.0-300 and bridge-sdk 5.2.0.300

hmsbase.getAgcConfig({key})

Get AGC configuration, Depends on hms-js-base 5.2.0-300 and bridge-sdk 5.2.0.300

| Param | Type | Description | | --- | --- | --- | | key | string | the key of AGC configuration |

hmsbase.config({subId})

Authentication

| Param | Type | Description | | --- | --- | --- | | subId | string | the appId of h5 app|

hmsbase.reportEntry({uri, kitSdkVersion})

Event tracking start

| Param | Type | Description | | --- | --- | --- | | uri | string | uri | | kitSdkVersion |int | kitsdk version|

hmsbase.reportExit({uri, transactId, statusCode, errorCode, kitSdkVersionName})

Event tracking end

| Param | Type | Description | | --- | --- | --- | | uri | string | uri | | transactId |string | transact ID| | statusCode | int | status code | | errorCode |int | error code| | kitSdkVersionName |int |kitsdk version|

hmsbase.isJsbKitAvailable({min_api_level})

Check jsb kit api_level >= min_api_level

| Param | Type | Description | | --- | --- | --- | | min_api_level | int | Expected api_level of JSB kit |

hmsbase.upgrade()

Upgrade jsb kit

hmsbase.reload()

After the upgrade is successful, reload the new jsb kit to initialize the jsb kit

successCallback : function

success callback.

Kind: global typedef

| Parameters | Type | Description | | --- | --- | --- | | result | object | result |

failCallback : function

fail callback.

Kind: global typedef

| Parameters | Type | Description | | --- | --- | --- | | result | object | result |

completeCallback : function

complete callback.

Kind: global typedef

| Parameters | Type | Description| | --- | --- | --- | | result | object | result |

result : object

the returned value of mothed or callback

Kind: return value

|Returns |Type |Description| | --- | --- | --- | | errCode | number | error code | | errMsg | string | error message | | data | * | Type is function or string | | extras | object | extras |

OHOSexample

Define the global variable eventCallbackMap in app.js, and then init hms-js-base at the onCreate method.

import { hmsjsb } from '@hmscore/hms-js-base'
//Define the global
hmsData: {
  eventCallbackMap: {},
}

//init
onCreate() {
  hmsjsb.init(this.hmsData.eventCallbackMap);
}

Subscribe and unsubscribe events, need to match use.

Notes: When the event linstener is no longer needed or the page is destroyed, please stop listening

import router from '@system.router'
import { hmsjsb } from '@hmscore/hms-js-base'

export default {
  data: {
    title: "",
    eventCallbackId: ""
  },
  onInit() {
    //Subscribe
    this.eventCallbackId = hmsjsb.on("onBackground", (result) => {
      console.info("event callback result: " + JSON.stringify(result));
    }, this.$app.$def.hmsData.eventCallbackMap);
  },
  onDestroy() {
    //unsubscribe
    hmsjsb.off("onBackground", this.eventCallbackId,
      this.$app.$def.hmsData.eventCallbackMap);
  }
}

4. Licensing and Terms

hms-js-base SDK uses the Apache 2.0 license.