The official messaging app for Facebook friends
Arguably the original social media platform, Facebook has since expanded its reach into the area of texting with their app Facebook Messenger. While not Facebook itself, it is an extension that grew beyond the original program, becoming its own entity with its own features and capabilities.
The app itself is rather clunky due to how many roles Facebook Messenger tries to fulfill. Unlike other apps that manage to keep their programs intuitive, Facebook has only increased complexity. The main menu is a mess of information, including both recent phone texts and Facebook Messenger texts. You can see who is active, and you can see favorite chatters. Swipe down and a surprise camera function reveals itself with even more stuff, including the addition of images, text and scribbles. There is even a way to call individuals with the program as well as a way to sync all of your phone’s contacts to Facebook Messenger.
Facebook really has tried to create an app that integrates itself into your phone but, in the end, makes everything more complex than it needs to be. Why use their texting system when the one that came with your phone is easier and simpler to use? Apart from this question, it does have neat integrations with the phone. For instance, when someone messages you on the app, Facebook puts a picture of that person on your phone so you can immediately see who is reaching out to you. Unfortunately, this always ends up sitting on the screen in an inconvenient location.
- A lot of communication capability
- Inventive alert integration
- Seamless transition from Facebook online chat to mobile chat
- Unsuccessfully tries to be your single text message and phone call service
- Challenging to figure out
Now you can see your call history and missed calls—all in one place.
Potentially dangerous permissions
- ACCESS_COARSE_LOCATION: Allows an app to access approximate location. Alternatively, you might want ACCESS_FINE_LOCATION.
- ACCESS_FINE_LOCATION: Allows an app to access precise location. Alternatively, you might want ACCESS_COARSE_LOCATION.
- CALL_PHONE: Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call.
- CAMERA: Required to be able to access the camera device.
- GET_ACCOUNTS: Allows access to the list of accounts in the Accounts Service.
- PROCESS_OUTGOING_CALLS: Allows an application to see the number being dialed during an outgoing call with the option to redirect the call to a different number or abort the call altogether.
- READ_CALENDAR: Allows an application to read the user's calendar data.
- READ_CALL_LOG: Allows an application to read the user's call log.
- READ_CONTACTS: Allows an application to read the user's contacts data.
- READ_EXTERNAL_STORAGE: Allows an application to read from external storage.
- READ_PHONE_STATE: Allows read only access to phone state, including the phone number of the device, current cellular network information, the status of any ongoing calls, and a list of any PhoneAccounts registered on the device.
- READ_SMS: Allows an application to read SMS messages.
- RECEIVE_MMS: Allows an application to monitor incoming MMS messages.
- RECEIVE_SMS: Allows an application to receive SMS messages.
- RECORD_AUDIO: Allows an application to record audio.
- SEND_SMS: Allows an application to send SMS messages.
- WRITE_CONTACTS: Allows an application to write the user's contacts data.
- WRITE_EXTERNAL_STORAGE: Allows an application to write to external storage.
- ACCESS_NETWORK_STATE: Allows applications to access information about networks.
- ACCESS_WIFI_STATE: Allows applications to access information about Wi-Fi networks.
- BATTERY_STATS: Allows an application to collect battery statistics
- BLUETOOTH: Allows applications to connect to paired bluetooth devices.
- CHANGE_NETWORK_STATE: Allows applications to change network connectivity state.
- INSTALL_SHORTCUT: Allows an application to install a shortcut in Launcher.
- INTERNET: Allows applications to open network sockets.
- MODIFY_AUDIO_SETTINGS: Allows an application to modify global audio settings.
- NFC: Allows applications to perform I/O operations over NFC.
- READ_SYNC_SETTINGS: Allows applications to read the sync settings.
- RECEIVE_BOOT_COMPLETED: Allows an application to receive the ACTION_BOOT_COMPLETED that is broadcast after the system finishes booting. If you don't request this permission, you will not receive the broadcast at that time. Though holding this permission does not have any security implications, it can have a negative impact on the user experience by increasing the amount of time it takes the system to start and allowing applications to have themselves running without the user being aware of them. As such, you must explicitly declare your use of this facility to make that visible to the user.
- REQUEST_INSTALL_PACKAGES: Allows an application to request installing packages. Apps targeting APIs greater than 22 must hold this permission in order to use ACTION_INSTALL_PACKAGE.
- SYSTEM_ALERT_WINDOW: Allows an app to create windows using the type TYPE_SYSTEM_ALERT, shown on top of all other apps. Very few apps should use this permission; these windows are intended for system-level interaction with the user.
- USE_FINGERPRINT: Allows an app to use fingerprint hardware.
- VIBRATE: Allows access to the vibrator.
- WAKE_LOCK: Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming.
- WRITE_SYNC_SETTINGS: Allows applications to write the sync settings.