使用Android Studio构建未签名的APK文件

问题描述 投票:230回答:16

我正在使用Android Developer Tool开发一个Android应用程序。现在我尝试了新的Android Studio,如果将我的智能手机与电脑连接并直接在Android Studio中运行该程序,一切正常。但现在我想用其他智能手机测试该程序而不将它们连接到我的电脑上。

每次编译程序时,ADT都会在“projectname / bin”下创建.apk文件。我是如何在Android Studio不这样做时看到的。

所以我的问题是可以用Android Studio创建一个未签名的.apk文件吗?

android build apk android-studio
16个回答
290
投票

我建议你使用Gradle构建你的APK文件:

  • 单击顶部工具栏中的下拉菜单
  • 选择“编辑配置”
  • 点击“+”
  • 选择“Gradle”
  • 选择您的模块作为Gradle项目
  • 在任务中:输入assemble
  • 按运行

您的未签名APK现在位于

ProjectName\app\build\outputs\apk

有关如何使用Gradle的详细信息,本教程很适合:Building with Gradle in Android Studio。我还写了一篇关于如何使用Gradle构建未签名APK的blog post

如果您将项目从其他IDE移动并且不想重新编译,您可能会发现已在您移动的IDE中构建的APK文件:

  • 如果您使用Android Studio生成项目,则可以在ProjectName/ProjectName/build/apk/...中找到APK文件
  • 从eclipse导入项目:File应该在同一个目录中。去Project - Show in Explorer。在那里你应该找到你的APK文件所在的bin文件夹。
  • 从IntelliJ导入,位置将是ProjectName/out/production/...

旁注:Chris Stratton在评论中提到:

从技术上讲,你想要的是一个用调试密钥签名的APK。实际未签名的APK将被设备拒绝。


9
投票
Build -> Build APK     //unsigned app


Build -> Generate Signed APK  //Signed app

4
投票

以下为我工作:

如果已在build.gradle中创建,请将以下设置保留为空白。

signingConfigs {
        release {
            storePassword ""
            keyAlias ""
            keyPassword ""
        }
    }

并从编辑器窗口中选择Gradle Task。如果您已创建,它将显示所有风味的列表。


3
投票

---在signingConfigs中创建新配置

unsigned {
        //do not sign
    }

---在buildTypes中创建构建类型

unsigned {
        versionNameSuffix '-unsigned'
    }

---去构建变体并选择无符号标准。建立项目。

---转到“outputs / apk”并找到“XXX-unsigned.apk”。要检查它是否未签名,请尝试将其安装到设备 - 您将失败。


2
投票

现在在Android Studio v1.1.0中应该是:

  1. 选择Run> Run <your app>
  2. <your app>\build\outputs\apk中找到.apk文件

1
投票

Android studio还会在每次编译程序时创建apk文件,只需转到您的工作区文件夹并找到app-> build-> outputs->然后您就可以看到apk文件。


1
投票

您可以单击工具栏上运行按钮附近的下拉列表,

  1. 选择“编辑配置”
  2. 点击“+”
  3. 选择“Gradle”
  4. 选择您的模块作为Gradle项目
  5. 在任务中:输入汇编

现在按确定,

您现在需要做的就是从下拉列表中选择您的配置并按下运行按钮。这需要一些时间。您的未签名apk现在位于

Project\app\build\outputs\apk

0
投票

我解决了!

首先,你应该添加以下内容:

defaultConfig { 
 multiDexEnabled true
}

dependencies {
 implementation 'com.android.support:multidex:1.0.3'
}

之后,您应该单击Android Studio顶部栏中的Build:

Build> Build Bunds(s)/ APK(s)> Build APK(s)

最后,您有一个app-debug.apk文件:

app> build> outputs> apk> debug> app-debug.apk

注意:Android Studio自动在输出文件中创建apk,debug,app-debug.apk文件。


0
投票

创建未签名APK的步骤

Steps for creating unsigned APK

