小编ozi*_*jnr的帖子

Google Kubernetes Engine:为服务类型启用HTTPS

我在GKE上有一个应用程序,我希望仅通过HTTPS提供,因此我获得了一个签名证书以使用TLS保护应用程序.

我已经查看了很多有关如何执行此操作的教程,但它们都是指使用Ingress并使用LetsEncrypt和KubeLego自动请求证书.但我希望继续使用外部负载平衡器(谷歌为我提供的计算引擎实例),但我只想通过https访问我的应用程序.

如何应用我的server.crt和server.key文件来启用https.Do我将它应用于负载均衡器或kubernetes集群.

google-cloud-platform kubernetes devops

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

为什么在AppCompat中删除了将内容描述添加到图像视图和图像按钮的警告,

在android中构建布局时,如果使用ImageViewImageButton而不添加内容描述,则会收到一条警告,告诉您将内容描述添加到具有的视图中,AppCompatImageView并且AppCompatImageButton该警告不再可用。我认为这是因为的实现AppCompatImageView 具有基于视图内容的默认内容描述,但是回话仍将其读取为“未标记的按钮”,为什么删除了警告?

android android-appcompat android-accessibility

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

Context.startForegroundService() 然后没有仅在 Android 11 三星设备上调用 Service.startForeground()

我仅在运行 android 11 的三星设备上遇到此崩溃。显然该应用程序正在调用startForegroundService(intent)并要求我发布通知,让用户知道我正在运行前台服务,但startForegroundService(intent)从未在应用程序源代码中进行过此调用,三星是否有可能自定义实现 android 11 并startForegroundService(intent)在我打电话时自动调用startService(intent)

堆栈跟踪

Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{4ab4323 u0 {app package name}/{library package name}.player.PlayerService}
android.app.ActivityThread$H.handleMessage (ActivityThread.java:2240)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loop (Looper.java:246)
android.app.ActivityThread.main (ActivityThread.java:8506)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:602)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1130)
Run Code Online (Sandbox Code Playgroud)

我使用context.startService(intent)服务启动服务,服务在应用程序的 OnResume 中启动,上下文是应用程序上下文。

这里也是在清单中声明服务的方式

 <service
            android:name=".player.PlayerService"
            android:exported="false"
            android:foregroundServiceType="mediaPlayback"
            android:stopWithTask="false">
            <intent-filter>
                <action android:name="android.intent.action.MEDIA_BUTTON" />
            </intent-filter>
  </service>
Run Code Online (Sandbox Code Playgroud)

更新:我找到了调用 的原因startForegroundService(Intent),我正在使用来自 android 的以下接收器来帮助处理诸如耳机按钮之类的操作控制设备,因此自从我将应用程序转换为 androidx 它开始使用新的MediaButtonReceiver

 <receiver android:name="androidx.media.session.MediaButtonReceiver">
            <intent-filter>
                <action android:name="android.intent.action.MEDIA_BUTTON" />
            </intent-filter>
 </receiver>
Run Code Online (Sandbox Code Playgroud)

这是Receiver收到事件时执行的代码

@Override
    public …
Run Code Online (Sandbox Code Playgroud)

android android-service samsung-mobile android-11

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

在Serializable类中,Enum不在Api Explorer中设置

我有以下Enum类

public enum EventAccess {
            PUBLIC("PUBLIC"),
            EMPLOYEES_ONLY("EMPLOYEES_ONLY"),

String name;
private EventAccess(String name) {
    this.name = name;
}
public String getName() {
    return name;
   }
 }
Run Code Online (Sandbox Code Playgroud)

此外,我有一个Serializable类,其枚举作为其中一个字段

 public class EventAccessRequest implements Serializable{

private List<EventAccess> event_access = new ArrayList<>();

public EventAccessRequest() {

}

public List<EventAccess> getEvent_access() {
    return event_access;
}

public void setEvent_access(List<EventAccess> event_access) {
    this.event_access = event_access;
  }
}
Run Code Online (Sandbox Code Playgroud)

我有一个@Api方法,它创建了一个EventAccessRequest类型的对象.我在Api Explorer中设置了此请求的值,但它没有设置我放入的任何枚举字段.

@ApiMethod(name = "fetchEventByEventAccess", path = "user/events/list-by-access/", httpMethod = HttpMethod.GET)
    public RestfulResponse fetchEventByEventAccess(EventAccessRequest request)throws Exception
    {

            EventAccess x = request.getEvent_access().get(0);

            return …
Run Code Online (Sandbox Code Playgroud)

java google-app-engine enums serialization google-cloud-platform

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

Android:Sms Retrieval Api 未从 Intent 获取消息

我尝试在我的 Android 应用程序中实现新的短信检索 Api,但我无法正确读取消息,当收到消息时会调用我的服务,但我无法从意图的附加内容中获取消息内容。这是我的服务的示例代码:

/**
 * BroadcastReceiver to wait for SMS messages. This can be registered either
 * in the AndroidManifest or at runtime.  Should filter Intents on
 * SmsRetriever.SMS_RETRIEVED_ACTION.
 */
public class SmsVerificationReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    if (SmsRetriever.SMS_RETRIEVED_ACTION.equals(intent.getAction())) {
        Bundle extras = intent.getExtras();
        Status status = (Status) extras.get(SmsRetriever.EXTRA_STATUS);

        switch(status.getStatusCode()) {
            case CommonStatusCodes.SUCCESS:
                // Get SMS message contents
                String message = (String) extras.get(SmsRetriever.EXTRA_SMS_MESSAGE);
                Timber.d(message);
                Toast.makeText(context, "Message is: "+ message, Toast.LENGTH_LONG).show();
                // Extract …
Run Code Online (Sandbox Code Playgroud)

sms android android-intent android-service sms-retriever-api

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

c#,从Bitmap图像获取像素信息不会产生所需的结果

我想得到任何图像,将其转换为位图,将其大小调整为(1024,16)然后获取每个像素的RGB值.

这是我调整大小的功能

public Bitmap Resize(bitmap image1)
{
    Bitmap image2 = new Bitmap(16, 1024);
    Graphics gr = Graphics.FromImage(image2);
    gr.DrawImage(image1,0,0,image2.Height,image2.Width);
    return image2;
}
Run Code Online (Sandbox Code Playgroud)

然后这是我的函数,以获取每个像素的RGB值并将其写入文本文件

for (int y = 0; y < image2.Height; y++)
{
    for (int x = 0; x < image2.Width; x++)
    {         
        Color pixelcolor = image2.GetPixel(x,y);
        byte weR = pixelcolor.R;
        byte weG = pixelcolor.G;
        byte weB = pixelcolor.B;

        sR.WriteLine(weR.ToString());
        sR.WriteLine(weG.ToString());
        sR.WriteLine(weB.ToString());
        sR.WriteLine();
    }
}
Run Code Online (Sandbox Code Playgroud)

但问题是,在循环256次之后,RGB值变为0并且如果像素则不会再次变化.也就是说,它为图像提供正确的RGB值256次,然后一切都变为0.

任何颜色的任何图像都会发生这种情况.

请问我的代码有什么问题?

c# image bitmap visual-studio

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