O código-fonte android da plataforma Gizwits não pode ser executado no android studio durante o desenvolvimento secundário

Solução: o código-fonte Android da plataforma Gizwits não pode ser executado no estúdio Android durante o desenvolvimento secundário

1. Fenômeno

Devido às necessidades de aprendizado, com base em quase zero conhecimento de desenvolvimento do Android, com a ajuda da plataforma em nuvem Gizwits para gerar o pacote de código de função necessário. No entanto, ao importar para o Android Studio (versão 3.6), ele não pode ser executado.O fenômeno é que o botão de execução fica cinza e não há nenhum item na caixa Editar configuração.

2. Modifique passo a passo

2.1 Quando você abre o arquivo pela primeira vez, ele está no estado de carregamento, conforme mostrado na figura a seguir: a
Insira a descrição da imagem aqui
sincronização está no estado de Download, não espere pelo acaso. . .

Razão: O acesso doméstico ao jcenter é muito lento ou mesmo incapaz de se conectar; ele relatará vários erros sobre a falha de atualização dependente. No passado, a oschina (ou seja, código aberto da China) fornecia o endereço espelho do jcenter, mas, infelizmente, por várias razões, o serviço foi descontinuado recentemente.

Solução: https://blog.csdn.net/ScarletMeCarzy/article/details/78471446
Dica: Após a conclusão da modificação, saia do AS e insira novamente.

A seguir está o meu código modificado:

Local do arquivo build.gradle(localizado na pasta AndroidStudio em vez da pasta do aplicativo)
Nota: No código: 3.6.0 do caminho de classe 'com.android.tools.build:gradle:3.6.0' é explicado no 2.2, que varia de máquina para máquina (o software muda automaticamente )

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.6.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

2.2 Problema de correspondência da versão Gradle (estou parado aqui há muito tempo) (o botão cinza fica operacional após a conclusão desta etapa)
Esta é uma etapa crítica. O site oficial a seguir pode encontrar a correspondência entre o plug-in gradle (tools.build) e o número da versão do gradle:
https://developer.android.google.cn/studio/releases/gradle-plugin#updating-plugin
Explique: outros lugares na Internet As soluções que encontrei foram todas baixadas manualmente, mas após o download, de acordo com o que eu disse on-line, ainda recebo o erro de sincronização:
falha ao aplicar o plug-in [id 'com.android.application'] A
solução final é: abra Arquivos - Estrutura do projeto e selecione a versão que deseja Download automático do computador (a imagem do Alibaba Cloud foi trocada na primeira etapa, para que a velocidade do download decole)

Abaixo está a minha correspondência (note que o caminho padrão NDK não está definido, você precisa criar a sua própria):
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
2.3 para fazer o acima de duas etapas, sincronização compilado com sucesso, então o telefone de conexão USB (o telefone é ligado modo de depuração USB) Clique Run, uma advertência
Insira a descrição da imagem aqui
nota: Este aviso não pode ser ignorado, caso contrário, o aplicativo móvel voltará a piscar.
Motivo: a API no arquivo de configuração expirou e a API expirada deve ser modificada.
Referência: https://blog.csdn.net/weixin_40845165/article/details/89213528
Referência: https://blog.csdn.net/weixin_44135826/article/details/105201233?fps=1&locationNum=2 O
seguinte é o meu código:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion '29.0.3'     //这里是我下载的工具版本,看自己android studio下载的什么版本,最后会讲在哪里看自己的buildTools版本
    useLibrary 'org.apache.http.legacy'
    defaultConfig {
        applicationId "com.gizwits.opensource.appkit"
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "2.5.1.072715"
        multiDexEnabled true
        ndk {
            abiFilters "armeabi-v7a", "x86", "armeabi"
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'junit:junit:4.12'
    implementation 'com.android.support:appcompat-v7:25.3.1'
    implementation files('libs/BLEasyConfig.jar')
    implementation files('libs/easylink2.0.jar')
    implementation files('libs/GizWifiSDK.jar')
    implementation files('libs/jpush-android-2.1.5.jar')
    implementation files('libs/Lark7618SDK_noudp1606031910_0101.jar')
    implementation files('libs/libammsdk.jar')
    implementation files('libs/libForEElink.jar')
    implementation files('libs/LSFSK_1.0.jar')
    implementation files('libs/ltlink2.jar')
    implementation files('libs/mta-sdk-1.6.2.jar')
    implementation files('libs/OneShotConfig.jar')
    implementation files('libs/open_sdk_r5756.jar')
    implementation files('libs/pushservice-5.6.0.30.jar')
    implementation files('libs/simpleconfigwizardlib.jar')
    implementation files('libs/xUtils-2.6.14.jar')
    implementation files('libs/zxing.jar')
    implementation 'com.android.support:design:25.3.1'
    implementation 'com.yanzhenjie:permission:1.0.5'
}

2.4 Execute o erro novamente após a modificação:
Insira a descrição da imagem aqui
Motivo: erro de versão baixa
Solução: comente a sexta linha no arquivo AndroidManifest.xml (mova o cursor para o código e pressione Ctrl + / para comentar), conforme mostrado na figura abaixo (já comentada):
Insira a descrição da imagem aqui

Em resumo, sucesso.

3. Referências e agradecimentos

Este artigo refere-se principalmente ao artigo do autor CS sweeping monk : Solução: modifique o código android original do esquema SOC do Gizwits e a máquina virtual Android executa com êxito o APP Gizwits .

Publicado um artigo original · Gosto1 · Visitas 27

Acho que você gosta

Origin blog.csdn.net/qq_42457131/article/details/105531865
Recomendado
Clasificación