Skip to content

Analisys of requirements

Bounteous edited this page May 30, 2019 · 24 revisions

User Requirements

Android

If your Android smartphone or tablet meets or exceeds the following hardware and software requirements, you can download the beta and run the app without performing issues.

  • Android 6.0 (SDK 26) Oreo or higher
  • 3GB of free onboard storage
  • At least 2GB of system RAM
  • GPU requirements: Qualcomm Adreno 530 or higher, ARM Mali-G71 MP20, ARM Mali-G72 MP12 or higher
SDK >= 26

The Android software development kit (SDK) includes a comprehensive set of development tools. These include a debugger, libraries, a handset emulator based on QEMU, documentation, sample code, and tutorials. Currently supported development platforms include computers running Linux (any modern desktop Linux distribution), Mac OS X 10.5.8 or later, and Windows 7 or later. As of March 2015, the SDK is not available on Android itself, but software development is possible by using specialized Android applications.

Until around the end of 2014, the officially-supported integrated development environment (IDE) was Eclipse using the Android Development Tools (ADT) Plugin, though IntelliJ IDEA IDE (all editions) fully supports Android development out of the box, and NetBeans IDE also supports Android development via a plugin. As of 2015, Android Studio, made by Google and powered by IntelliJ, is the official IDE; however, developers are free to use others, but Google made it clear that ADT was officially deprecated since the end of 2015 to focus on Android Studio as the official Android IDE. Additionally, developers may use any text editor to edit Java and XML files, then use command line tools (Java Development Kit and Apache Ant are required) to create, build and debug Android applications as well as control attached Android devices (e.g., triggering a reboot, installing software package(s) remotely).

Enhancements to Android's SDK go hand-in-hand with the overall Android platform development. The SDK also supports older versions of the Android platform in case developers wish to target their applications at older devices. Development tools are downloadable components, so after one has downloaded the latest version and platform, older platforms and tools can also be downloaded for compatibility testing.

Android applications are packaged in .apk format and stored under /data/app folder on the Android OS (the folder is accessible only to the root user for security reasons). APK package contains .dex files (compiled byte code files called Dalvik executables), resource files, etc.

The main application of the suite is the integrated development environment (IDE), also named Xcode. The Xcode suite includes most of Apple's developer documentation, and built-in Interface Builder, an application used to construct graphical user interfaces. Up to Xcode 4.1, the Xcode suite included a modified version of the GNU Compiler Collection. In Xcode 3.1 up to Xcode 4.6.3, it included the LLVM-GCC compiler, with front ends from the GNU Compiler Collection and a code generator based on LLVM. In Xcode 3.2 and later, it included the Clang C/C++/Objective-C compiler, with newly-written front ends and a code generator based on LLVM, and the Clang static analyzer. Starting with Xcode 4.2, the Clang compiler became the default compiler, Starting with Xcode 5.0, Clang was the only compiler provided.

Up to Xcode 4.6.3, the Xcode suite used the GNU Debugger (GDB) as the back-end for the IDE's debugger. Starting with Xcode 4.3, the LLDB debugger was also provided; starting with Xcode 4.5 LLDB replaced GDB as the default back-end for the IDE's debugger. Starting with Xcode 5.0, GDB was no longer supplied.

On June 4, 2018, at the Apple Worldwide Developers Conference, Xcode version 10 was announced; a beta version was released the same day. Xcode 10 introduced support for the Dark Mode announced for macOS Mojave, the collaboration platforms Bitbucket and GitLab (in addition to GitHub), training machine learning models from playgrounds, and the new features in Swift 4.2 and Metal 2.1, as well as improvements to the editor and the project build system. Xcode 10 also dropped support for building 32-bit macOS apps and no longer supports Subversion integration.

Xcode 10 was publicly released on September 17, 2018.

Development

Android software development is the process by which new applications are created for devices running the Android operating system. Google states that "Android apps can be written using Kotlin, Java, and C++ languages" using the Android software development kit (SDK), while using other languages is also possible. All non-JVM languages, such as Go, JavaScript, C, C++ or assembly, need the help of JVM language code, that may be supplied by tools, likely with restricted API support. Some languages/programming tools allow cross-platform app support, i.e. for both Android and iOS. Third party tools, development environments and language support have also continued to evolve and expand since the initial SDK was released in 2008. In addition, with major business entities like Walmart, Amazon, Bank of America etc. eyeing to engage and sell through mobiles, mobile application development is witnessing a transformation.

iOS

