小编elc*_*lie的帖子

使用Delphi XE 10.3 Rio在Android上的推送通知中更改小图标

我在Android设备上的推送通知中的小图标有问题。图标显示黑色。

我已按照本文中pudnivec74指示的步骤操作,如何使用DELPHI在Android设备上的通知中更改小图标图像,它可以工作,但仅在应用程序运行时,当应用程序关闭时,图标静止图像仍显示为黑色。

我还在文件AndroidManifest.template.xml中添加了以下几行:

<meta-data android: name = "com.google.firebase.messaging.default_notification_icon" android: resource = "@ drawable / ic_notification" />

并保持不变。

有人知道解决方案吗?

这是我使用的代码:

    procedure TFrmMain.FormCreate(Sender: TObject);
    begin
       try
        {$IF DEFINED(ANDROID)}
        APushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.GCM);
        APushService.AppProps[TPushService.TAppPropNames.GCMAppID] :=UResource.NUMEROPROYECTOANDROID;
        {$ELSE}
        APushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.APS);
        {$ENDIF}

        AServiceConnection := TPushServiceConnection.Create(APushService);
        AServiceConnection.Active := True;

        {$IF DEFINED(ANDROID)}
          AServiceConnection.OnReceiveNotification := OnReceiveNotificationPushAndroid;
        {$ELSE}
          AServiceConnection.OnReceiveNotification := OnReceiveNotificationPushiOS;
        {$ENDIF}

        VKAutoShowMode := TVKAutoShowMode.Always;
      except on E: Exception do
      end;
     end;


     procedure TFrmMain.OnReceiveNotificationPushAndroid(Sender: TObject;
      const ANotification: TPushServiceNotification);
    var
      {$IFDEF ANDROID}
      Ntf: JNotification;
      ntfBuilder: JNotificationCompat_Builder;
      ntfManager: JNotificationManager;
      {$ENDIF} …
Run Code Online (Sandbox Code Playgroud)

delphi android push-notification firemonkey

6
推荐指数
0
解决办法
205
查看次数

我可以更改TListBox所选项目的颜色吗?

我正在创建一个多设备FireMonkey应用程序,我想在选择TListBox项目时更改它的颜色.
如何在Rad Studio XE7中完成?

delphi firemonkey tlistbox

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

我该怎么办?

我想在delphi中尝试这样做,当你按下按钮时,我会显示一个下拉面板,其中包含以下选项:

可拆卸的面板

有谁知道如何使用VCL产生这种效果?现在我有一个带有2个面板的表格,主要是总是显示并有一个侧面按钮,当我按下按钮时,侧面板显示,但我想产生效果.谢谢

forms delphi vcl panel effect

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

使用 zlib 压缩 Base64 字符串

我需要通过 TCP 协议从 Windows 向移动设备、iOS 和 Android 发送一个大的 Base64 字符串。
我发送和接收没有问题,但是字符串大小太大,大约 24000 个字符,我正在寻找压缩和解压缩这些字符串的方法。
看起来,最好的方法是使用 Zlib,我发现这些链接Delphi XE 和 ZLib Problems (II)其中解释了如何做到这一点。
这些函数适用于普通文本字符串,但压缩 Base64 字符串会使它们变得更大。
我要发送的一个非常小的字符串的示例如下:



我需要帮助。
我使用的功能是这样的:

uses
  SysUtils, Classes, ZLib, EncdDecd;

function CompressAndEncodeString(const Str: string): string;
var
  Utf8Stream: TStringStream;
  Compressed: TMemoryStream;
  Base64Stream: TStringStream;
begin
  Utf8Stream := TStringStream.Create(Str, TEncoding.UTF8);
  try
    Compressed := TMemoryStream.Create;
    try
      ZCompressStream(Utf8Stream, Compressed);
      Compressed.Position := 0;
      Base64Stream := TStringStream.Create('', TEncoding.ASCII);
      try
        EncodeStream(Compressed, Base64Stream);
        Result := Base64Stream.DataString;
      finally
        Base64Stream.Free;
      end;
    finally
      Compressed.Free;
    end;
  finally
    Utf8Stream.Free;
  end;
end; …
Run Code Online (Sandbox Code Playgroud)

delphi base64 zlib delphi-10.1-berlin

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

在 Delphi XE10.1 中使用/解析 curl

我有这个 curl 序列,它在 MS Windows 中工作,我试图在 Delphi XE 10.1 Berlin 中使用与 Indy 的等效项。

卷曲代码是这样的:

curl -k "https://fakeweb.com/options" --data-binary "{\"name\":\"Name of the Client\",\"email\":\"fake@gmail.com\"}"
Run Code Online (Sandbox Code Playgroud)

我已经尝试了以下代码,但它不起作用

procedure TForm2.Button4Click(Sender: TObject);
const
  COMI = Char(34);
var
  data: string;
  DataToSend : TStringStream;
  IdHTTP: TIdHTTP;
  Answer: string;
begin
  try
    data := '{\' + COMI  + 'name\' + COMI  + ':\' + COMI  + 'Name of the Client\' + COMI  +
          ',\' + COMI  + 'email\' + COMI  + ':\' + COMI   + 'fake@gmail.com\' + COMI  + '}' …
Run Code Online (Sandbox Code Playgroud)

delphi rest curl indy10 delphi-10.1-berlin

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

是否可以使用delphi读取android上其他应用程序的通知?

我正在尝试从 Rad Studio XE7 for android 中制作的应用程序上读取来自其他应用程序的通知。抬头一看,发现在java中可以访问NotificationListenerService,但是如果用delphi可以访问这个服务就不行了。可以做到吗?

delphi notifications android firemonkey

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