[编辑以显示提问后一周的当前播放状态]
我深入研究应用程序发明者,因为我的孩子(10岁和12岁)即将获得他们的第一款Android手机,并做了一些拖放式编程(游戏制作者)所以我认为这可能是他们的一个很好的切入点
我现在自己用应用程序发明者编写了5个应用程序,并在我的手机上安装了4个应用程序,我无法安装第5个应用程序,因为我显然是“内存不足”,尽管SD卡上有3个免费赠送电话。
好的,那是怎么回事?设置 - >应用程序 - >管理应用程序不会削减它,因为“移动到SD卡”选项在appinventor应用程序上显示为灰色。
我将我的第五个应用程序打包为apk,然后将其解压缩以查看AndroidManifest.xml,但它不是纯文本: - /
不适合我的解决方案:
(1)“等待”
(2)“根你的手机然后......”
(3)“从手机内存中删除一些内容”[解决方法,而不是解决方案]
(4)“购买此产品然后......”
好的,这是一个更新。我还没有设法解决这个问题。这是我到目前为止所做的。
1)我在appinventor中创建了一个名为“test123”的应用程序,带有一个图片和一个按钮(什么都不做)。
2)我创建了一个apk,并将其粘贴在我的网站上:你可以在this link看到它。任何想要下载并在手机上运行的人,只要他们手机上有4个左右的可用内存。据我所知,他们无法将其下载到他们的SD卡上。因此,让我澄清一下,挑战是将链接中的应用程序安装到手机SD卡上。
好的,试试吧!
3)我将apk放在linux盒子上,下载apktool,然后运行
apktool d test123.apk
经过一段时间的讨论,我现在有一个目录test123。
4)我移动到目录test123,在那里我找到了一个文件AndroidManifest.xml。我编辑了这个文件;前几行是
<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="3" android:versionName="1.5" package="appinventor.ai_************.test123"
xmlns:android="http://schemas.android.com/apk/res/android">
[我用*** s审查了我的Gmail地址]
我将它们改为
<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="3" android:versionName="1.5" package="appinventor.ai_************.test123"
xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal">
5)我移动到旧apk所在的目录(即包含目录test123的目录)并键入
apktool b test123
经过一些小事后,程序终止了。
6)我改为目录
test123/dist
并在其中我找到了一个新的.apk文件,也称为test123.apk。我把它放在我的网站here上。请注意,apk的“apktools之前”和apk之后的“apktools”版本具有完全相同的名称 - test123.apk。
7)我现在将“after”文件 - 由apktool b创建的版本 - 下载到Windows机器上,并用7-Zip打开它(切换到Windows只是为了我可以使用建议的精确程序)答案)。我找不到我建议删除的文件。我明白了
AndroidManifest.xml
classes.dex
resources.arsc
assets/smallkez.png
res/drawable/ya.png
就是这样。
总而言之,我似乎在DarkXphenomenon解决方案的第5步(在撰写本文时)失败了。如果我将“after”文件下载到手机上,并尝试安装它,我会收到令人难以置信的错误信息“!应用程序未安装”,我唯一的选择就是点击“完成”。
不幸的是,我仍然不知道我是否正在尝试做不可能的事情,即谷歌搜索是否导致人们找到过去工作但不再做的解决方案,或者我是否只是错过了一些愚蠢的东西。
对我来说这是一个根本问题!开箱即用的我的手机有大约21兆的可用内存,我的SD卡有千兆字节和千兆字节。
答案 0 :(得分:4)
问题本身: 转向SD卡选项显示为灰色。
<强>解决方案:强>
目前,app-inventor本身不支持安装到外部SD功能。 所以,你面临的问题是一个显示这个问题的应用程序。
此方法确实有效。我测试过了!我还将我用过的所有工具上传到我的Google云端硬盘帐户,以便于下载。
test_orig.apk
是app-inventor的原始文件。
第1步。使用apktool反编译APK。它可以在windows下使用apktool完成。
This是我在windows下使用的档案。无需解码源以编辑清单。因此,使用的命令是apktool d -s test_orig.apk
第2步。这会在包含apktool的同一目录中创建名为test_orig
的文件夹。在此目录中是文件夹AndroidManifest.xml
。在文本编辑器中打开它并更改以下行。
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...android:installLocation="preferExternal">
第3步。使用apktool b test_orig
重新编译apk的时间
第4步。现在,是时候签名了。使用Sign+轻松签名。 只需添加apk,它就会吐出签名副本。没有其他事情需要做。
第5步。您已签名的apk已准备好安装。 请记得卸载旧的apk ,否则您会看到一条错误消息Application Not Installed: An existing package with a conflicting signature exists.
结果结果:
已签名的申请表可供下载here。
答案 1 :(得分:1)
这似乎是一个众所周知的问题:
http://code.google.com/p/app-inventor-for-android/issues/detail?id=186
这个帖子中的某个人说他们找到了解决方案,但如果我不得不猜测我会猜测他们使用的解决方案是在apk文件中对清单进行模糊处理之前。
不幸的是,我认为此时没有(简单)方法将应用程序移动到SD卡。
上发布此问题答案 2 :(得分:1)
我需要更频繁地挂在这里......
有两个第三方应用可让您编辑主要节目。他们通过将apk拆开并获取清单来执行您正在处理的工作,以便您可以对其进行编辑。
我推出了新版本的ai4a App Inventor http://sourceforge.net/projects/ai4a-configs/files/V1.2/
它将清单保存在您可以编辑它的临时文件夹中,然后使用您编辑的清单重建apk。我没有测试安装到SD卡上(我在Google TV上放了一些App Inventor应用程序只是为了看它工作;-))。如果您尝试使用ai4a服务器,请务必告诉我们。
以下是我们讨论服务器https://groups.google.com/forum/?hl=en#!forum/ai4a
的地方这是支持https://groups.google.com/forum/?hl=en#!forum/usgsuacwai
加里