FiveM Mod lb-phone
Telefone LB v2

O preço original era: $99.00.O preço atual é: $49.00.

Adicionar ao carrinho

Telefone LB v2

O preço original era: $99.00.O preço atual é: $49.00.

Um telefone avançado para FiveM com recursos exclusivos e bom desempenho.

Demonstração por telefone: https://lbscripts.com/phone

Economize com o código 20% por tempo limitado.
Pagamento seguro garantido
  • Qualidade Premium
  • Totalmente Open Source
  • Pagamentos Seguros
  • Garantia de satisfação
  • Garantia de devolução do dinheiro em 30 dias

Aplicativos personalizados

O LB Phone permite adicionar aplicativos que possuem uma interface de usuário ou que simplesmente acionam funções ao abrir o aplicativo. Para adicionar um aplicativo que aciona uma função ao abri-lo, acesse lb-phone/config/config.lua e adicione o aplicativo ao Config.CustomApps tabela, assim:

lb-phone/config/config.lua
Config.CustomApps = {    ["app_identifier"] = { -- Um identificador exclusivo para o aplicativo, não mostrado ao usuário        nome = "Nome do aplicativo", -- O nome do aplicativo, mostrado ao usuário        description = "Descrição do aplicativo", -- A descrição do aplicativo, mostrada ao usuário        desenvolvedor = "LB Phone", -- OPCIONAL o desenvolvedor do aplicativo        defaultApp = true, -- OPCIONAL se definido como true, o aplicativo deve ser adicionado sem precisar baixá-lo,        jogo = falso, -- OPCIONAL se definido como verdadeiro, o aplicativo será adicionado à seção do jogo        tamanho = 59812, -- OPCIONAL em kB        images = { "https://example.com/photo.jpg" }, -- matriz OPCIONAL de imagens para o aplicativo na app store        ui = "nome-do-recurso/ui/index.html", -- OPCIONAL        ícone = "https://cfx-nui-" .. GetCurrentResourceName() .. "/ui/icon.png", -- Ícone de aplicativo OPCIONAL        preço = 0, -- OPCIONAL, Faça os jogadores pagarem com dinheiro do jogo para baixar o aplicativo        paisagem = falso, -- OPCIONAL, se definido como verdadeiro, o aplicativo será exibido no modo paisagem        keepOpen = true, -- OPCIONAL, se definido como true, o aplicativo não fechará quando o player abrir o aplicativo (funciona somente se ui não estiver definido)        onUse = function() -- função OPCIONAL a ser chamada quando o aplicativo for aberto            -- faça alguma coisa        fim,        onServerUse = function(source) -- função OPCIONAL do lado do servidor a ser chamada quando o aplicativo for aberto            -- faça alguma coisa        fim    }}

Aplicativos personalizados usando UI

Se você quiser usar uma IU personalizada para seu aplicativo, você precisa criar um script separado e fornecer o caminho do arquivo HTML e enviá-lo como interface do usuário.

A maneira recomendada de criar um aplicativo com interface de usuário é criá-lo usando exportações. Temos aplicativos de modelo que você pode usar como referência.

Se o usuário tiver o modo escuro ativado, o tema de dados será definido como escuro. Caso contrário, será definido como claro.

Adicionando o aplicativo

Para adicionar o aplicativo, use o Adicionar aplicativo personalizado exportar.

Removendo o aplicativo

Para remover o aplicativo, use o RemoverCustomApp exportar.

Enviando uma mensagem para a IU

Para enviar uma mensagem para a IU, você precisa usar o Enviar mensagem de aplicativo personalizada export em vez de usar SendNUIMessage. Você ouviria da mesma forma no frontend.

Componentes e funções importados

Quando o aplicativo é carregado no telefone, algumas funções são importadas para o globalIsso objeto.

Nome Tipo Descrição
Nome do recurso corda O nome do recurso que adicionou o aplicativo personalizado
nome do aplicativo corda O nome do aplicativo
configurações objeto As configurações do telefone
componentes objeto Útil componentes para o aplicativo

Componentes

Os seguintes componentes podem ser acessados via globalThis.componentes. Você pode visualizar um arquivo de declaração TypeScript em lb-reactts/ui/src/components.d.ts.

criarGameRender

