【问题标题】:Can MIT App Inventor receive image?MIT App Inventor 可以接收图像吗?
【发布时间】:2021-02-13 18:59:21
【问题描述】:

我还是云和 MIT 应用发明者的新手。但我想问一些有关云和 MIT 应用发明者的问题。

但首先我想解释一下项目应该如何工作。 我的项目是关于家庭安全系统的。当按下按钮时,它将捕获访客的图像,并且房主将在 android 应用程序上收到访客的图片。 android应该能够通过按下按钮解锁来接收图片和解锁门。使用的相机是连接到 Arduino Mega 的 VC0706 相机。

我的问题是应用程序发明者可以从云端接收图片,因为所有拍摄的图片都将存储在云端。

【问题讨论】:

    标签: android arduino cloud arduino-esp8266


    【解决方案1】:

    在 App Inventor 2 中访问图像和声音

    使用 App Inventor 构建的应用程序可以从三种不同的位置访问声音、图像和视频源:

    应用资产

    设计器中显示的标有媒体的来源(应用资产的一部分)与应用打包在一起。安装您的应用程序的任何人都将拥有它们,作为应用程序的一部分。您还可以在设计器中指定它们,这很方便。您也可以通过文件名在程序中指定它们:只需使用不带任何特殊前缀的文件名。例如,如果您有一个名为 kitty.png 的图片资源,您可以将其用作图片:只需将图片组件的图片属性设置为文本 kitty.png。您可以类似地为声音(声音或播放器)或视频(视频播放器)使用文件名。

    资产使用起来最方便,但它们的空间仅限于几兆字节,因为它们必须与应用程序一起打包。它们适用于小图像和短音频选择。您可能不会将它们用于完整的歌曲或视频。

    手机 SD 卡

    您可以使用以 /sdcard 开头的文件名访问手机 SD(安全数字)卡上的文件。您可以通过将播放器组件的来源设置为

    ,在 SDCard 上播放歌曲

    /sdcard/Music/Blondie/The Best of Blondie/Heart of Glass.mp3

    并启动播放器(当然,假设歌曲文件在 SDCard 上)。确保指定完整的文件名,包括“mp3”。

    Android 系统还包括一种将 SDCard 文件设计为 URL 的替代方法。在这里,您可以在文件名前加上 file:///sdcard,并对特殊字符使用“URL 编码”。例如,空格是“%20”。因此,您可以通过将播放器源设置为来指定相同的文件

    file:///sdcard/Music/Blondie/The%20Best%20of%20Blondie/Heart%20of%20Glass.mp3

    请注意,您需要为此使用播放器组件,而不是声音。这样一首完整的歌曲对于 Sound 来说太大了。

    图像和视频可以类似地指定。

    App Inventor(尚)不包含任何将文件存储在 SD 卡上的方法。它还没有(还)包括列出 SDCard 上文件的方法。为此,您必须使用其他应用程序或 Android 手机文件管理器。

    与尝试将内容打包为资产相比,使用 SD 卡可以为媒体提供更多空间。缺点是用户不会通过安装您的应用程序自动获得它们。

    网址和网络

    您可以使用以 http:// 开头的 URL 访问 Web 上的文件,例如,将图片的图片属性设置为

    http://www.google.com/images/srpr/nav_logo14.png

    对于音乐和视频也是如此。确保您使用指向实际文件的链接,而不是指向文件的播放器,这在网络上更为常见,尤其是对于音乐和视频。

    其他内容网址

    Android 系统还使用 URL 访问手机上存储媒体的各个位置。例如,可以使用以 content://media/external/images/media 开头的文件名访问照片库中的图像,您可以通过使用 ImagePicker 并检查生成的图像路径来查看。

    【讨论】:

    • 哇,很棒的答案。写的很详细,真的能帮助我理解。
    【解决方案2】:

    App Inventor 2 具有内置的 Web 存储 TinywebDB,它仅存储文本字符串。
    在您的场景中,将图像发布到网络上的某个位置,然后将图像 URI 存储在 TinyWebDB insdie App 发明者中。

    【讨论】:

      【解决方案3】:

      是的,使用 MIT App Inventor,您可以不直接而是间接地发送和接收图片。首先,您必须将该图像转换为 imagebase64,这意味着文本格式,然后解码此文本以获得原始图像。这意味着您可以将任何图像存储在 clouddb 或 firebase 中。这是关于那个的视频 https://youtu.be/ySruxnxeJgM

      【讨论】:

        猜你喜欢
        • 2023-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-11
        • 1970-01-01
        • 2016-04-27
        • 1970-01-01
        相关资源
        最近更新 更多