当前位置: 编程技术>移动开发
本页文章导读:
▪关于getInstalledPackages的参数的有关问题 关于getInstalledPackages的参数的问题
我遇到的问题:
G9真机上测试,在onCreate的最后添加getPackageManager().getInstalledPackages(0)可以正确得到已安装程序,而getPackageManager().getInstalledPackages(PackageManag.........
▪ 替Samsung Galaxy Tab定制UI 为Samsung Galaxy Tab定制UI
三星最近发布了一款7寸手机(那么大,怎么用啊,哎)虽说Android程序会自动适应屏幕大小,但是那么大的屏幕,如果显示的内容和3寸的手机屏幕一样,未免有些浪.........
▪ Wifi定位的原理是什么 Wifi定位的原理是什么?
与手机基站定位方式类似,都需要采集wifi接入点的位置信息。最早开发这个技术的是Skyhook公司。这个技术的原理是利用下面三条事实:wifi热点(也就是AP,或者无.........
[1]关于getInstalledPackages的参数的有关问题
来源: 互联网 发布时间: 2014-02-18
关于getInstalledPackages的参数的问题
我遇到的问题:
G9真机上测试,在onCreate的最后添加getPackageManager().getInstalledPackages(0)可以正确得到已安装程序,而getPackageManager().getInstalledPackages(PackageManager.GET_ACTIVITIES)却会报错如下:
01-06 11:56:55.028: ERROR/JavaBinder(29183): !!! FAILED BINDER TRANSACTION !!!
这是什么原因呢?
获取系统内Applications的基本信息可以使用以下这个方法。
getPackageManager().getInstalledPackages(0)
但是这个参数里面的0是什么意思呢?
得到activities应该是使用这个参数PackageManager.GET_ACTIVITIES吧?
而且PackageManager.GET_ACTIVITIES= 0x00000001的哇,而上面为什么用0喃?
答:
里面的flag参数,只是一个过滤标志,0 是过滤permission,根据自己的需求设置flag,都是合理的。
这些flag没有仔细研究过
我在我的手机上测试 PackageManager.GET_ACTIVITIES 和 0 的结果一样都是 一样的,看看系统的那个appmanager,他不是这么获得安装的apk的,用的是getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES)
因为有些apk可能被删掉 但是数据还在 所以用GET_UNINSTALLED_PACKAGES 这个flag
[2] 替Samsung Galaxy Tab定制UI
来源: 互联网 发布时间: 2014-02-18
为Samsung Galaxy Tab定制UI
三星最近发布了一款7寸手机(那么大,怎么用啊,哎)
虽说Android程序会自动适应屏幕大小,但是那么大的屏幕,如果显示的内容和3寸的手机屏幕一样,未免有些浪费了,毕竟眼球注视的地方都是商机啊。
所以决定为Galaxy定制一套UI,但是res文件放在哪里成为了首先要解决的问题。
调查发现"layout-large-hdpi"中的UI可以被galaxy调用,而不会影响N1和Droid等其他hdpi手机。
Samsung Galaxy Tab的参数如下
屏幕分辨率 - 600 * 1024
DPI - 240
SDK版本 - 2.2改(应该是三星定制系统吧,据说有特殊效果)
最近又发现,为galaxy创建的layout无法撑满整个屏幕,会留下左右2块黑色区域,这时只要在AndroidMenifest.xml里添加
就可以解决这个问题了
三星最近发布了一款7寸手机(那么大,怎么用啊,哎)
虽说Android程序会自动适应屏幕大小,但是那么大的屏幕,如果显示的内容和3寸的手机屏幕一样,未免有些浪费了,毕竟眼球注视的地方都是商机啊。
所以决定为Galaxy定制一套UI,但是res文件放在哪里成为了首先要解决的问题。
调查发现"layout-large-hdpi"中的UI可以被galaxy调用,而不会影响N1和Droid等其他hdpi手机。
Samsung Galaxy Tab的参数如下
屏幕分辨率 - 600 * 1024
DPI - 240
SDK版本 - 2.2改(应该是三星定制系统吧,据说有特殊效果)
最近又发现,为galaxy创建的layout无法撑满整个屏幕,会留下左右2块黑色区域,这时只要在AndroidMenifest.xml里添加
<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:anyDensity="true" />
就可以解决这个问题了
[3] Wifi定位的原理是什么
来源: 互联网 发布时间: 2014-02-18
Wifi定位的原理是什么?
与手机基站定位方式类似,都需要采集wifi接入点的位置信息。
最早开发这个技术的是Skyhook公司。
这个技术的原理是利用下面三条事实:
wifi热点(也就是AP,或者无线路由器)越来越多,在城市中更趋向于空间任何一点都能接收到至少一个AP的信号。(在美国,每个点收到3、5个AP信号的情况相当多见。中国也会越来越多的)
热点只要通电,不管它怎么加密的,都一定会向周围发射信号。信号中包含此热点的唯一全球ID。即使距离此热点比较远,无法建立连接,但还是可以侦听到它的存在。
热点一般都是很少变位置的,比较固定。
这样,定位端只要侦听一下附近都有哪些热点,检测一下每个热点的信号强弱,然后把这些信息发送给Skyhook的服务器。服务器根据这些信息,查询每个热点在数据库里记录的坐标,进行运算,就能知道客户端的具体位置了,再把坐标告诉客户端。可以想想,只要收到的AP信号越多,定位就会越准。原理就是这么简单。
不过,一次成功的定位需要两个先决条件:
客户端能上网
侦听到的热点的坐标在Skyhook的数据库里有
第一条不消说了,不管是wifi还是edge,只要能连上Skyhook的服务器就行。
第二条是Skyhook的金矿所在。它怎么知道每个AP的坐标信息的呢?有一种说法是靠网友自己搜集,然后发给Skyhook,Skyhook会付钱。不过官方网站上的说法是开着车满大街转悠,边走边采集AP信号,并用GPS定位,从而就有了坐标信息。而且他们会定期重新开车采集数据,以适应热点的变化。第二条更靠谱,而且成本并不高。比方说采集北京,设备上一个带GPS和wifi的PDA足以,然后装到出租车上,每月给司机200、300的,让他就正常拉客人。只要有3、5个司机合作,数据就采集下来了,并不断地更新。司机也一定会很乐呵,这纯粹是无成本的额外收入呀,还能享受一下GPS。
与手机基站定位方式类似,都需要采集wifi接入点的位置信息。
最早开发这个技术的是Skyhook公司。
这个技术的原理是利用下面三条事实:
wifi热点(也就是AP,或者无线路由器)越来越多,在城市中更趋向于空间任何一点都能接收到至少一个AP的信号。(在美国,每个点收到3、5个AP信号的情况相当多见。中国也会越来越多的)
热点只要通电,不管它怎么加密的,都一定会向周围发射信号。信号中包含此热点的唯一全球ID。即使距离此热点比较远,无法建立连接,但还是可以侦听到它的存在。
热点一般都是很少变位置的,比较固定。
这样,定位端只要侦听一下附近都有哪些热点,检测一下每个热点的信号强弱,然后把这些信息发送给Skyhook的服务器。服务器根据这些信息,查询每个热点在数据库里记录的坐标,进行运算,就能知道客户端的具体位置了,再把坐标告诉客户端。可以想想,只要收到的AP信号越多,定位就会越准。原理就是这么简单。
不过,一次成功的定位需要两个先决条件:
客户端能上网
侦听到的热点的坐标在Skyhook的数据库里有
第一条不消说了,不管是wifi还是edge,只要能连上Skyhook的服务器就行。
第二条是Skyhook的金矿所在。它怎么知道每个AP的坐标信息的呢?有一种说法是靠网友自己搜集,然后发给Skyhook,Skyhook会付钱。不过官方网站上的说法是开着车满大街转悠,边走边采集AP信号,并用GPS定位,从而就有了坐标信息。而且他们会定期重新开车采集数据,以适应热点的变化。第二条更靠谱,而且成本并不高。比方说采集北京,设备上一个带GPS和wifi的PDA足以,然后装到出租车上,每月给司机200、300的,让他就正常拉客人。只要有3、5个司机合作,数据就采集下来了,并不断地更新。司机也一定会很乐呵,这纯粹是无成本的额外收入呀,还能享受一下GPS。
最新技术文章: