Mobile Experiences Sharing 2 on Aug

News
Mobile Experiences Sharing: Useful Tips & Tricks for Mobile Development
On August 23, S3Corp. organized its second internal sharing session focused on mobile development. The event took place in the Pig Room at the company office. Three experienced mobile developers presented technical topics that offered useful knowledge to support daily development tasks. The session targeted common practices, essential tools, and optimization techniques used in Android and cross-platform mobile applications.
28 Aug 2018
On August 23, S3Corp. organized its second internal sharing session focused on mobile development. The event took place in the Pig Room at the company office. Three experienced mobile developers presented technical topics that offered useful knowledge to support daily development tasks. The session targeted common practices, essential tools, and optimization techniques used in Android and cross-platform mobile applications.
The main topic, “Useful Tips & Tricks for Mobile Development,” was shared by Bao Truong, Quy Nguyen, and Thu Nguyen. Each speaker presented distinct technical content based on real development experience. The purpose of the session was to transfer actionable practices that improve efficiency, code quality, and application performance.
Useful ADB Commands for Android Development
Presented by Bao Truong
Bao Truong opened the session with a detailed overview of Android Debug Bridge (ADB) commands. ADB is a versatile command-line tool that allows developers to communicate with devices and emulators. Bao demonstrated how to use ADB to streamline common tasks during development and testing phases.
He explained how ADB simplifies device interaction. This includes installing or uninstalling applications directly through the terminal, accessing device logs in real-time using adb logcat
, and monitoring performance metrics. Bao also showed how to use adb shell
for executing Linux commands on a device and managing files between a computer and Android device with adb push
and adb pull
.
In addition, Bao shared how to use ADB for capturing screenshots and screen recordings during testing. He highlighted the ability to simulate user actions such as tapping, swiping, and key events through ADB input commands. These commands are useful for automated testing and reproducing bugs in different devices.
The session emphasized that mastering ADB commands can help developers diagnose issues faster, test more efficiently, and save time by automating repetitive tasks.
Using Proguard to Improve Android Application Security
Presented by Quy Nguyen
Quy Nguyen focused on Proguard, a code shrinker and obfuscator used to secure Android applications. He began by explaining the main functions of Proguard. These include reducing the size of the APK file, removing unused code, and making reverse engineering of the app source code more difficult.
Quy walked through how Proguard works during the build process. It scans code, removes unused classes, methods, and fields, and replaces class and method names with short, meaningless labels. This process not only helps with security but also improves runtime performance.
He shared practical tips on configuring the proguard-rules.pro
file. This configuration file defines which parts of the code should be kept as-is and which parts should be obfuscated. Quy provided examples of how to prevent issues with external libraries by using keep rules. He also explained how to debug Proguard issues using mapping files that map obfuscated names back to original names for troubleshooting crash reports.
Quy’s sharing demonstrated that effective use of Proguard contributes to both code protection and app optimization. His examples provided a clear view of how developers can apply these settings to real projects.
Cross-Platform Mobile Development Tips
Presented by Thu Nguyen
Thu Nguyen concluded the session with tips that apply to both Android and iOS app development. The focus of the presentation was on improving code quality, development speed, and user experience through practical adjustments in the development process.
Thu discussed the importance of consistent UI behavior across platforms. She emphasized testing on both Android and iOS devices to ensure uniform functionality and appearance. One tip involved using shared logic for non-UI functionalities such as API calls and data handling to reduce duplication and improve maintainability.
She also shared insights on managing platform-specific issues, such as handling different screen resolutions, permission models, and navigation patterns. Thu encouraged the use of modular code structure and architecture patterns like MVVM or Clean Architecture to isolate business logic from UI code. This approach helps manage complexity and improves testability.
Another part of Thu’s presentation covered the use of logging tools and performance monitors during development. Monitoring tools help identify bottlenecks in rendering and data flow. Thu pointed out that early detection of performance issues reduces the need for extensive debugging after release.
Throughout her session, Thu highlighted the need for structured planning and code reviews to ensure that the app maintains high standards in both functionality and performance across platforms.
Conclusion
The August session of Mobile Development Sharing at S3Corp. delivered practical knowledge that developers can apply immediately in their daily tasks. Each presenter brought specific expertise, sharing examples and techniques that align with real development challenges.
The focus on ADB commands helped developers interact more efficiently with Android devices. The Proguard session explained how to protect application code and improve performance. Finally, the cross-platform development tips provided strategies for handling mobile projects with better structure and reliability.
S3Corp. extends thanks to Bao Truong, Quy Nguyen, and Thu Nguyen for contributing to this knowledge-sharing event. The session was valuable for mobile developers looking to improve their workflow and deepen their understanding of mobile application development practices.