Android 应用详情查看

本文探讨了在Android中查看应用详情,包括如何使用废弃的`PackageStats`和替代的`StorageStatsManager`来检查存储空间,以及如何在不需权限的情况下获取应用基本信息。还提到了`ApplicationInfo`用于获取apk大小,并讨论了通过`getLaunchIntentForPackage`和`resolveActivity`获取主Activity的问题,以及为何`resolveActivity()`可能返回null。
摘要由CSDN通过智能技术生成

应用详情查看

存储空间查看

  1. PackageStats
    该类在API26开始被遗弃

    1. 创建AIDL包android.content.pm

    2. 添加AIDL文件

      1. IPackageStatsObserver.aidl

        /*
        **
        ** Copyright 2007, The Android Open Source Project
        **
        ** Licensed under the Apache License, Version 2.0 (the "License");
        ** you may not use this file except in compliance with the License.
        ** You may obtain a copy of the License at
        **
        **     http://www.apache.org/licenses/LICENSE-2.0
        **
        ** Unless required by applicable law or agreed to in writing, software
        ** distributed under the License is distributed on an "AS IS" BASIS,
        ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        ** See the License for the specific language governing permissions and
        ** limitations under the License.
        */
        package android.content.pm;
        import android.content.pm.PackageStats;
        /**
         * API for package data change related callbacks from the Package Manager.
         * Some usage scenarios include deletion of cache directory, generate
         * statistics related to code, data, cache usage(TODO)
         * {@hide}
         */
        oneway interface IPackageStatsObserver {
                 
        
            void onGetStatsCompleted(in PackageStats pStats, boolean succeeded);
        }
        
      2. PackageStats.aidl

        /* //device/java/android/android/view/WindowManager.aidl
        **
        ** Copyright 2007, The Android Open Source Project
        **
        ** Licensed under the Apache License, Version 2.0 (the "License");
        ** you may not use this file except in compliance with the License.
        ** You may obtain a copy of the License at
        **
        **     http://www.apache.org/licenses/LICENSE-2.0
        **
        ** Unless required by applicable law or agreed to in writing, software
        ** distributed under the License is distributed on an "AS IS" BASIS,
        ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        ** See the License for the specific language governing permissions and
        ** limitations under the License.
        */
        package android.content.pm;
        parcelable PackageStats;
        
    3. 添加java代码

      try {
             
          Method getPackageSizeInfo = mPackageManager.getClass().
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值