背景:
一步步摸索着开发走来,本着能走通就继续往前走的原则,将dlna项目做到了现在,做到了出产品。
可是一直有一个问题困扰着我,为什么我们的程序不能覆盖安装?其他的android应用程序,无论带不带动态库,都可以实现覆盖安装,不用很麻烦地一步步进行手动清除数据/手动卸载/然后才能安装的问题。否则,如果直接安装,可能会导致so包更新失败的问题,会继续使用旧的so包。更搞笑的是,即便把某个so包删除,程序也不会报错,即便用到了该so包中的某个库函数,仍会继续运行下去。这个问题无法容忍。
过程:
在网上搜索android上需要手动清除数据/手动卸载的原因及解决方法,发现根本找不到这方面的资料。
反思:
在一个开源平台上,别人都不会碰到同样的问题吗?只能说明一个问题,这个问题,要么太深奥,要么太简单。我想到了自从一开始就一直萦绕在我心头的一个初始化函数的实现: