บทความก่อนหน้านี้แนะนำให้คุณรู้จักกับฟังก์ชันการใช้งานจริงหลายอย่างที่ใช้กันทั่วไปในโครงการ ดังนั้นในบทความนี้ ผมจะแนะนำวิธีรับแอปพลิเคชันมือถือที่ติดตั้งบนโทรศัพท์ Android กัน โดยไม่ต้องกังวลใจอีกต่อไป มาดูโค้ดกันโดยตรง
สตริงส่วนตัว getInstalledAppListAsString(){ PackageManager pm = context.getPackageManager(); List <ApplicationInfo> apps = pm.getInstalledApplications(PackageManager.GET_GIDS); StringBuffer stringBuffer = new StringBuffer(); getLaunchIntentForPackage(app.packageName) != null) { // แอปที่มีเจตนาของตัวเรียกใช้งาน if((app.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) == 1) { // อัปเดตแอประบบ } else if ((app.flags & ApplicationInfo.FLAG_SYSTEM) == 1) { // แอประบบ } else { // แอปที่ผู้ใช้ติดตั้ง stringBuffer.append(app.packageName).append(';'); stringBuffer.toString(); }มาดูวิธีการรับข้อมูลที่เกี่ยวข้องกับแต่ละแอปพลิเคชันกันดีกว่า
แพ็คเกจ cn.lyz.mobilesafe.domain;นำเข้า android.graphics.drawable.Drawable;/** * คลาสเอนทิตีข้อมูลพื้นฐานของแอปพลิเคชันที่ได้รับ * @ผู้เขียน liuyazhuang * */คลาสสาธารณะ AppInfo {//ไอคอน Drawable ส่วนตัว app_icon;//ชื่อแอปพลิเคชัน สตริงส่วนตัว app_name;//หมายเลขเวอร์ชันของแอปพลิเคชัน สตริงส่วนตัว app_version;//ชื่อแพ็คเกจแอปพลิเคชัน สตริงส่วนตัว ชื่อแพ็คเกจ;//ไม่ว่าจะเป็นผู้ใช้ appprivate boolean isUserApp;public AppInfo() {super();//TODO Constructor stub ที่สร้างขึ้นอัตโนมัติ}AppInfo สาธารณะ (app_icon ที่วาดได้, string app_name, String app_version, String packagename) {super();this.app_icon = app_icon;this.app_name = app_name;this.app_version = app_version;this.packagename = packagename;} AppInfo สาธารณะ (app_icon ที่วาดได้, สตริง app_name, สตริง app_version, ชื่อแพ็คเกจสตริง, บูลีน isUserApp) {super();this.app_icon = app_icon;this.app_name = app_name;this.app_version = app_version;this.packagename = packagename;this.isUserApp = isUserApp;} Drawable สาธารณะ getApp_icon() {return app_icon;} โมฆะสาธารณะ setApp_icon (app_icon ที่วาดได้) {this.app_icon = app_icon;}สตริงสาธารณะ getApp_name() {ส่งคืน app_name;} โมฆะสาธารณะ setApp_name (ชื่อแอปสตริง) {this.app_name = app_name;} สตริงสาธารณะ getApp_version() {ส่งคืน app_version;} โมฆะสาธารณะ setApp_version (สตริง app_version) {this.app_version = app_version;} สตริงสาธารณะ getPackagename () { return packagename; } โมฆะสาธารณะ setPackagename(String packagename) {this.packagename = packagename;}public boolean isUserApp() {return isUserApp;} โมฆะสาธารณะ setUserApp (boolean isUserApp) {this.isUserApp = isUserApp;}@Overridepublic String toString() {return "AppInfo [app_icon =" + app_icon + ", app_name=" + app_name+ ", app_version=" + app_version + ", packagename="+ packagename + ", isUserApp=" + isUserApp + "]";}}