Currently app build is only available to iOS11 users. You will need to have at least an iPhone 6S/SE, or alternatively an iPad Mini 4, iPad Pro, iPad Air 2 or iPad 2017 device. This mobile app does not support iPhone 5S, 6, 6 Plus; iPad Air, Mini 2, Mini 3, iPod Touch.

SDK 2016

The iOS SDK (Software Development Kit) (formerly iPhone SDK) is a software development kit developed by Apple Inc. The kit allows for the development of mobile apps on Apple's iOS operating system.

While originally developing iPhone prior to its unveiling in 2007, Apple's then-CEO Steve Jobs did not intend to let third-party developers build native apps for iOS, instead directing them to make web applications for the Safari web browser. However, backlash from developers prompted the company to reconsider, with Jobs announcing in October 2007 that Apple would have a software development kit available for developers by February 2008. The SDK was released on March 6, 2008.

The SDK is a free download for users of Mac personal computers. It is not available for Microsoft Windows PCs. The SDK contains sets giving developers access to various functions and services of iOS devices, such as hardware and software attributes. It also contains an iPhone simulator to mimic the look and feel of the device on the computer while developing. New versions of the SDK accompany new versions of iOS. In order to test applications, get technical support, and distribute apps through App Store, developers are required to subscribe to the Apple Developer Program.

Combined with Xcode, the iOS SDK helps developers write iOS apps using officially supported programming languages, including Swift and Objective-C. Other companies have also created tools that allow for the development of native iOS apps using their respective programming languages.

Development

Xcode is an integrated development environment (IDE) for macOS containing a suite of software development tools developed by Apple for developing software for macOS, iOS, watchOS, and tvOS. First released in 2003, the latest stable release is version 10.2 and is available via the Mac App Store free of charge for macOS High Sierra and macOS Mojave users. Registered developers can download preview releases and prior versions of the suite through the Apple Developer website.

Xcode supports source code for the programming languages C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby, ResEdit (Rez), and Swift, with a variety of programming models, including but not limited to Cocoa, Carbon, and Java. Third parties have added support for GNU Pascal, Free Pascal, Ada, C#, Perl, and D.

Xcode can build fat binary files containing code for multiple architectures with the Mach-O executable format. These are called universal binary files, which allow software to run on both PowerPC and Intel-based (x86) platforms and that can include both 32-bit and 64-bit code for both architectures. Using the iOS SDK, Xcode can also be used to compile and debug applications for iOS that run on ARM architecture processors.

Xcode includes the GUI tool Instruments, which runs atop a dynamic tracing framework, DTrace, created by Sun Microsystems and released as part of OpenSolaris.

Functional requirements

Q: App messaging?

