IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Problème packaging Android Wear


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Par défaut Problème packaging Android Wear
    Bonjour,

    J'ai développé une watchface qui fonctionne très bien mais celle-ci n’apparaît sur ma montre que lorsque j’exécute l'application via android studio.

    Je n'arrive pas à faire apparaître la watchface dans le logiciel android wear et sur la montre avec l'installation via l'apk que je génère. Je pense donc qu'il s'agit d'un problème de packaging.

    Ce qui fait que mon application est refusé de google play : "Your app does not have Android Wear functionality that’s visible to the user."


    build.gradle côté wear
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    apply plugin: 'com.android.application'
     
     
    android {
        compileSdkVersion 21
        buildToolsVersion "21.1.2"
     
        defaultConfig {
            applicationId "com.virlouvet.barrewatchface"
            minSdkVersion 21
            targetSdkVersion 21
            versionCode appVersionCode
            versionName appVersionName
        }
     
        signingConfigs {
            production {
                storeFile ''
                storePassword ''
                keyAlias ''
                keyPassword ''
            }
        }
     
        applicationVariants.all { variant ->
            variant.outputs.each { output ->
                output.outputFile = new File(
                        output.outputFile.parent,
                        output.outputFile.name.replace("wear-popwatchface-release.apk", "wear_popwatchface_release_${variant.versionName}.apk"))
            }
        }
     
     
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.production
            }
        }
     
     
        productFlavors {
            popwatchface {
                applicationId "com.virlouvet.barrewatchface"
            }
        }
    }
     
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.google.android.support:wearable:1.1.0'
        compile 'com.google.android.gms:play-services:6.5.87'
        compile 'com.android.support:support-v4:21.0.3'
        wearApp project(':wear')
    }
     
     
    android.applicationVariants.all { variant ->
     
        if (variant.buildType.name == 'release') {
            variant.outputs.each { output ->
                output.assemble << {
                    println "Copying Wear APK inside mobile"
                    copy {
                        from output.outputFile.path
                        into "../mobile/src/main/res/raw"
                    }
                }
            }
        }
    }

    build.gradle côté mobile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    apply plugin: 'com.android.application'
     
    android {
        compileSdkVersion 21
        buildToolsVersion "21.1.2"
     
        defaultConfig {
            applicationId "com.virlouvet.barrewatchface"
            minSdkVersion 18
            targetSdkVersion 21
            versionCode appVersionCode
            versionName appVersionName
        }
     
        signingConfigs {
            production {
                storeFile ''
                storePassword ''
                keyAlias ''
                keyPassword ''
            }
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.production
            }
        }
     
        productFlavors {
            popwatchface {
                applicationId "com.virlouvet.barrewatchface"
            }
        }
    }
     
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        //wearApp project(':wear')
        //wearApp project(path: ':wear', configuration: 'xavierRelease')
        //wearApp files('./src/main/res/raw/wear_popwatchface_release_1.1.5.apk')
        compile 'com.android.support:appcompat-v7:21.0.3'
        compile 'com.google.android.gms:play-services:6.5.87'
        compile 'com.android.support:support-v4:21.0.3'
    }
     
     
    project.afterEvaluate {
        android.applicationVariants.all { variant ->
     
            if (variant.buildType.name == 'release') {
                tasks["generate${variant.name.capitalize()}Assets"].dependsOn(":wear:assemble${variant.name.capitalize()}")
     
                variant.outputs.each { output ->
                    task("handle${variant.name.capitalize()}WearDesc") << {
                        def apkFileName = "wear-${variant.flavorName}-${variant.buildType.name}.apk"
                        File wearDescFile = file("${output.processResources.resDir}/xml/wear_desc.xml")
                        String content = wearDescFile.getText('UTF-8')
                        content = content.replaceAll(/APPLICATION_ID/, "${variant.mergedFlavor.applicationId}")
                        content = content.replaceAll(/VERSION_CODE/, "${variant.mergedFlavor.versionCode}")
                        content = content.replaceAll(/VERSION_NAME/, "${variant.mergedFlavor.versionName}")
                        content = content.replaceAll(/WEAR_BUILD/, apkFileName)
                        wearDescFile.write(content, 'UTF-8')
     
                        output.processManifest.dependsOn("handle${variant.name.capitalize()}WearDesc")
     
                        output.assemble << { // Clean the assets folder of all apk
                            ant.delete(includeEmptyDirs: 'true') {
                                fileset(dir: file('./src/main/res/raw/'), includes: '*.apk')
                            }
                        }
                    }
     
                }
     
            }
        }
     
    }

    je compile avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gradlew clean mobile:assemblePopwatchfaceRelease
    J'ai utilisé ce tutoriel : http://blog.octo.com/packager-une-ap...-la-vraie-vie/

    J'ai essayé par mal de chose mais rien ne fonctionne, quelqu'un aurais des compilations qui fonctionne ? ou une piste ... (je peux fournir plus de codes si besoin !)

    Merci d'avance !

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Par défaut
    Des idées, une piste ?

Discussions similaires

  1. Problème package et getClass
    Par nek_kro_kvlt dans le forum Langage
    Réponses: 3
    Dernier message: 20/09/2007, 17h28
  2. problème packages à la compilation de servlet
    Par laurent333 dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 28/05/2007, 10h41
  3. Problème packages SSIS (mise en production)
    Par kince dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/04/2007, 19h40
  4. Problème Package SSIS
    Par mic_schum dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/03/2007, 16h20
  5. [AS2] Problème package
    Par wwave dans le forum ActionScript 1 & ActionScript 2
    Réponses: 3
    Dernier message: 27/01/2006, 09h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo