使用命令行构建应用程序后:
flutter build apk --release
然后我在手机上安装了该应用程序,突然我的 RESTapi 不再工作了。即使当我运行应用程序并调试一切正常时,屏幕仍保持白色。
我做错了什么?
当我运行我的应用程序大小的apk将21 MB.甚至我启用了proguard.我用android studio来运行项目.在项目文件中,src文件夹的大小为8.62 MB,lib文件夹的大小为400 KB.所以我如何减少.apk文件的大小.实际上.apk文件在某些日子之前是8 MB,具有相同的图像,但在paypal集成后,我的应用程序大小将增加到21 MB.构建文件夹的大小为127 MB.
build.gradle(模块应用程序)是:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
useLibrary 'org.apache.http.legacy'
defaultConfig {
applicationId "com.oi.food"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions{
exclude 'AndroidManifest.xml'
} }
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile files('libs/httpmime-4.1.1.jar')
compile files('libs/apache-mime4j-0.6.jar')
compile 'com.squareup.picasso:picasso:2.3.2'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
compile 'com.paypal.sdk:paypal-android-sdk:2.14.1' }
Run Code Online (Sandbox Code Playgroud) 我首先在Android Studio中创建了一个应用程序并完成了它.然后我需要第二个应用程序用于另一个目的,看起来几乎与第一个相同,但有微小的变化.因此,我拿了整个第一个应用程序的项目文件夹的副本,并将其粘贴到另一个位置.我对包名称和其他更改进行了一些重命名,并将apk从Android Studio运行到手机中.它的工作正常,但是当我运行这个新的apk时,它会删除我在手机上创建的第一个应用程序,即使它们的名称不一样
问题是,我需要在Android项目中更改哪些内容才能知道这些是两个不同的应用程序,当我运行应用程序2时它不应该删除应用程序1?
它是否包含有关apk签名的系统的一些信息?一些操作系统信息或类似的东西?我听说有人说它包含apk签名设备的mac地址.这是真的吗?Google可以通过签名apk获得哪些信息?
我经常将新构建的APK大小与生产构建进行比较,我正在寻找使该活动自动化的选项,以便它比较新的和产品的APK大小并向我报告。我知道Android Studio的APK分析器,但是我想使用命令行工具来做到这一点。该文档列出了apkanalyzer的用法,但是在运行此命令时
apkanalyzer -h apk file-size myapk.apk
Run Code Online (Sandbox Code Playgroud)
它说:“ 'apkanalyzer'未被识别为内部或外部命令,可操作程序或批处理文件。” 尽管我已经将环境路径设置为\ Android \ sdk \ tools \ bin。
不知道为什么命令行无法识别该命令,您能否让我知道我可能出了错的地方,还是有其他方法可以使用命令行检查apk文件的大小?
感谢您的任何帮助。
我有一个.bat文件,我用它在我的窗口创建.apk文件...现在我需要能够在ubuntu中创建.apk文件,但我不知道如何将我的bat文件转换为批处理文件能够在ubuntu上运行它!
下面是在Windows上工作正常的bat文件...请你给我一些关于如何在ubuntu上运行它的提示?
@echo off
set PAUSE_ERRORS=0
:user_configuration
:: Path to Flex SDK
set FLEX_SDK=C:\sdk\flex_sdk_4.5.1.21328
:: Path to Android SDK
set ANDROID_SDK=C:\sdk\android
:validation
if not exist "%FLEX_SDK%\bin" goto flexsdk
if not exist "%ANDROID_SDK%\platform-tools" goto androidsdk
goto succeed
:validation
if not exist "%FLEX_SDK%\bin" goto flexsdk
if not exist "%ANDROID_SDK%\platform-tools" goto androidsdk
goto succeed
:flexsdk
echo.
echo ERROR: incorrect path to Flex SDK
echo.
if %PAUSE_ERRORS%==1 pause
exit
:androidsdk
echo.
echo ERROR: incorrect path to Android SDK in 'bat\SetupSDK.bat'
echo.
if %PAUSE_ERRORS%==1 pause …
Run Code Online (Sandbox Code Playgroud) 为什么google使用.apk
他们的应用程序文件扩展名?为什么他们没有使用.jar
,.jad
或任何其他文件扩展?
我走得更远的唯一原因是
.apk
表示Android应用程序包.我知道他们像其他压缩器一样捆绑了应用程序包.但是仍然有其他一些原因.
APK
文件是基于JAR
文件格式的ZIP文件格式化包.谷歌为什么没用.jar
呢?
请赐教这些谷歌.apk
只选择android应用程序扩展?为什么不再有任何文件扩展名?
我从Apk获得了java源代码,但这不是来自应用程序的原始java代码.当我比较两者(原始和提取)代码时,有很多不同的.ex(某些功能不会出现在提取的代码中)
我们可以获得与原始(可执行)相同的java代码吗?
有可能吗?