Java Qt Android通知,无法设置图像
我正在使用Java库在Qt中制作一个Android testapp,用于通知。按照Qt通知程序示例,我正在尝试为初学者重新创建相同的通知,但由于某些原因,此行不起作用:Java Qt Android通知,无法设置图像,java,android,c++,qt,Java,Android,C++,Qt,我正在使用Java库在Qt中制作一个Android testapp,用于通知。按照Qt通知程序示例,我正在尝试为初学者重新创建相同的通知,但由于某些原因,此行不起作用: m_builder.setSmallIcon(R.drawable.icon); 它说: java:77: error: error: package R does not exist 我尝试补充: import java.lang.Object; import android.R.drawable; 我也尝试过: m_b
m_builder.setSmallIcon(R.drawable.icon);
它说:
java:77: error: error: package R does not exist
我尝试补充:
import java.lang.Object;
import android.R.drawable;
我也尝试过:
m_builder.setSmallIcon(android.R.drawable.icon);
但这给了我一个错误:
java:77: error: error: cannot find symbol
所以我已经检查了Qt通知程序,我认为我没有犯任何错误,但由于某些原因,它无法工作
我的问题是:如何正确设置此图标?
以下是完整的代码:
package org.qtproject.qt5.example;
import android.app.Notification;
import android.app.NotificationManager;
import android.content.Context;
import java.lang.Object;
import java.lang.Throwable;
import java.io.Writer;
import java.io.StringWriter;
import java.io.PrintWriter;
import android.R.drawable;
public class NotificationClient extends org.qtproject.qt5.android.bindings.QtActivity
{
private static NotificationManager m_notificationManager;
private static Notification.Builder m_builder;
private static NotificationClient m_instance;
public NotificationClient()
{
try {
m_instance = this;
} catch(Throwable t) {
t.printStackTrace();
}
}
public static void notify(String s)
{
try {
if (m_notificationManager == null) {
m_notificationManager = (NotificationManager)m_instance.getSystemService(Context.NOTIFICATION_SERVICE);
m_builder = new Notification.Builder(m_instance);
m_builder.setContentTitle("A message from Qt!");
//m_builder.setSmallIcon(android.R.drawable.icon);
}
m_builder.setContentText(s);
m_notificationManager.notify(1, m_builder.build());
} catch(Throwable e) {
e.printStackTrace();
}
}
}
我的问题是由于AndroidManifest.xml中的配置错误
正确编辑AndroidManifest并清理和重建项目后,问题得到解决。要修复此错误,请确保java类中的包名和AndroidManifest.xml相同 NotificationClient.java:
package com.mypackage;
...
AndroidManifest.xml:
<manifest package="com.mypackage"...
...
我也面临同样的问题。你能分享一下你在“AndroidManifest.xml文件”中编辑了什么吗?@Gojir4哦,那是很久以前的事了,明天我会看看能不能找到那个项目,现在是我睡觉的时间hehe@Gojir4您是否正确检查了包名?这就是我的问题所在。检查下面的答案。嗨,我也有同样的问题。修复包名后,需要完全删除生成输出并重新生成,这一点很重要。干净运行并不能解决问题。