我从GitHub下载了一个项目,并由Android Studio打开。所有必需的构建工具和Android支持存储库都是通过Android Studio自动下载的。
https://github.com/DrKLO/Telegram
现在我尝试来运行项目,我在按摩时出现错误。
Error:A problem was found with the configuration of task ':TMessagesProj:packageDebug'.
> File 'G:\AndroidDev\AndroidStudioProjects\Telegram-master\TMessagesProj\config\release.keystore' specified for property 'signingConfig.storeFile' does not exist.
我在Stack Exchange上发现了一些其他线程:
Android specified for property 'signingConfig.storeFile' does not exist
我按照他们的建议创建了密钥库,但是当我点击运行按钮时,我仍然遇到了这个错误。他们似乎与我的不同。
我还生成了签名的APK,当我尝试在设备上安装它时,程序崩溃并停止,我想这可能是由上述问题引起的。
我确定它应该正常工作,因为它是Telegram信使的官方来源。 https://github.com/DrKLO/Telegram
如果您需要build.gradle文件:
apply plugin: 'com.android.application'
repositories {
mavenCentral()
}
dependencies {
compile 'com.android.support:support-v4:23.1.+'
compile 'com.google.android.gms:play-services:3.2.+'
compile 'net.hockeyapp.android:HockeySDK:3.6.+'
compile 'com.googlecode.mp4parser:isoparser:1.0.+'
}
android {
compileSdkVersion 23
buildToolsVersion '23.0.2'
useLibrary 'org.apache.http.legacy'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
signingConfigs {
debug {
storeFile file("config/release.keystore")
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
keyPassword RELEASE_KEY_PASSWORD
}
release {
storeFile file("config/release.keystore")
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
keyPassword RELEASE_KEY_PASSWORD
}
}
buildTypes {
debug {
debuggable true
jniDebuggable true
signingConfig signingConfigs.debug
applicationIdSuffix ".beta"
}
release {
debuggable false
jniDebuggable false
signingConfig signingConfigs.release
}
foss {
debuggable false
jniDebuggable false
signingConfig signingConfigs.release
}
}
sourceSets.main {
jniLibs.srcDir 'libs'
jni.srcDirs = [] //disable automatic ndk-build call
}
sourceSets.debug {
manifest.srcFile 'config/debug/AndroidManifest.xml'
}
sourceSets.release {
manifest.srcFile 'config/release/AndroidManifest.xml'
}
sourceSets.foss {
manifest.srcFile 'config/foss/AndroidManifest.xml'
}
defaultConfig {
minSdkVersion 8
targetSdkVersion 23
versionCode 695
versionName "3.3.2"
}
}
答案 0 :(得分:0)
1)检查storeFile是否存在于路径G:\AndroidDev\AndroidStudioProjects\Telegram-master\TMessagesProj\config\release.keystore
2)如果不是 - 重命名/移动您的密钥库文件或更改密钥库文件位置的路径。
现在应该可以了。如果您在涉及本机代码时遇到构建问题,请尝试此主题 Android Telegram App --> java.lang.UnsatisfiedLinkError: No implementation found for void
答案 1 :(得分:0)
你的问题是:Android Studio正在搜索你告诉它应该在那里的密钥文件......但不是。
你告诉Android Studio文件会在哪里?
storeFile file("config/release.keystore")
如何创建此丢失的文件? https://developer.android.com/studio/publish/app-signing.html
如果您已经创建了密钥库,请检查它是否在正确的位置,通常我使用名为' keystore'的文件夹。而不是' config',当您浏览搜索时更直观;)
storeFile rootProject.file("keystore/release.keystore")
答案 2 :(得分:0)
要生成密钥存储区,请进入Build>生成签名APK并单击New Key Store,现在将生成的文件重命名为release.keystore并将其移至TMessagesProj / config。
Android Studio会生成.jks文件。只需将其从release.jks重命名为release.keystore即可。然后构建将成功。