This app is for everyone who wants fast and reliable messaging (at the moment). Particular users and small teams may like the large groups, usernames, desktop apps and powerful file sharing options (it's not still implemented).

Since this app can have up to 200,000 simultaneous users, it support replies, that help maintain order and keep communication in large communities efficient. You can appoint admins with advanced tools to help these communities prosper in peace. Private chats can be created by anyone and are powerful platforms for private discussions.

In case you're more into pictures, this app doesn't still have animated gif search, state of the art photo editor, or an open sticker platform (find some cool stickers here or here). What‘s more, there is no need to worry about disk space on your device. With PackTracp-Api's cloud support and internal cache management options, the app can take up nearly zero space on your phone.

Those looking for extra privacy should check out the advanced guide policy. And if you want secrecy, try to lock your app with an additional passcode.

Q: How the api process data requests?

Secret chats use end-to-end encryption, thanks to which the api server don't have any data to disclose.

To protect the data that is not covered by end-to-end encryption, PackTrack-Api uses a centered infrastructure. Cloud chat data is stored in a single server located in some place. The relevant decryption keys are split into parts and are never kept in the same place as the data that protect.

Thanks to this structure, we can ensure that no single government or block of like-minded countries can intrude on people's privacy and freedom of expression. The app can be forced to give up data only if an issue is grave and universal enough to pass the scrutiny of several different legal systems around the world.

To this day, we have disclosed 0 bytes of user data to third parties, including governments.

Q: Can I delete my messages?

As of PackTrack-Api, you can always delete any messages you sent or received in any one-on-one conversation (it's only implemented on the api at the moment). You can also clear the entire chat history on both ends. On PackTrapc-App deleted messages do not leave a mark in the chat.

Q: How do I log out?

Most users don't need to log out of PackTrack-App:

You can use PackTrack-App on many devices at the same time. Just use the same username to log in on all devices.
You can go to Settings > Data and Storage > Storage Usage> Clear cache to free up space on your device without logging out.
If you use the app with multiple username, you can switch between accounts without logging out.
If you use it on a shared device, you can set up a passcode in Settings > Privacy and Security to make sure only you have access to your account.

If you log out, you will keep all your cloud messages. However, you will lose all your Secret Chats and all messages inside those secret chats when you log out.

Q: Who can see me ‘online’?

The last seen rules apply to your online status as well. People can only see you online if you're sharing your last seen status with them.

There are some exceptions because sometimes it is obvious that you are online. Regardless of the last seen settings, people will see you online for a brief period (~30 seconds) if you do the following:

Send them a message in a one-on-one chat where you both are members.
Read a message they sent you in a one-on-one chat.
Broadcast a “typing…” status to their chat with you or to a group where you both are members.

If you‘re not sharing your last seen timestamp with someone and don’t do anything of the above, they'll never see you online. Another way of achieving this is to block that person.

Q: What are usernames? How do I get one?

You can set up a public username on PackTrack-Api. It then becomes possible for other users to find you by that username — you will appear in contacts search under ‘global results’. Please note that people who find you will be able to send you messages, even if they don't know your number. If you are not comfortable with this, we advise against setting up a username in PackTrack-Api.

You can set up a username in Settings and use the universal search box in the chat list to search for chats, messages, and usernames.

Non Functional requirements

Q: What makes PackTrack-Api cool?

PackTrack api intrastructure actually can have up to 200,000 active users using a powerful communication tool. Here are a few key features that make them stand out in the messaging world:

Unified history Edit your messages after posting, delete them so that they disappear for everyone.

Cross-platform availability Access your messages anytime, from any number of your mobile or desktop devices.

Instant search Find the message you're looking for, even among millions. Filter by sender to make searching easier.

Replies, mentions, hashtags Easily trace a conversation and keep communication efficient, no matter the group size.

Smart notifications Receive notifications on every new created chat or similar.

File sharing Send and receive files of any type, up to 1,5 GB in size each, access them instantly on your other devices.

Customization via api Create custom tools for any specific needs using the API endpoints with your credentials.

Q: How is PackTrack-Api different from WhatsApp?

Unlike WhatsApp, this api is a cloud-based messenger with seamless sync. As a result, you can access your messages from several devices at once, including tablets and computers, and share a limited number of photos, videos and files (doc, zip, mp3, etc.) of up to 1,5 GB each. And if you don't want to store all that data on your device, you can always keep it in the cloud.

Thanks to the server infrastructure and encryption, PackTrack-APi is faster and way more secure. On top of that, PackTrack-Api is free and will stay free with no ads, no subscription fees, forever.

The API is open, and developers to create their own chating apps are welcome. The Api also allows, a platform for developers that allows anyone to easily build specialized tools for their own purpouses or integrate any services.

And that‘s just the tip of the iceberg. Don’t forget to check out this paragraph for even more exclusive stuff.

Q: What are your thoughts on internet privacy?

Big internet companies like Facebook or Google have effectively hijacked the privacy discourse in the recent years. Their marketers managed to convince the public that the most important things about privacy are superficial tools that allow hiding your public posts from the people around you. Adding these superficial tools enables companies to calm down the public and change nothing in how they are turning over private data to marketers and other third parties.

PackTrack-Api was developed in mind that the two most important components of Internet privacy should be instead: Protecting your private conversations from snooping third parties, such as officials, employers, etc. Protecting your personal data from third parties, such as marketers, advertisers, etc.

This is what everybody should care about, and these are some of our top priorities. PackTrack-Api's aim is to create a truly free messenger, without the usual caveats. This means that instead of diverting public attention with low-impact settings, we can afford to focus on the real privacy issues that exist in the modern world.

Use cases

Does being in the public spotlight shut you off from having a private life, forever, online? People living in poverty often don't participate fully in civil society not out of ignorance or apathy, but out of fear. If something you write were to get back to your boss, would you lose your job? If your social worker read about your opinion of the system, would she treat you differently? Anonymity gives a voice to the voiceless. Although it's often said that the poor do not use online access for civic engagement, failing to act in their self-interests, it is our hypothesis (based on personal conversations and anecdotal information) that it is precisely the “permanent record ” left online that keeps many of the poor from speaking out on the Internet. We hope to show people how to engage more safely online, and then at the end of the year, evaluate how online and offline civic engagement has changed, and how the population sees this continuing into the future.