代码之家  ›  专栏  ›  技术社区  ›  Avastus Learn

我的应用程序在测试设备上运行,但无法在任何其他设备上安装

  •  0
  • Avastus Learn  · 技术社区  · 7 年前

    我正在尝试用android Studio创建一个android应用程序,我也使用Firebase。

    我整个应用程序的问题是在测试设备上运行时

    -“三星j7,Android版本为6.0.1,棉花糖=API级别23”

    一切正常,但当我尝试将应用程序放到其他设备上时

    -“Oppo F1、ColorOS版本3.0.0i、Android版本5.1(我真的不知道这方面的API级别)”

    然后应用程序无法安装,我收到一条消息说“安装失败” 真的不知道问题出在哪里:证书、安全性或其他。。。

    当我创建“hello world”应用程序,并执行与上面相同的操作时,一切都正常。

    设置中的未知源也已启用

    我的gradle:

    android {
    compileSdkVersion 27
    buildToolsVersion "27.0.2"
    defaultConfig {
        applicationId "com.example.mcphil.avastus"
        minSdkVersion 18
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    

    当我开始创建应用程序时 我的最低api级别是Jelly bean=api级别18

    清单:编辑:对于清单

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.mcphil.avastus">
    
    
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        android:name="MathsQuiz">
        <activity android:name=".LoginActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
    
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".MainActivity" />
        <activity android:name=".SignupActivity" />
        <activity android:name=".ResetPasswordActivity" />
        <activity android:name=".ProfileActivity" />
        <activity android:name=".LibraryActivity" />
        <activity android:name=".QuizzesActivity" />
        <activity android:name=".DocumentActivity" />
        <activity android:name=".pdf.PDF_Activity" />
        <activity android:name=".quizzes.Quiz1Activity"/>
    </application>
    

    不知道我这边还需要什么信息,所以只要问我是否缺少所需信息,希望有人能帮助我。

    非常感谢 我对编码很陌生。

    编辑: 新错误如下:

    错误:任务“:app:ProcessDebuggGoogleServices”的执行失败。 找不到包名称“com”的匹配客户端。实例麦克菲尔。阿瓦斯图斯。阿瓦斯图斯

    这个 .阿瓦斯图斯 在错误的最后一段文字中,我试图找到错误的来源。

    3 回复  |  直到 7 年前
        1
  •  1
  •   Shahin    7 年前

    除非在运行Android Studio时连接到PC,否则无法在其他设备上安装任何应用程序。

    但是,如果要生成签名的调试APK以便在其他设备上进行测试,则必须对其进行签名。出于安全原因,手机无法安装未签名的APK

        2
  •  0
  •   Shahin    7 年前

    我希望这能起作用:

    在Android studio中,从项目面板转到[应用程序]>[构建.gradle]并打开构建。格拉德尔

    例如,现在复制应用程序ID

    通用域名格式。实例myApp

    android {
      compileSdkVersion 25
      buildToolsVersion "25.0.3"
      defaultConfig {
        applicationId "com.example.myApp" // ***----- Copy (com.example.myApp)
        minSdkVersion 21
        targetSdkVersion 25
          ...
          ...
      }

    现在打开浏览器,打开[firebase.google.com],然后单击[转到控制台]

    然后[创建新项目]或[添加项目]

    输入[项目名称]、[项目ID]和[您的国家]——无论您输入什么名称和ID都可以

    然后打开一个页面,如下所示:单击[将FireBase添加到Android应用程序]

    enter image description here

    现在,这里是您的[应用程序ID]需要使用的地方

    在[Android项目名称]中输入复制的[应用程序ID]

    并输入一个包名--任何包名都可以。然后单击[注册应用程序]

    enter image description here

    在下一页——下载谷歌服务。json

    enter image description here

    下载完成后,单击[继续],然后单击[完成]

    现在,获取下载的Json文件,复制它,然后必须将其粘贴到项目中,但必须执行两次。

    一次来自Android Studio,一次通常在Windows资源管理器中

    首先,通过右键单击[应用程序]并粘贴,将其从Android Studio粘贴到[应用程序]目录中

    当你粘贴到这里时,它会自动“覆盖”,并给你一个“IOExceptions”错误。

    enter image description here

    两者都很好单击[覆盖]和[确定]。你很好

    然后,复制刚才粘贴在Android Studio中的Json,右键单击,复制。(从android studio内部复制)

    enter image description here

    现在,从windows资源管理器将其粘贴到[应用程序]目录中。粘贴并更换。(对于exmaple,C:\Users\Dell…|应用程序所在位置)

    最后,在Android Studio中,转到[文件]并单击[同步]

        3
  •  0
  •   Avastus Learn    7 年前

    在此错误中: 错误:任务“:app:ProcessDebuggGoogleServices”的执行失败。找不到包名称“com”的匹配客户端。实例你的包裹名称'

    您可以按照以下说明操作 沙欣 .

    在我的情况下,有些情况下你需要重新下载谷歌服务。项目设置中现有firebase项目的json

    Project Settings Firebase

    并将其复制到您的应用程序目录中,其中保存了来自Android studio的项目-粘贴/替换-

    然后

    返回android studio,转到工具>火基

    Tools>Firebase

    然后选择身份验证

    Auth

    然后添加 对应用程序进行Firebase身份验证

    然后 将你的应用程序连接到Firebase

    一旦全部设置并连接到goto 构建(>);生成项目

    就这样,

    但现在,我回到了我上面提到的真正问题,我的应用程序只在通过usb连接的指定设备上运行,以进行真正的设备测试,但该应用程序仍然无法安装到其他设备上。