小编Ton*_*Ton的帖子

在BroadcastReceiver中使用getWindowManager()

我想在getWindowManager()里面使用BroadcastReceiver,我得到这个错误:

"该方法getWindowManager()未定义类型MyReceiver"

我只需要得到display.getWidth()display.getHeight()

任何提示?非常感谢.

android broadcastreceiver

43
推荐指数
2
解决办法
5万
查看次数

NotificationCompat 4.1 SetSmallIcon和SetLargeIcon

我使用这个简单的代码在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)

我的问题是:

  1. 启动通知后,"The Ticker"文本旁边会显示一个裁剪的超大小图标,而不是显示原始SmallIcon而不会过大. 在此输入图像描述

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

notifications icons android

36
推荐指数
3
解决办法
6万
查看次数

未收到ACTION_MY_PACKAGE_REPLACED

当我的应用程序更新或树脂安装时,我正在使用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.谢谢.

android broadcastreceiver

27
推荐指数
4
解决办法
3万
查看次数

以编程方式创建多行EditText

我试图通过代码创建一个多行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)

但它仍然只有一条线.

android multiline android-edittext

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

Admob interstitial with audio

我希望有人可以提供相关信息.我使用Admob显示插页式广告.他们中的一些人有音乐或声音,因此我的用户对此感到非常恼火.那么,有没有人知道是否有办法阻止音乐或声音广告?无论如何拒绝接听广告的扬声器?谢谢

android admob

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

在android中处理手机关机事件

你可以发布一个简单的代码来处理关闭事件.我需要清单和接收器.

我需要以下内容:我有一个在后台运行的服务,我想检测手机关闭,以使其处于静音模式,这样就不会播放可怕的操作员音乐.

重新启动手机后(我已经在启动接收器上),该服务将启用手机声音.

events android shutdown

17
推荐指数
2
解决办法
2万
查看次数

Android中的通知图标大小

我正在尝试获取有关通知图标大小的信息,以便为我的应用创建它们,但我有点迷失.我已经阅读了一些基本上这样说的帖子:

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,创建新对话框:

在此输入图像描述

notifications icons android

14
推荐指数
2
解决办法
3万
查看次数

Android Studio模拟器速度极慢

我在最新版本(今天是2017年4月22日)更新了Android Studio并安装了Haxm,但Android模拟器完全没用.这非常慢.

我不知道为什么,前几天它跑得快而顺畅.然后我重新启动了我的电脑,它变得非常慢.这一定是出于某种原因.

请不要回答安装Genymotion.Genymotion不允许我在免费版本中模拟手机.

正如我所说,安装了intel haxm.

"处理系统未响应"消息始终显示.


更新2017年4月25日:我的Android Studio安装了一个新的更新(我无法指定更新的内容),现在模拟器突然快速运行(相同的AVD,我还没有创建新的)但是之前发生了同样的行为.我相信在几天/几周内,它会突然再次变得非常缓慢,这将是这种方式持续几天/周,之后另一次更新将再次顺利进行.几个月来,这种情况一直在发生.发生这种情况时我会在这里发帖.


更新2017年4月30日:我的Android Studio安装了一个新的更新(谷歌存储库),现在模拟器突然变得非常慢(相同的AVD,我没有创建新的).我相信在几天/几周内它会突然再次快速运行.

android android-emulator

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

Android Studio中的fileSnapshots.bin文件

我发现在我的Android Studio项目中.有所谓的文件fileSnapshots.bin90%,整个项目的大小.

这非常烦人,因为我喜欢经常复制我的项目.最后,我的硬盘驱动器占用了很多空间.

有谁知道为什么这个文件需要这么多?我可以从我的副本中删除它而不用担心吗?该文件位于该目录下myproyect/.gradle/2.4/taskArtifacts.

谢谢!

android android-studio

10
推荐指数
0
解决办法
972
查看次数

SharedPreferences读取旧值

我使用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"不是线程中写的值.

android sharedpreferences

9
推荐指数
2
解决办法
3274
查看次数