Skip to content

Gerenciamento de Applet

O gerenciamento de applet introiduz principalmente a API para operando applets, incluindo: APGLET OPEN, Applet Fechar, Applet de Pesquisa, etc. etc. etc.

1. Abra o applet

Diferentes cenários usam APIs diferentes para abrir applets. Lá, fornecemos várias API diferentes para abrir applets.

  1. Abra o applet on -line, aqui geralmente precisam apenas do ID do applet e do endereço do servidor, a API pode apenas abrir a versão do Office do applet.
  2. Abra o applet pelo código QR, esse cenário é digitalizar o código QR na plataforma Applet, obter o conteúdo no código QR e depois usar o conteúdo para abrir o applet. O código QR. Do applet da versão do Office, Versão de experiência, versão de auditoria, versão de desenvolvimento e versão de visualização podem ser abertas com esta API.
  3. Esquema de URL Open applet, esse cenário é para incorporar URL URI URI na página da web H5, que aciona a abrir applet em aplicativos, apenas suportar para abrir a verificação do escritório. Applet na prateleira.

1.1 Appleto aberto normal

Ao abrir o applet, primeiro determinará quando houver um applet em cache localmente, se não, ele dobrará automaticamente o applet do servidor remoto e depois a abrirá; se houver um applet em cache, ele abrirá primeiro o applet local e verifique quando é uma nova versão no tamanho do servidor.

Se houver uma nova versão, a nova versão do applet será baixada e na próxima vez que for aberta, a nova versão do applet será usada; se não houver uma nova versão, nada será feito.

objectivec
/// Launch the applet
/// @param request Start of the request
/// @param parentVC Parent Page
/// @param completion Complete the callback
/// @param closeCompletion Callbacks when closing applets
- (void)startAppletWithRequest:(FATAppletRequest *)request
        InParentViewController:(UIViewController *)parentVC
                    completion:(void (^)(BOOL result, FATError *error))completion
               closeCompletion:(dispatch_block_t)closeCompletion;

FATAppletRequest

AttributetypeDescrição
appletIdNSStringApplet ID, necessário
apiServerNSStringO servidor ao qual o applet pertence, necessário
appNameNSStringNome do applet, não é necessário
appletLogoNSStringEndereço de rede do ícone do applet, não é necessário
startParamsNSDictionaryApplet Iniciar parâmetro, chave suportada, consulte FatstarTparamkey, não é necessário
transitionStyleFATTranstionStyleO método de animação de transição ao abrir o applet, não é necessário, o valor padrão é o fattranstyleup
animatedBOOLSe deve usar a animação, não é necessário, o valor padrão é sim
sequenceNSNumberÍndice de Applet, não é necessário
offlineMiniprogramZipPathNSStringApplet Zip Offline Path, você pode passar em um pacote de applet local caminho para acelerar a primeira partida, não é necessária
offlineFrameworkZipPathNSStringCaminho postal da biblioteca base do escritório, você pode passar em uma biblioteca base para acelerar a primeira partida, não é necessária

Nota: Tanto o offllineMinipramzippath quanto o offlineframeworkzippath devem ser aprovados se você quiser começar offline pela primeira vez.

Exemplo Código:

objectivec
FATAppletRequest *request = [[FATAppletRequest alloc] init];
request.appletId = @ "Applet id" ; // Required fields
request.apiServer = @ "Server Address" ; // Required fields
request.transitionStyle = FATTranstionStyleUp;
request.startParams = startParams; // Launch parameters of the applet

[[FATClient sharedClient] startAppletWithRequest:request InParentViewController:self completion:^(BOOL result, FATError *error) {
    NSLog(@ "Open the applet:%@" , error);
} closeCompletion:^{
    NSLog(@ "Small program release process" );
}];

1.2 Código QR para abrir o pequeno programa

Nesse caso, o processo geralmente é complicado, você precisa digitalizar o código QR no ph. Use o conteúdo do código QR para chamar a interface para abrir o applet.

objectivec
/// QR code information to start the applet
/// @param request Request object
/// @param parentVC Parent page
/// @param requestBlock A callback to verify the request completion of the QR code
/// @param completion Completed callbacks
/// @param closeCompletion A callback when closing an applet
- (void)startAppletWithQrCodeRequest:(FATAppletQrCodeRequest *)request
              inParentViewController:(UIViewController *)parentVC
                        requestBlock:(void (^)(BOOL result, FATError *error))requestBlock
                          completion:(void (^)(BOOL result, FATError *error))completion
                     closeCompletion:(dispatch_block_t)closeCompletion;

FATAppletQrCodeRequest

AttributetypeDescrição
qrCodeNSStringConteúdo do código QR, necessário
transitionStyleFATTranstionStyleO método de animação de transição ao abrir o applet, não é necessário, o valor padrão é o fattranstyleup
animatedBOOLSe deve usar a animação, não é necessário, o valor padrão é sim

