ind*_*ndi 6 android android-ndk android-framework
这是我在android平台上的第一个项目,我对这个环境感到不舒服.
我需要编写一个本机应用程序,它可以从[应用程序的用户ID和运行应用程序实例的pid]中派生应用程序包名称和签名.
我浏览了android应用程序框架,发现PackageManger有能力获取包签名."..getPackageManager().getPackageInfo(packageName,GET_SIGNATURES).."
但是,这显示了在Java应用程序中从包名称获取签名的可能性.正如我所说,我们的输入参数只是应用程序的用户ID /运行实例进程ID.而且我还需要本机客户端而不是java应用程序.
我的问题可以分为以下几点.
有没有办法从本地程序中运行应用程序的uid和pid获取包名?如果无法使用本机客户端,也欢迎使用Java方法.
有没有办法从包名中获取签名?正如我所说,我已经找到了它的java解决方案.
本机客户端是否可以使用Binder服务?这种方法会帮助我解决问题吗?如果是这样,怎么样?
提前致谢!
A1:我假设可以扫描应用程序目录中的包名称,然后尝试匹配本机代码中的关联用户ID.在Java中,您可以使用getPackageForUid().
A2:没有看到任何本地人这样做..apk实际上,在非root用户手机上无法访问任意文件.
A3: "可能不是"和"可能不是"而且:我不知道怎么做.绑定到远程服务不提供服务的身份验证信息; 即使它确实如此:如何在不访问签名内容的情况下验证签名,即.apk.
编辑:
该pm工具,提到这里,可能有帮助.
| 归档时间: |
|
| 查看次数: |
9434 次 |
| 最近记录: |