Gerenciamento de informações de applet
Este módulo é principalmente para obter algo para obter informações sobre o aplicativo.
1. Pesquisa para applets
Para procurar o applet, são necessárias duas etapas.
- Verifique se as informações deste servidor estão configuradas quando o SDK estiver Inicialize.
- Chame essa interface de pesquisa para pesquisar applets
API
/**
* :: Search for applets
*
* @param searchAppletRequest request body
* @param callback Request result callback
*/
fun searchApplet(
searchAppletRequest: SearchAppletRequest,
callback: FinCallback<SearchAppletResponse>
)SearchAppletRequest Descrição.
/**
* :: Search for applet request entity classes
*
* @param apiServer Server address
* @param text Search content
*/
data class SearchAppletRequest(var apiServer: String,
var text: String)SearchAppletResponse Descrição.
/**
Subscribe to DeepL Pro to edit this document.
Visit www.DeepL.com/profor more information.
* :: Search for applet return entity classes
*
* @param list A collection of searched applets
* @param total Number of applets searched
*/
data class SearchAppletResponse(
val list: List<AppletInfo>? ,
val total: Int
)
/**
* The applet information entity class returned by the search applet
*
* @param appId applet id
* @param appName applet name
* @param desc applet description information
* @param highLights highlight font
* @param logo applet logo
* @param organName Business name
* @param pageUrl Path to the page searched by the applet
* @param showText Show content
*/
data class AppletInfo(
val appId: String?
val appName: String?
val desc: String?
val highLights: List<HighLight>? ,
val logo: String?
val organName: String?
val pageUrl: String?
val showText: String?
)
/**
* Highlighted fonts
*
* @param key key of the highlighted font
* @param value value of the highlighted font
*/
data class HighLight(
val key: String?
val value: String?
)Exemplo de uma chamada para #### :::: tabs ::: tab "Kotlin"
FinAppClient.appletApiManager.searchApplet(
SearchAppletRequest("ServiceLocationAddress", "SearchContent"),
object : FinCallback<SearchAppletResponse> {
override fun onSuccess(result: SearchAppletResponse?) {
// Search successful
}
override fun onError(code: Int, error: String?) {
// Search failed
}
override fun onProgress(status: Int, info: String?) {
}
}):::
::: tab "Java"
FinAppClient.INSTANCE.getAppletApiManager().searchApplet(
new SearchAppletRequest("ServerAddress", "SearchContent"),
new FinCallback< SearchAppletResponse>() {
@Override
public void onSuccess(SearchAppletResponse result) {
// Search successful
}
@Override
public void onError(int code, String error) {
// Search failed
}
@Override
public void onProgress(int status, String info) {
}
});::: ::::
2. Obtenha informações do objeto de applet
API
/**
* Get information about the applet
*/
fun getAppletInfo(appId: String): FinAppInfo?Exemplo de uma chamada para #### :::: tabs ::: tab "Kotlin"
val appInfo = FinAppClient.appletApiManager.getAppletInfo("appId"):::
::: tab "Java"
FinAppInfo appInfo = FinAppClient.INSTANCE.getAppletApiManager().
getAppletInfo("appId");::: ::::
Descrições de campo relacionadas
| Field Name | Descrição |
|---|---|
| appId | applet id |
| codeId | applet code package ID |
| userId | applet developer id |
| appAvatar | Applet avatar |
| appTitle | applet title |
| AppDescriping | Applet Descrição |
| appPath | Caminho do applet |
| appVersion | Número da versão do applet |
| AppVersionDescriping | Applet versão Descrição |
| sequence | Sequência de applet |
| isGrayVersion | ISGRAYVERSION |
| appThumbnail | applet thumbnail |
| groupId | Organization ID |
| groupName | Name of organization to which you belong |
| appType | applet type |
| createdBy | applet developers |
| createdTime | applet creation time |
| startParams | startParams |
| info | Extended information |
| fromAppId | O ID do applet de origem do applet se o applet a abrir Applet B ligando para Navigatetominiprogram, então para o applet b, fromappid é o appado de applet a |
| finStoreConfig | Applet Marketplace Configuration Information |
| frameworkVersion | Base library version number |
| url | applet download address |
| md5 | Small Packet MD5 |
| cryptInfo | Applet Encryption Information |
3.St as informações atuais da WebView do applet
3.1 Obtenha o URL da WebView atual
O URL correspondente ao H5 só será retonado se a corrente O pagamento está carregando um H5. "
FinAppClient.appletApiManager.getCurrentWebViewURL(
object : FinCallback<String> {
override fun onSuccess(result: String?) {
toast( "url:$result" )
}
override fun onError(code: Int, error: String?) {
}
override fun onProgress(status: Int, info: String?) {
}
})3.2 Obtenha o usera Agagent do WebView atual
FinAppClient.appletApiManager.getCurrentWebViewUserAgent(
object : FinCallback<String> {
override fun onSuccess(result: String?) {
toast( "userAgent:$result" )
}
override fun onError(code: Int, error: String?) {
}
override fun onProgress(status: Int, info: String?) {
}
})4. Obtenha uma captura de tela da página do applet
API
/**
* Get a screenshot of the applet page
*
* @param appId applet id
* @param callback applet page screenshot callback
*/
fun captureAppletPicture(appId: String, callback: FinCallback<Bitmap?>)Exemplo de uma chamada para #### :::: tabs ::: tab "Kotlin"
FinAppClient.appletApiManager.captureAppletPicture(
"appId",
object : FinCallback<Bitmap?> {
override fun onSuccess(result: Bitmap?) {
Log.d(TAG, "Get screenshot of applet page successfully :
$result")
}
override fun onError(code: Int, error: String?) {
Log.e(TAG, "Failed to get screenshot of applet page :
$code, $error")
}
override fun onProgress(status: Int, info: String?) {
}
}):::
::: tab "Java"
FinAppClient.INSTANCE.getAppletApiManager().captureAppletPicture(
"appId",
new FinCallback< Bitmap>() {
@Override
public void onSuccess(Bitmap result) {
Log.d(TAG, "Get screenshot of applet page
successfully:" + bitmap);
}
@Override
public void onError(int code, String error) {
Log.e(TAG, "Failed to get screenshot of applet page: "
+ code + ", " + error);
}
@Override
public void onProgress(int status, String info) {
}
});::: ::::
5. Get Applets usados
5.1 Pegue o usuário
API
/**
* Get the used applets for the specified applet id
*
* @param appId applet id
*/
fun getUsedApplet(appId: String): FinApplet?Exemplo de uma chamada para ##### :::: tabs ::: tab "Kotlin"
val finApplet = FinAppClient.appletApiManager.getUsedApplet("appId"):::
::: tab "Java"
FinApplet finApplet = FinAppClient.INSTANCE.getAppletApiManager().
getUsedApplet("appId");::: ::::
5.2 Obter uma lista de applets de uso
API
/**
* Get all used applets
*/
fun getUsedApplets(): List<FinApplet>Exemplo de uma chamada para ##### :::: tabs ::: tab "Kotlin"
val usedApplets = FinAppClient.appletApiManager.getUsedApplets():::
::: tab "Java"
List< FinApplet> usedApplets = FinAppClient.INSTANCE.
getAppletApiManager().getUsedApplets();::: ::::
5.3 Determinando se um applet é usado
API
/**
* :: Determine if it is a used applet
*/
fun isUsedApplet(appId: String): BooleanExemplo de uma chamada para #### :::: tabs ::: tab "Kotlin"
val isUsedApplet = FinAppClient.appletApiManager.isUsedApplet("appId"):::
::: tab "Java"
boolean isUsedApplet = FinAppClient.INSTANCE.getAppletApiManager().
isUsedApplet("appId");::: ::::
6. Obtenha o ID do applet atual
API
/**
* Get the id of the current applet
*/
fun getCurrentAppletId(): String?Exemplo de uma chamada para #### :::: tabs ::: tab "Kotlin"
val currentAppletId =
FinAppClient.appletApiManager.getCurrentAppletId():::
::: tab "Java"
String currentAppletId = FinAppClient.INSTANCE.getAppletApiManager().
getCurrentAppletId();::: ::::
7.Convert Phiz Applet QR Informações do código do applet de phrap
O cenário do usuário desta API é que, onde um applet está em ambos os Phiz e serviços de phizdclip, ele pode ser associado a um applet Phiz no Plataforma Phizclip.A versão online do código QR no Phizclip A plataforma pode então ser aberta digitalizando o código com o Phiz ou digitalizando o código com o Assistente Phizclip ou outros aplicativos que têm Integrou o phizdclip applet sdk. " O processo é primeiro digitalizar o código QR, obter o conteúdo do código QR, Em seguida, ligue para a interface para obter o ID do applet phizdclip e, finalmente, ligue A API para abrir o applet.
API
/**
* Parsing applet information based on Phiz QrCode information
*
* @param qrCode QR code information
* @param apiServer The server address of the application marketplace
where the applet is hosted
* @param callback Result callback
*/
fun parseAppletInfoFromWXQrCode(
qrCode: String,
apiServer: String,
callback: FinSimpleCallback<ParsedAppletInfo?>
)A estrutura de ParsedAppletInfo é o seguinte.
/**
* The applet information entity class returned by parsing applet
information based on Phiz QrCode information
*
* @param appId applet id
*/
data class ParsedAppletInfo(
val appId: String?
)Exemplo de uma chamada para #### :::: tabs ::: tab "Kotlin"
FinAppClient.appletApiManager.parseAppletInfoFromWXQrCode(
qrCode,
apiServer,
object : FinSimpleCallback<ParsedAppletInfo?>() {
override fun onSuccess(result: ParsedAppletInfo?) {
Log.d(TAG, "parse onSuccess result : ${result.toString()}")
}
override fun onError(code: Int, error: String?) {
Log.d(TAG, "parse onError code : $code, error : $error")
}
}):::
::: tab "Java"
FinAppClient.INSTANCE.getAppletApiManager().
parseAppletInfoFromWXQrCode(
qrCode,
apiServer,
new FinSimpleCallback< ParsedAppletInfo>() {
@Override
public void onSuccess(ParsedAppletInfo result) {
Log.d(TAG, "parse onSuccess result : " + result.toString());
}
@Override
public void onError(int code, @org.jetbrains.annotations.
Nullable String error) {
Log.d(TAG, "parse onError code : " + code + ", error :" + error);
}
}
);::: ::::