UWallpaper – HD Wallpaper Full Flutter App with Animation | GetX | Google Admob | Pexels
$54.00
11 sales
LIVE PREVIEWUWallpaper – HD Wallpaper Full Flutter App with Animation | GetX | Google Admob | Pexels Review
Introduction
UWallpaper is a comprehensive HD wallpaper app built using Flutter, GetX, and Google Admob. With its sleek and modern design, this app allows users to browse and set stunning wallpapers on their devices. In this review, we’ll dive into the features, performance, and overall experience of UWallpaper.
Features
UWallpaper boasts an impressive array of features, including:
- Elegant Intro 3 slider screens
- Explore with Happening Now (Trending) photos
- The Color Tone (pink, red, blue, and more) as you liked
- Chosen (Categories picked by Editor)
- Best of the month (Popular photos)
- Common categories (16+ categories)
- Admob Ready
- FCM Notification Ready
- Detail Photo Swiper Left + Right, more effective layout
- Your favorite photo just one click Icon on detail page
- View with Staggered View more beautiful layout
- Ready for your customize code and then Monetize your Apps
Performance
UWallpaper is built using Flutter, which ensures a seamless and smooth user experience. The app is compatible with both Android and iOS devices, and its performance is impressive, with minimal lag and loading times.
Design and User Interface
The app’s design is modern and sleek, with a clean and intuitive user interface. The navigation is easy to use, and the app’s layout is well-organized, making it easy to find and set wallpapers.
Conclusion
UWallpaper is an excellent HD wallpaper app that offers a wide range of features and a seamless user experience. With its compatibility with both Android and iOS devices, this app is a great choice for anyone looking for a reliable and feature-rich wallpaper app.
Rating: 0/5
Recommendation: I would recommend UWallpaper to anyone looking for a high-quality wallpaper app with a wide range of features and a seamless user experience.
Pros:
- Wide range of features
- Seamless user experience
- Compatible with both Android and iOS devices
- Modern and sleek design
Cons:
- None notable
Overall: UWallpaper is an excellent app that offers a wide range of features and a seamless user experience. With its compatibility with both Android and iOS devices, this app is a great choice for anyone looking for a reliable and feature-rich wallpaper app.
User Reviews
Be the first to review “UWallpaper – HD Wallpaper Full Flutter App with Animation | GetX | Google Admob | Pexels”
Introduction
In this tutorial, we will be creating a complete Flutter app using the UWallpaper library, which is a powerful and feature-rich wallpaper app that allows users to set stunning HD wallpapers on their devices. We will also be incorporating GetX, a popular state management library, to manage the app's state and navigation. Additionally, we will be using Google AdMob to display ads in the app. Finally, we will be using Pexels, a popular stock photo website, to fetch high-quality wallpapers.
Prerequisites
Before starting this tutorial, make sure you have the following:
- Flutter installed on your machine
- Android Studio or Visual Studio Code as your IDE
- A basic understanding of Flutter and Dart programming language
- A Pexels API key (you can get one for free by signing up on their website)
Step 1: Create a new Flutter project
Open your IDE and create a new Flutter project by selecting "Flutter" as the project type and "Blank" as the template. Name your project "UWallpaper" and click "Create".
Step 2: Add the UWallpaper library
In your project directory, open the pubspec.yaml
file and add the following dependency:
dependencies:
uwallpaper: ^1.0.0
Then, run the following command in your terminal to get the latest version of the library:
flutter pub get
Step 3: Set up GetX
In your project directory, open the pubspec.yaml
file and add the following dependency:
dependencies:
get: ^4.6.1
Then, run the following command in your terminal to get the latest version of the library:
flutter pub get
Next, create a new file called getx_config.dart
in your project directory and add the following code:
import 'package:get/get.dart';
void main() {
Get.config(
enableLog: true,
logPrint: (tag, message) => print('[$tag] $message'),
);
}
This file sets up GetX with logging enabled.
Step 4: Set up Google AdMob
In your project directory, open the pubspec.yaml
file and add the following dependency:
dependencies:
flutter_admob: ^0.9.4
Then, run the following command in your terminal to get the latest version of the library:
flutter pub get
Next, create a new file called admob_config.dart
in your project directory and add the following code:
import 'package:flutter_admob/flutter_admob.dart';
void main() {
Admob.initialize(
appId: 'YOUR_APP_ID',
apiKey: 'YOUR_API_KEY',
);
}
Replace YOUR_APP_ID
and YOUR_API_KEY
with your actual AdMob app ID and API key.
Step 5: Create the app's UI
Create a new file called main.dart
in your project directory and add the following code:
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:uwallpaper/uwallpaper.dart';
import 'package:admob_flutter/admob_flutter.dart';
class UWallpaperApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'UWallpaper',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: HomeScreen(),
);
}
}
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('UWallpaper'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Welcome to UWallpaper!',
style: TextStyle(fontSize: 24),
),
SizedBox(height: 20),
ElevatedButton(
onPressed: () {
// Navigate to the wallpaper selection screen
Get.to(() => WallpaperSelectionScreen());
},
child: Text('Set Wallpaper'),
),
],
),
),
);
}
}
class WallpaperSelectionScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Wallpaper Selection'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Select a wallpaper:',
style: TextStyle(fontSize: 24),
),
SizedBox(height: 20),
Expanded(
child: GridView.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
),
itemCount: 10, // Replace with actual wallpaper count
itemBuilder: (context, index) {
return GestureDetector(
onTap: () {
// Set the selected wallpaper
UWallpaper.setWallpaper(
'path/to/wallpaper${index}.jpg',
);
},
child: Image.asset(
'path/to/wallpaper${index}.jpg',
fit: BoxFit.cover,
),
);
},
),
),
],
),
),
);
}
}
This code sets up the app's UI with a home screen that displays a button to navigate to the wallpaper selection screen. The wallpaper selection screen displays a grid of wallpapers that can be selected and set as the device's wallpaper.
Step 6: Add Pexels API key
Create a new file called pexels_api_key.dart
in your project directory and add the following code:
const String pexelsApiKey = 'YOUR_API_KEY';
Replace YOUR_API_KEY
with your actual Pexels API key.
Step 7: Fetch wallpapers from Pexels
Create a new file called pexels_service.dart
in your project directory and add the following code:
import 'package:http/http.dart' as http;
import 'package:pexels_api_key.dart';
class PexelsService {
Future<List<Wallpaper>> getWallpapers() async {
final response = await http.get(
Uri.parse('https://api.pexels.com/v1/search?query=wallpaper&orientation=landscape'),
headers: {
'Authorization': 'Bearer $pexelsApiKey',
},
);
if (response.statusCode == 200) {
final jsonData = jsonDecode(response.body);
final wallpapers = jsonData['photos'].map((photo) => Wallpaper.fromPexels(photo)).toList();
return wallpapers;
} else {
throw Exception('Failed to load wallpapers');
}
}
}
class Wallpaper {
final String url;
final String description;
Wallpaper({required this.url, required this.description});
factory Wallpaper.fromPexels(Map<String, dynamic> photo) {
return Wallpaper(
url: photo['src']['original'],
description: photo['description'],
);
}
}
This code sets up a Pexels API service that fetches wallpapers from Pexels and returns a list of Wallpaper
objects.
Step 8: Integrate Pexels API with UWallpaper
Modify the WallpaperSelectionScreen
code to fetch wallpapers from Pexels and display them in the grid:
class WallpaperSelectionScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Wallpaper Selection'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Select a wallpaper:',
style: TextStyle(fontSize: 24),
),
SizedBox(height: 20),
FutureBuilder(
future: PexelsService().getWallpapers(),
builder: (context, snapshot) {
if (snapshot.hasData) {
return Expanded(
child: GridView.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
),
itemCount: snapshot.data.length,
itemBuilder: (context, index) {
return GestureDetector(
onTap: () {
// Set the selected wallpaper
UWallpaper.setWallpaper(
snapshot.data[index].url,
);
},
child: Image.network(
snapshot.data[index].url,
fit: BoxFit.cover,
),
);
},
),
);
} else {
return CircularProgressIndicator();
}
},
),
],
),
),
);
}
}
This code fetches wallpapers from Pexels using the PexelsService
class and displays them in the grid.
Step 9: Add Google AdMob ads
Modify the HomeScreen
code to display Google AdMob ads:
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('UWallpaper'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Welcome to UWallpaper!',
style: TextStyle(fontSize: 24),
),
SizedBox(height: 20),
ElevatedButton(
onPressed: () {
// Navigate to the wallpaper selection screen
Get.to(() => WallpaperSelectionScreen());
},
child: Text('Set Wallpaper'),
),
SizedBox(height: 20),
AdmobBanner(
adUnitId: 'YOUR_AD_UNIT_ID',
adSize: AdmobBannerSize.FULL_BANNER,
),
],
),
),
);
}
}
Replace YOUR_AD_UNIT_ID
with your actual AdMob ad unit ID.
Step 10: Run the app
Run the app on an emulator or a physical device to test it. You should see the app's UI with a button to navigate to the wallpaper selection screen. Select a wallpaper and set it as the device's wallpaper. You should also see Google AdMob ads displayed on the home screen.
That's it! You have now created a complete Flutter app using the UWallpaper library, GetX, Google AdMob, and Pexels.
Settings Example
Google Services
To configure Google AdMob, you need to add the following settings in the android/app/google-services.json
file:
{
"client_info": {
"mobilesdk_app_id": "YOUR_APP_ID",
"android_client_info": {
"app_id": "YOUR_APP_ID",
"api_key": "YOUR_API_KEY",
"project_info": {
"project_number": "YOUR_PROJECT_NUMBER"
}
}
}
}
Replace YOUR_APP_ID
, YOUR_API_KEY
, and YOUR_PROJECT_NUMBER
with your actual Google AdMob settings.
Pexels API
To configure Pexels API, you need to add the following settings in the lib/config.dart
file:
class Config {
static const String pexelsApiKey = 'YOUR_API_KEY';
static const String pexelsApiUrl = 'https://api.pexels.com/v1/search';
}
Replace YOUR_API_KEY
with your actual Pexels API key.
GetX
To configure GetX, you don't need to add any settings. Just add the get
package to your pubspec.yaml
file and import it in your Dart files.
Wallpaper Settings
To configure wallpaper settings, you need to add the following settings in the lib/models/wallpaper_model.dart
file:
class WallpaperModel {
static const int wallpaperCount = 20;
static const int wallpaperWidth = 1080;
static const int wallpaperHeight = 1920;
}
These settings control the number of wallpapers, width, and height of the wallpaper images.
Animation Settings
To configure animation settings, you need to add the following settings in the lib/models/animation_model.dart
file:
class AnimationModel {
static const int animationDuration = 2000; // in milliseconds
static const int animationDelay = 1000; // in milliseconds
}
These settings control the animation duration and delay.
Here are the features mentioned about UWallpaper:
- Elegant Intro 3 slider screens.
- Explore with Happening Now (Trending) photos.
- The Color Tone (pink, red, blue and so on) as you liked.
- Chosen (Categories picked by Editor).
- Best of the month (Popular photos).
- Common categories (16+ categories).
- Admob Ready.
- FCM Notification Ready.
- Detail Photo Swiper Left + Right, more effective layout.
- Your favorite photo just one click Icon on detail page.
- View with Staggered View more beautiful layout.
- Ready for your customize code and then Monetize your Apps.
Note that these features are mentioned in the "Features" section, which is a separate part of the content.
$54.00
There are no reviews yet.