Cria uma renderização do jogo, que renderiza o jogo em uma tela. Isso é usado para criar uma câmera no seu aplicativo e deve ser usado com o exportações de câmeras.

const gameRender = componentes.createGameRender(canvas) // define a proporção da telagameRender.resizeByAspect(9/16) // pausa a renderizaçãogameRender.pause() // retomar a renderizaçãogameRender.resume() // tire uma fotoconst blob: Blob = aguarda gameRender.takePhoto() // gravar um vídeogravador const = gameRender.startRecording((blob: Blob) => {    const vídeo = URL.createObjectURL(blob)}) aguardar nova Promessa((resolver) => setTimeout(resolver, 5000)) gravador.parar() // destrói a renderização do jogogameRender.destroy()

uploadMídia

Carrega mídia e retorna uma promessa com o URL.

// O tipo de upload pode ser 'Vídeo' | 'Imagem' | 'Áudio'const url = await componentes.uploadMedia('Vídeo', blob)

salvar na galeria

Salva uma URL para a galeria e retorna uma promessa com o ID

const id = aguardar componentes.saveToGallery(url)

definirSeletorDeCor

componentes.setColorPicker({    onSelect(cor) {},    onClose(cor) {}})

definir pop-up

componentes.setPopUp({    título: 'Menu pop-up',    descrição: 'Confirme sua escolha',    botões: [        {            título: 'Cancelar',            cor: 'vermelho',            cb: () => {                console.log('Cancelar')            }        },        {            título: 'Confirmar',            cor: 'azul',            cb: () => {                console.log('Confirmar')            }        }    ]})

definirMenuContexto

componentes.setContextMenu({    título: 'Menu de contexto',    botões: [        {            título: 'Notificação por telefone',            cor: 'azul',            cb: () => {                sendNotification({ título: notificationText })            }        },        {            título: 'Notificação GTA',            cor: 'vermelho',            cb: () => {                fetchNui('drawNotification', { mensagem: notificationText })            }        }    ]})

setContactSelector

componentes.setContactSelector({    onSelect(contato) {        componentes.setPopUp({            título: 'Contato selecionado',            descrição: `${contato.nome ?? '??'} ${contato.sobrenome ?? ''} ${contato.número}`,            botões: [                {                    título: 'OK'                }            ]        })    }})

setShareComponent

Veja o Exportação AirShare para quais dados enviar.

componentes.setShareComponent({    tipo: 'imagem',    dados: {        isVideo: falso,        origem: 'https://docs.lbscripts.com/images/icons/icon.png'    }})

definirEmojiPickerVisível

componentes.setEmojiPickerVisible({    onSelect: (emoji) => {        componentes.setEmojiPickerVisible(falso)        componentes.setPopUp({            título: 'Emoji selecionado',            descrição: emoji.emoji,            botões: [                {                    título: 'OK'                }            ]        })    }})

definirGifPickerVisível

componentes.setGifPickerVisible({    onSelect(gif) {        componentes.setPopUp({            título: 'GIF selecionado',            anexo: { fonte: gif },            botões: [                {                    título: 'OK'                }            ]        })    }})

conjuntoGaleria

componentes.setGallery({    includeVideos: verdadeiro,    includeImages: verdadeiro,    allowExternal: verdadeiro,    multiSelect: falso,     onSelect(dados) {        componentes.setPopUp({            título: 'Mídia selecionada',            anexo: { src: Array.isArray(data) ? data[0].src : data.src },            botões: [                {                    título: 'OK'                }            ]        })    }})

definir imagem em tela cheia

componentes.setFullscreenImage('https://docs.lbscripts.com/images/icons/icon.png')

setHomeIndicatorVisível

componentes.setHomeIndicatorVisible(verdadeiro)

Funções

fetchNui(evento, dados, scriptName?)

fetchNui('teste', {    foo: 'barra'})

onNuiEvent

Ouça as mensagens NUI enviadas via Enviar mensagem de aplicativo personalizada

onNuiEvent('teste', (dados) => {    console.log(dados)})

emAlterarConfigurações

Ouça as alterações nas configurações

onSettingsChange((novasConfigurações) => {    console.log(novasConfigurações)})

criarChamada

criarChamada({    número: '1234567890', // você pode enviar `empresa` em vez de `número` para ligar para uma empresa    videochamada: falso,    hideNumber: falso})