android大道理(持续更新)

来源:互联网 发布:智能导游app 知乎 编辑:程序博客网 时间:2024/05/21 10:21

1.

SharedPreferences存储的数据是以XML的格式以文件的方式自动保存的,在DDMS中的File Explorer中展开到/data/data/<package name>/shared_prefs下,以上面这个为例,可以看到一个叫做SETTING_Infos.xml的文件。

2.

这是Android系统为开发者提供的用于标识手机设备的串号,也是各种方法中普适性较高的,可以说几乎所有的设备都可以返回这个串号,并且唯一性良好。然而也有的设备是找不到deviceId的,这就会导致一些问题,可以用以下方法验证:

这个DEVICE_ID可以同通过下面的方法获取:

   TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);    String DEVICE_ID = tm.getDeviceId(); 

     它会根据不同的手机设备返回IMEI,MEID或者ESN码,但在使用的过程中有以下问题:

  • 非手机设备:最开始搭载Android系统都手机设备,而现在也出现了非手机设备:如平板电脑、电子书、电视、音乐播放器等。这些设备没有通话的硬件功能,系统中也就没有TELEPHONY_SERVICE,自然也就无法通过上面的方法获得DEVICE_ID。
  • 权限问题:获取DEVICE_ID需要READ_PHONE_STATE权限,如果只是为了获取DEVICE_ID而没有用到其他的通话功能,申请这个权限一来大才小用,二来部分用户会怀疑软件的安全性。
  • 厂商定制系统中的Bug:少数手机设备上,由于该实现有漏洞,会返回垃圾,如:zeros或者asterisks
 3.

要从别的类里边往activity里边塞数据的话可以用接口回调,而要从activity里边往别的类里边塞数据的话有时候就不能用接口了,有的可以直接在此类中写一个方法,在activity里边得到此类的对象,然后传数据到此类中需要数据的地方。

2 0
原创粉丝点击