我想在getWindowManager()里面使用BroadcastReceiver,我得到这个错误:
"该方法getWindowManager()未定义类型MyReceiver"
我只需要得到display.getWidth()和display.getHeight()
任何提示?非常感谢.
我使用这个简单的代码在Android 4.1或更高版本中设置通知.它工作得很好,但我的问题是SmallIcon和LargeIcon.我知道SmallIcon显示在状态栏中,LargeIcon显示在下拉列表中.
NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setTicker("The ticker");
builder.setContentTitle("The title");
builder.setContentText("The text");
builder.setSmallIcon(R.drawable.my_small_icon);
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.my_96px_large_icon);
builder.setLargeIcon(bm);
NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
nm.notify("direct_tag", NOTIF_ALERTA_ID, builder.build());
Run Code Online (Sandbox Code Playgroud)
我的问题是:
启动通知后,"The Ticker"文本旁边会显示一个裁剪的超大小图标,而不是显示原始SmallIcon而不会过大.

在下拉列表中,我看到左边的LargeIcon,这很好.但是我也会在通知时间旁边看到右边的小图标.我不想表明这一点.

当我的应用程序更新或树脂安装时,我正在使用ACTION_MY_PACKAGE_REPLACED来接收.我的问题是从未触发事件(我尝试过Eclipse和真实设备).这就是我做的:
表现:
<receiver android:name=".MyEventReceiver" >
<intent-filter android:priority="1000" >
<action android:name="android.intent.action.ACTION_MY_PACKAGE_REPLACED" />
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)
码:
public class MyEventReceiver extends BroadcastReceiver
{
@Override public void onReceive(Context context, Intent intent)
{
if ("android.intent.action.ACTION_MY_PACKAGE_REPLACED".equals(intent.getAction()))
{ //Restart services
}
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码很简单,实际上我使用了其他事件,比如BOOT_COMPLETED和其他事件,它们可以工作但ACTION_MY_PACKAGE_REPLACED.谢谢.
我试图通过代码创建一个多行EditText.这是我使用的:
EditText txt = new EditText(this);
lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, 1.0f);
txt.setLayoutParams(lp);
txt.setSingleLine(false);
txt.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);
Run Code Online (Sandbox Code Playgroud)
但它仍然只有一条线.
我希望有人可以提供相关信息.我使用Admob显示插页式广告.他们中的一些人有音乐或声音,因此我的用户对此感到非常恼火.那么,有没有人知道是否有办法阻止音乐或声音广告?无论如何拒绝接听广告的扬声器?谢谢
你可以发布一个简单的代码来处理关闭事件.我需要清单和接收器.
我需要以下内容:我有一个在后台运行的服务,我想检测手机关闭,以使其处于静音模式,这样就不会播放可怕的操作员音乐.
重新启动手机后(我已经在启动接收器上),该服务将启用手机声音.
我正在尝试获取有关通知图标大小的信息,以便为我的应用创建它们,但我有点迷失.我已经阅读了一些基本上这样说的帖子:
For MDPI 24 px
For HDPI 36 px
For XHDPI 48 px
For XXHDPI 72 px
For XXXHDPI 96 px
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用Photoshop创建我的图标,但我不知道分辨率.谁能说出我必须使用的分辨率?
在这里你有一个Photoshop,创建新对话框:

我在最新版本(今天是2017年4月22日)更新了Android Studio并安装了Haxm,但Android模拟器完全没用.这非常慢.
我不知道为什么,前几天它跑得快而顺畅.然后我重新启动了我的电脑,它变得非常慢.这一定是出于某种原因.
请不要回答安装Genymotion.Genymotion不允许我在免费版本中模拟手机.
正如我所说,安装了intel haxm.
"处理系统未响应"消息始终显示.
更新2017年4月25日:我的Android Studio安装了一个新的更新(我无法指定更新的内容),现在模拟器突然快速运行(相同的AVD,我还没有创建新的)但是之前发生了同样的行为.我相信在几天/几周内,它会突然再次变得非常缓慢,这将是这种方式持续几天/周,之后另一次更新将再次顺利进行.几个月来,这种情况一直在发生.发生这种情况时我会在这里发帖.
更新2017年4月30日:我的Android Studio安装了一个新的更新(谷歌存储库),现在模拟器突然变得非常慢(相同的AVD,我没有创建新的).我相信在几天/几周内它会突然再次快速运行.
我发现在我的Android Studio项目中.有所谓的文件fileSnapshots.bin是90%,整个项目的大小.
这非常烦人,因为我喜欢经常复制我的项目.最后,我的硬盘驱动器占用了很多空间.
有谁知道为什么这个文件需要这么多?我可以从我的副本中删除它而不用担心吗?该文件位于该目录下myproyect/.gradle/2.4/taskArtifacts.
谢谢!
我使用SharedPreferences来编写并稍后在我的应用程序中的不同活动中读取值.它曾经工作正常,但最近它似乎没有被混合.我的意思是,我写了一个值但是其他活动仍然读取旧值.有时它会正常工作.任何的想法?
编辑:这是一个示例代码:
首先,从一个线程:
SharedPreferences prefs = getSharedPreferences("MyPrefs", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putInt("ComandToDo", value);
editor.commit();
... some code later:
alarmmanager.set(AlarmManager.RTC_WAKEUP, Miliseconds, sender);
Run Code Online (Sandbox Code Playgroud)
在报警接收器中:
SharedPreferences prefs = contexto.getSharedPreferences("MyPrefs", Context.MODE_PRIVATE);
int value = prefs.getInt("ComandToDo", -1);
Run Code Online (Sandbox Code Playgroud)
这就是问题所在,因为"value"不是线程中写的值.