小编Ale*_*sky的帖子

Android:在服务中使用网络

在我的Android应用程序的Service类中调用REST WebService会创建NetworkOnMainThreadException.

我理解为什么在Activity中引发这个异常:同步通过网络获取内容是一种非常糟糕的做法,但我很惊讶在服务类中看到同样的错误.所以我的问题是:

- 在这种特殊情况下,我应该使用StrictMode.setThreadPolicy()这个来电.(对于那些因为在活动中遇到此错误而读取此内容的人,请不要使用StrictMode来隐藏此错误,请使用AsyncTask)

- 或者我应该使用AsyncTask?在那种情况下,这里的问题是什么?线程上的服务不是与Activity分开的吗?

service networking android

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

带有进度指示器和动画的Android RecyclerView

在Material Design指南中,有一种模式可以一次加载和显示所有内容.

链接

如何使用RecyclerView实现它?

android android-animation material-design android-recyclerview

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

java.security.UnrecoverableKeyException:不匹配

问题:需要在加密位置保存RSA私钥.尝试KeyStore用于此目的.

代码段:

package com.example.encryptiontest;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.math.BigInteger;
import java.security.InvalidKeyException;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SignatureException;
import java.security.UnrecoverableEntryException;
import java.security.cert.Certificate;
import java.security.cert.CertificateEncodingException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.security.spec.InvalidKeySpecException;
import java.security.spec.RSAPrivateKeySpec;
import java.security.spec.RSAPublicKeySpec;
import java.util.Date;

import javax.security.auth.x500.X500Principal;

import org.bouncycastle.x509.X509V1CertificateGenerator;

import android.content.Context;
import android.util.Base64;

public class Encryption {
    private static final String ALIAS = …
Run Code Online (Sandbox Code Playgroud)

java encryption android

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

android:shrinkColumns和android:stretchColumns如何工作?

我可以设置android:shrinkColumnsandroid:stretchColumnsTableLayout.

例如:

<TableLayout
    android:shrinkColumns="2,3"
    android:stretchColumns="1,3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>
Run Code Online (Sandbox Code Playgroud)

那么这个属性如何影响列?

android stretch shrink android-tablelayout

6
推荐指数
2
解决办法
9914
查看次数

javax.net.ssl.SSLException:写入错误:ssl = 0x7f70604080:系统调用期间的I/O错误,管道损坏

我使用改造将图像上传到服务器,但有一个奇怪的问题

api方法声明:

@POST("/uploadImage")
@Multipart
Result<UploadImageResponse> uploadImage(@Part("image") TypedByteArray image);
Run Code Online (Sandbox Code Playgroud)

rest adapter用户自定义客户端:

OkClient client = new OkClient(getUnsafeOkHttpClient());
Run Code Online (Sandbox Code Playgroud)

哪里

private OkHttpClient getUnsafeOkHttpClient() {

    try {
        // Create a trust manager that does not validate certificate chains
        final TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {
            @Override
            public void checkClientTrusted(
                    java.security.cert.X509Certificate[] chain,
                    String authType) throws CertificateException {
            }

            @Override
            public void checkServerTrusted(
                    java.security.cert.X509Certificate[] chain,
                    String authType) throws CertificateException {
            }

            @Override
            public java.security.cert.X509Certificate[] getAcceptedIssuers() {
                return null;
            }
        }};

        // Install the all-trusting trust manager …
Run Code Online (Sandbox Code Playgroud)

ssl android retrofit

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

使用ImageView自定义绘图

我已经有一个带有以下参数的'ImageView':

android:layout_width="wrap_content"
android:layout_height="wrap_content"
Run Code Online (Sandbox Code Playgroud)

并设置自定义Drawable:

public class HexDrawable extends Drawable {

    private Path hexagonPath;
    private float mWidth, mHeight;
    private int mBackgroundColor;
    private int mStrokeColor;
    private int mStrokeWidth;

    public HexDrawable(){
        init();
    }

    public void setBackgroundColor(int color) {
        mBackgroundColor = color;
    }

    public void setStrokeWidth(int width) {
        mStrokeWidth = width;
    }

    public void setStrokeColor(int color) {
        mStrokeColor = color;
    }

    @Override
    public int getIntrinsicHeight() {
        return 60;
    }

    @Override
    public int getIntrinsicWidth() {
        return 60;
    }

    private void init() {
        hexagonPath …
Run Code Online (Sandbox Code Playgroud)

android image android-imageview android-drawable

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

如何从泛型方法param获取java类?

我尝试使用下一个方法:

fun <T> put(value: T){
    val clazz = T::class.java
}
Run Code Online (Sandbox Code Playgroud)

但有例外 Kotlin: Only classes are allowed on the left hand side of a class literal

如何从泛型参数获取类?

除了类之外还有哪些其他选项可以作为参数传递?

generics kotlin

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

RSA公钥是唯一的吗?

我们在服务器上使用 RSA 2048 公钥作为用户标识符,但现在我对该标识符的唯一性有疑问。我可以使用 RSA 公钥作为服务器上的唯一用户标识符吗?或者 RSA 不能保证这一点?

rsa

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

如何在Kotlin中列出字段注释?

我有一个注释

public @interface Field {
    String value();
}
Run Code Online (Sandbox Code Playgroud)

和java类,由它注释:

public class Animal {
    @Field("name")
    private String name;
}
Run Code Online (Sandbox Code Playgroud)

我尝试通过下一个代码列出所有字段'注释:

for(field in clazz.declaredFields){
            for(annotation in field.annotations){
                when(annotation){
                     is Field -> {
                         //do something
                     }
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

clazz是哪里 Class<T>

但是field.annotations空的.

如何正确列出注释?

annotations kotlin

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

如何向 teamcity Agent 安装附加软件?

我通过 docker 镜像安装了 teamcity 代理

如何通过brew向该代理添加一些软件?

teamcity

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