Exemplo Código:

objectivec
FATAppletQrCodeRequest *qrcodeRequest = [[FATAppletQrCodeRequest alloc] init];
qrcodeRequest.qrCode = qrCode;

[[FATClient sharedClient] startAppletWithQrCodeRequest:qrcodeRequest inParentViewController:self requestBlock:^(BOOL result, FATError *error) {
    NSLog(@ "The request is complete:%@" , error);
} completion:^(BOOL result, FATError *error) {
    NSLog(@ "Open Finish:%@" , error);
} closeCompletion:^{
    NSLog(@ "close" );
}];

1.3 Appletos aberto usando o esquema de URL

Às vezes queremos poder abrir nossos applets de um safari-página da web carregada ou de um terceiro-Aplicativo da parte, para que possamos usar o esquema de URL para abrir os applets de nosso próprio aplicativo.

Primeiro, você precisa adicionar um tipo de URL, selecione o destino-> [Info]-> [Tipos de URL] e adicione esquemas de URL. O formato dos esquemas de URL é md5 de gordura+sdkkey, veja o exmple O formato dos esquemas de URL é o md5 de gordura+sdkkey, veja o exmple O formato dos esquemas de URL é o md5 de gordura+sdkkey, veja o exmple

Image.jpg

Em seguida, implemente o método de proxy do OpenURL no App TradeLagate.

objectivec
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    if ([[FATClient sharedClient] handleOpenURL:url]) {
        return YES;
    }
    return YES;
}

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
    if ([[FATClient sharedClient] handleOpenURL:url]) {
        return YES;
    }
    return YES;
}

Por fim, basta adicionar o link do esquema no pagamento H5. O formato do link: fat{md5 of sdkKey}://applet/appid/{applet id} . Exemplo é o seguinte.

<a href='fat705b46f78820c7a8://applet/appid/5e017a61c21ecf0001343e31'>Abra o phizclip</a>

Obviamente, você também pode digitar o URL completo (por exemplo, FAT705B46F78820C7A8: // Applet/Appid/5E017A61C21ECF0001343E31)) na barra de endereço do seu safari. Browser, depois entrar e o aplicativo abrirá e lançará o aplicativo.

2. Feche o applet

O fechamento do applet é equivalente a clicar no applet na cápsula no canto superior direito, neste momento o applet é retirado para o plano de fundo e o aplicativo. Let não é destruído.

2.1 Feche o applet especificado

objectivec
/**
Close the opened specified applet
@param animated Whether to show animation
@param completion Callback for closing completion
*/
- (void)closeApplet:(NSString *)appletId animated:(BOOL)animated completion:(dispatch_block_t)completion;

2.2 Feche todos os applets

Em alguns sconarios, o applet a pode abrir o applet b e applet b abre applet C. Se você deseja fechar todos os applets abertos, poderá usar esse método.

objectivec
/**
Close all currently open applets
@param completion Callback for closing completion
*/
- (void)closeAllAppletsWithCompletion:(dispatch_block_t)completion;

2.3 Feche o applet atual

objectivec
/**
Close the current applet
@param animated Whether to show animation
@param completion Callback for closing completion
*/
- (void)closeCurrentApplet:(BOOL)animated completion:(dispatch_block_t)completion;

3. Termine o applet

Quando um applet é fechado, ele termina, mas com haangs em segundo plano. Quando o applet é despertado na próxima vez, ele será imediatamente o applet para executar o primeiro plano. Portanto, se queremos que o applet seja fechado e realmente terminado, podemos usar a seguinte API para encerrar o applet especificar ou todas as maçãs, dependendo do esuati real.

3.1 Termine o applet especificado

Depois que o applet estiver fechado, ligue para a API para excluir o cache e destruir o applet.

objectivec
/**
Delete the specified applet from memory
*/
- (void)clearMemeryApplet:(NSString *)appletId;

3.2 Termine todos os applets

Esta API pode ser usada quando você opera e fechou vários applets e deseja encerrar todos os applets entregando em segundo plano de uma só vez.

objectivec
/**
 Clear all applets from memory cache
 */
- (void)clearMemoryCache;

4. Exclua applet

À medida que o applet está em execução, ele se importará com as informações do pacote e do applet localmente, e o cache será usado que será operado posteriormente, para que seja fan quando estiver aberto. Portanto, se você deseja excluir todas as informações de um applet, poderá usar a seguinte API para excluir um applet ou excluir todas as maçãs.

4.1 Exclua o applet especificado

objectivec
/**
 Delete specified applet from local storage

 @param appletId Applet id
 @return BOOL Results
 */
- (BOOL)removeAppletFromLocalCache:(NSString *)appletId;

4.2 Exclua todos os applets

objectivec
///  Delete local cache of applets
- (void)clearLocalApplets;