小编alm*_*oft的帖子

SharedPreferences有时会被删除

我的应用程序使用SharedPreferences(在PreferenceActivity的帮助下)存储所有设置.但有时会删除所有设置,并将所有值设置回默认值.主要在Android 3.x标签上.在普通的智能手机上没有问题.

我发现,当应用程序进程被Android杀死时,所有设置都会被删除.我注意到了这一点,因为不再显示通知图标.我也想知道为什么这个过程会在平板电脑而不是智能手机上被杀死.在我的智能手机上,通知图标永远不会消失.

我的应用程序还有一个服务,主要进程和服务都对SharedPreferences进行读写设置.我有时会注意到,一旦服务写入SharedPreferences,所有设置都会被清除.但它并不是每次都会发生.

有任何想法吗?我意识到SharedPreferences不应该被不同的进程使用,但它适用于所有智能手机而没有问题!

service android sharedpreferences

20
推荐指数
2
解决办法
7575
查看次数

uid ...没有android.permission.UPDATE_APP_OPS_STATS

从Android 4.3开始,我收到以下stacktraces:

[STACKTRACE] => java.lang.SecurityException: uid 10140 does not have android.permission.UPDATE_APP_OPS_STATS.
    at android.os.Parcel.readException(Parcel.java:1431)
    ...
Run Code Online (Sandbox Code Playgroud)

在以下行抛出异常:

notificationManager.notify(0, notification.build());
Run Code Online (Sandbox Code Playgroud)

我尝试了Android 4.3的新的resticted用户功能,在这个用户下推出了我的应用程序,显示了通知,没有任何问题.

有任何想法吗?

security notifications android

8
推荐指数
1
解决办法
8309
查看次数

应用更新后小部件消失了

更新我的应用程序后,有时所有旧的小部件都会从主屏幕消失.在app启动器/小部件选择器中,我的三个小部件出现两次 - 直到重启!

有什么建议?

android widget

8
推荐指数
1
解决办法
1万
查看次数

以Intent.ACTION_CALL拨号在电话号码中#处停止

我尝试拨打电话号码03012345,1234,#31#,98765(使用FRITZ!Box拨通)

“ 03012345”是FRITZ!Box的电话号码,“,”是拨号暂停,“#31#”是向被叫方显示我自己的电话号码的前缀,而“ 98765”是被叫方的电话号码。

String phonenumber = "03012345,1234,#31#,98765";
startActivity(new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + phonenumber)));
Run Code Online (Sandbox Code Playgroud)

在我的智能手机上,一切正常,但是一些用户向我报告说,他们的智能手机在第一个#号后停止拨号。但是,当他们从联系人拨号时,它可以工作。

也许,Uri.parse拆分电话号码?还是有另一种方式拨打这样的电话号码?

android

3
推荐指数
1
解决办法
3197
查看次数

在某些设备上绘制模糊

这种刷新可绘制在某些设备上模糊,例如Galaxy Tab 10.1N(Android 3.2).我的Nexus 7(Android 4.4)没问题.

在此输入图像描述在此输入图像描述

<ImageButton
    android:id="@+id/buttonrefresh"
    android:layout_width="52dip"
    android:layout_height="fill_parent"
    android:layout_alignParentRight="true"
    android:adjustViewBounds="true"
    android:scaleType="fitCenter"
    android:background="@drawable/widget_button_background"
    android:padding="2dip"
    android:src="@drawable/ic_action_refresh"/>
Run Code Online (Sandbox Code Playgroud)

ic_action_refresh位于res/drawable_xxhdpi,大小为96x96像素.可能是什么原因?

android image drawable

3
推荐指数
1
解决办法
587
查看次数

Android快捷方式位图启动器图标大小

我有问题找到我的快捷方式的正确的启动器图标大小.

在我的Nexus 7.2上,android.R.dimen.app_icon_size(参见代码)的值为96像素.但是,如果我在主屏幕的屏幕截图上测量其他应用的真实图标大小,则为120像素.创建一个shortshut后,它比所有其他应用程序图标(120px)更小(96像素)

在我的三星Galaxy SII android.R.dimen.app_icon_size是72.这匹配我的截图测量.

这里的结果

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
Run Code Online (Sandbox Code Playgroud)

Nexus 7.2:

android.R.dimen.app_icon_size = 96
metrics.dip = 192
metrics.density = 2.0
metrics.densityDpi = 320
metrics.heightPixels = 1824
metrics.scaledDensity = 2.0
metrics.widthPixels = 1200
metrics.xdpi = 320.842
metrics.ydpi = 322.966
Run Code Online (Sandbox Code Playgroud)

三星SII:

android.R.dimen.app_icon_size = 72
metrics.dip = 108
metrics.density = 1.5
metrics.densityDpi = 240
metrics.heightPixels = 800
metrics.scaledDensity = 1.5
metrics.widthPixels = 480
metrics.xdpi = 217.71428
metrics.ydpi = 218.49463
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

// Calculate launcher icon size
int size = (int) …
Run Code Online (Sandbox Code Playgroud)

icons android bitmap shortcut launcher

2
推荐指数
1
解决办法
2692
查看次数