•	Click the dropdown menu in the toolbar at the top
•	Select "Edit Configurations"
•	Click the "+"
•	Select "Gradle"
•	Choose your module as a Gradle project
•	In Tasks: enter assemble
•	Press Run
•	Your unsigned APK is now located in - ProjectName\app\build\outputs\apk

Note : Technically, what you want is an APK signed with a debug key. An APK that is actually unsigned will be refused by the device. So, Unsigned APK will give error if you install in device.

注意:从技术上讲,您想要的是使用调试密钥签名的APK。实际未签名的APK将被设备拒绝。因此,如果您在设备中安装,未签名的APK将会出错。


0
投票

对于未签名的APK:只需设置signingConfig null。它会给你appName-debug-unsigned.apk

debug {
     signingConfig null
}

从Build菜单构建。请享用

签名APK:

signingConfigs {
        def keyProps = new Properties()
        keyProps.load(rootProject.file('keystore.properties').newDataInputStream())
        internal {
            storeFile file(keyProps.getProperty('CERTIFICATE_PATH'))
            storePassword keyProps.getProperty('STORE_PASSWORD')
            keyAlias keyProps.getProperty('KEY_ALIAS')
            keyPassword keyProps.getProperty('KEY_PASSWORD')
        }
    }
    buildTypes {
        debug {
            signingConfig signingConfigs.internal
            minifyEnabled false
        }
        release {
            signingConfig signingConfigs.internal
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

keystore.properties文件

CERTIFICATE_PATH=./../keystore.jks
STORE_PASSWORD=password
KEY_PASSWORD=password
KEY_ALIAS=key0

220
投票

根据Build Unsigned APK with Gradle,您可以使用gradle简单地构建应用程序。为了做到这一点:

  1. 单击顶部工具栏上的下拉菜单(通常带有android图标和应用程序名称)
  2. 选择Edit configurations
  3. 点击左上角的加号或按alt+insert
  4. 选择Gradle
  5. 选择你的模块为Gradle project
  6. Tasks:进入assemble
  7. OK
  8. 按播放

之后你应该在ProjectName\app\build\outputs\apk目录中找到你的未签名'apk'


82
投票

我猜是最简单的方法:

  • 打开右侧的Gradle选项卡
  • 双击YourProject /:app / assemble(或assembleDebug)
  • 你会在这里找到apk ... / YourProject /应用/编译/输出/ APK / APP-debug.apk


32
投票

只需转到BUILD-> Build APK就可以了


22
投票

步骤1打开android studio。构建 - >生成签名APK ....现在点击“生成签名APK”。

enter image description here

第2步

enter image description here

单击“新建”。

第3步

填写详细信息,然后单击“确定”。 enter image description here

jks关键细节,它将返回上一个窗口。

enter image description here

单击“下一步”,然后输入存储在密钥中的密码。

第4步

enter image description here

现在单击Finish并等待完成构建过程。

enter image description here

现在apk生成成功。单击资源管理器中显示

enter image description here

如果您需要更多详细信息,请访问并查看现场演示http://javaant.com/how-to-make-apk-file-in-android-studio/#.VwzedZN96Hs


16
投票

在Android Studio中:

  1. 建立
  2. 建立APK(s)
  3. 等待并转到弹出窗口中显示的位置。在右下方

enter image description here


14
投票

是的,可以使用Android Studio创建未签名的.apk!

在包浏览器或项目列中突出显示项目,然后File - Project Structure - Artifacts - + - Android Application - From module 'your app'然后您可以更改位置和其他一些选项。我启用build on make,只是为了方便。


11
投票

只需转到您的Application \ app \ build \ outputs \ apk

并将两者都复制到手机并安装app-debug.apk


9
投票

在OSX上使用Android Studio 2.2.3我只使用了顶层菜单:

Build > Build APK

它用.apk文件打开Finder。这不会生成签名的APK。如果需要,您可以从同一菜单中选择Generate Signed APK

© www.soinside.com 2019 - 2024. All rights reserved.