falazap_pkg 0.0.10
falazap_pkg: ^0.0.10 copied to clipboard
Integração com chat, troca de mensagens uso de camera, audio, arquivos
About #
SDK com exclisividade de uso particular da fintalk.
Features #
SDK destinado a integração de acesso ao chat com utilização dos seguintes itens: camera, microfone e reconhecimento de voz, envio e captura de imagens e documentos.
Usage #
Adicione a referência do sdk no seu projeto. No projeto de destino adicione as seguintes permissões no Android Manifest:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_FRAME_BUFFER"/>
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL"/>
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.webkit.resource.AUDIO_CAPTURE"/>
Adicione a chamada ao componente utilizando o floatingActionButton, segundo ao exemplo abaixo:
void main() { runApp(const MyApp());}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Falazap!',
theme: ThemeData(primarySwatch: Colors.blue),
home: const MyHomePage(title: 'Falazap - Integrado'),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key, required this.title});
final String title;
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
void initState() { super.initState(); }
@override
Widget build(BuildContext context) {
bool visible = true;
return Scaffold(
extendBody: true,
appBar: AppBar(
title: Text(widget.title),
actions: [
IconButton(icon: const Icon(Icons.chat_bubble_outline),
onPressed: () { setState(() { visible = true; });
},)
],
),
body: HomePage(),
floatingActionButton: WebViewFloatingCtrl(
usuario: Usuario("Andrey", 'https://cdn-icons-png.flaticon.com/512/417/417777.png'),
url: "https://devs-prd.web.fintalk.io/",
visible: visible,
)
);
}
}