标签: appcelerator

如何处理"在意外状态下完成导航过渡.导航栏子视图树可能已损坏."

我正在使用Appcelerator Titanium Mobile编写iPhone应用程序.我隐藏并根据焦点窗口显示选项卡组.

dashWin.addEventListener("focus",function(e) {
    if (dashWin.tabGroupVisible == true) {
        dashWin.tabGroupVisible=false;
        tabGroup.animate({bottom:-50,duration:500});
    }
});
Run Code Online (Sandbox Code Playgroud)

当dashWin收到焦点事件时,上面的代码会隐藏选项卡组.但是,当在iPhone模拟器中运行时事件触发时,我在Titanium控制台中看到此消息:

在意外状态下完成导航过渡.导航栏子视图树可能已损坏.

谷歌搜索结果出现了一个结果:另一个StackOverflow问题,可能会暗示发生了什么.

iphone titanium appcelerator appcelerator-mobile ios-simulator

7
推荐指数
1
解决办法
2万
查看次数

使用存储在Titanium.Filesystem.applicationDataDirectory中的图像的ImageView显示占位符,而不是图像

我正在开发SDK 1.6.2.

我的应用程序使用相机捕获并将图像保存到Titanium.Filesystem.applicationDataDirectory.

应用程序的轻击应该显示在屏幕上平铺的所有存储的图像(存储在数据库中的详细信息[路径]).

保存图片:

var image = event.media // from camera success

var filename = new Date().getTime() + "-ea.jpg";

bgImage = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory, filename);

bgImage.write(image);
Run Code Online (Sandbox Code Playgroud)

存储到数据库:

var db = Titanium.Database.open('photoDB');
try{
    db.execute('INSERT INTO stored (image) VALUES (?)', bgImage.nativePath);
} catch(e) {
    alert(e.message);
}

db.close();
Run Code Online (Sandbox Code Playgroud)

显示图片:

imageArray = [];
images = [];

var db = Titanium.Database.open('photoDB');
var dbrows = db.execute('select id, date, image from stored order by date asc');

while (dbrows.isValidRow()) {

    imageArray.push({
        image:dbrows.fieldByName('image')
    }); 

    dbrows.next();
}

dbrows.close();

// loop thru …
Run Code Online (Sandbox Code Playgroud)

javascript placeholder appcelerator imageview

7
推荐指数
1
解决办法
1万
查看次数

使用appcelerator自动缩放字体大小适用于Android吗?

只是想弄清楚这个问题.使用此属性的字体缩放是否适用于Android?我知道,它适用于iOS,但它似乎并不想对Android有用.

我正在尝试制作一个标签,其中包含不同大小的字符串.以下是我正在使用的代码示例:

var name = Titanium.UI.createLabel({ text:response.name, color:'#000', minimumFontSize:10, font:{fontSize:24,fontFamily:'Helvetica Neue'}, width:120, height:45, top:0, left:0, right:2, wordWrap:false, textAlign:'left' });
Run Code Online (Sandbox Code Playgroud)

mobile fonts android appcelerator titanium-mobile

7
推荐指数
1
解决办法
5685
查看次数

如何使用没有nodejs的javascript连接到rabbitmq

我正在使用Titanium appcelerator实现移动应用程序.

在这个应用程序中,我需要使用RabbitMQ实现聊天.我看到很多关于如何使用节点js连接到rabbitmq服务器的示例,但在我的情况下它不适用,我找不到任何javascript独立客户端.

我想知道是否有一种方法可以在没有客户端的情况下连接到RabbitMQ,或者是否有任何javascript独立客户端?

谢谢.

javascript titanium rabbitmq appcelerator

7
推荐指数
1
解决办法
1万
查看次数

使用ti.storekit购买Titanium应用内商品 - 未找到产品

我的应用内商品全部设置为通过ti.storekit在iTunes Connect中购买:

在此输入图像描述

我的Appcelerator 4.0应用程序编译并部署到我的设备(开发配置文件).ti.storekit链接到我的应用程序并进行编译.在没有未处理的异常方面,它似乎也正确执行.但它告诉我它无法找到我的应用内购买产品.我已经尝试将"15键"和"15Keys"交给ti.storekit.我不确定它想要哪一个(参考名称或产品ID) - 但无论如何都不起作用.

这是我一直关注的文档.

这是ti.storekit中的函数,它产生错误消息:

function requestProduct(identifier, success)
{
    Storekit.requestProducts([identifier], function (evt) {
        if (!evt.success) {
            alert('ERROR: We failed to talk to Apple!');
        }
        else if (evt.invalid) {
            alert('ERROR: Invalid product: ' + identifier);
        }
        else {
            success(evt.products[0]);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

正在执行"else if"行:alert('ERROR: Invalid product: ' + identifier); 我做错了什么?我应该提供参考名称(15键)或产品ID(15Keys)吗?既然我已经尝试了两者而且都不起作用,我该如何解决这个问题呢?我究竟做错了什么?

编辑:

我不清楚3件事:

1-我应该在我的ipad上进入设置并使用我的TEST USER苹果沙箱帐户登录itunes/store吗?我无法这样做,因为它一直要求我输入信用卡.我过去使用的测试信用卡(在其他非iOS系统上),如4111111111111111不起作用,我无法继续并登录.甚至不确定我是否应该这样做.如果是这样,我可以使用哪些CC凭据?我应该使用REAL CC吗?基于我在其他文章和帖子中阅读的所有内容,它表示永远不会将测试帐户链接到CC编号...那么为什么苹果不允许我登录我的测试用户到我的苹果设备(在设置内)进入信用卡?

2-我没有按照https://github.com/appcelerator-modules/ti.storekit/blob/master/ios/example/app.js中的步骤进行操作,因为在我的应用程序中没有任何内容可供下载,没有任何内容在我的应用程序中,用户可以购买密钥,这些密钥只是我应用程序中的数字实体 - 无需下载.所以我删除了与下载/托管有关的所有代码/步骤.

3-我的应用程序版本1.0.0正在等待应用程序商店中的审核.此版本没有ti.storekit,也没有应用内购买.没有.但是我正在开发一个更新的版本,包含我最新的appcelerator 4.0项目中的所有storekit和应用内购买内容.这不应该在我的开发环境中,在我连接的ipad上,在开发构建中工作吗?我有1.0.0等待审查的事实,没有storekit的东西,应该与我在我的开发帐户中使用storekit的新版本无关,对吧?我也对这条消息感到困惑:

在此输入图像描述

在我的DEV商店包装工作之前,我是否需要向Apple提交新版本?如果是这样,这似乎很奇怪,好像app-store候选版本与我在本地环境中开发的东西相关联.这条消息表明为什么我的dev storekit东西不起作用?我的应用内购买产品似乎已正确配置,但我不应该在dev/sandbox中与此连接,无论应用程序商店中等待审核的1.0应用程序(没有商店套件)?

谢谢大家的帮助......我必须错过一些我没有看到的关键步骤.

titanium appcelerator appcelerator-mobile titanium-modules

7
推荐指数
1
解决办法
706
查看次数

使用ScrollableView在iOS上无法使用滑动后退手势

我正在使用带有SDK 5.4.0GA的Appcelerator Studio 4.7.

我想使用滑动后退手势返回到上一个视图控制器,但是ScrollableView即使我在屏幕的左边缘开始我的手势,我的触摸也会移动视图.如果没有结束,滑动后退手势可以正常工作ScrollableView.

当我使用Titanium Studio 3.4时,一切都很好.目前无法使用它,因为它不受支持,您甚至无法登录.

这个问题是因为Appcelerator Studio,而不是因为SDK版本.我尝试使用具有相同SDK版本的Titanium Studio和Appcelerator Studio,并且只有Appcelerator Studio出现此问题.这就是我一年前坚持使用Titanium Studio的原因,但现在却不可能.

以下是没有解决方案的相关主题:https://archive.appcelerator.com/topic/581/swipe-right-from-the-edge-to-go-back-to-the-previous-window-doesn-t-工作了合IOS-使用-SDK-3-5-1-GA-和-4-0-0-GA/4

编辑.如何在2分钟内重现它:

1)文件 - >新建 - >移动应用项目 - >默认合金项目

2)添加名为scrollable的新控制器

scrollable.xml:

<Alloy>
    <Window class="container">
        <ScrollableView>
            <ScrollView>
                <View height="5000" backgroundColor="#DBD6D6">
                    <Label top="20">View1</Label>
                </View>
            </ScrollView>
            <ScrollView>
                <View height="5000" backgroundColor="#FED2FB">
                    <Label top="20">View2</Label>
                </View>
            </ScrollView>
            <ScrollView>
                <View height="5000" backgroundColor="#DCEFD7">
                    <Label top="20">View3</Label>
                </View>
            </ScrollView>
        </ScrollableView>
    </Window>
</Alloy>
Run Code Online (Sandbox Code Playgroud)

index.js:

function doClick(e) {
    var scrollableController = Alloy.createController('scrollable',{
    });

    var view = scrollableController.getView();
    $.index.openWindow(view);
}

$.index.open();
Run Code Online (Sandbox Code Playgroud)

INDEX.XML: …

titanium appcelerator ios appcelerator-titanium appcelerator-alloy

7
推荐指数
1
解决办法
417
查看次数

应用程序商店拒绝应用程序在iOs 10上支持IPV6网络

我收到苹果公司的app拒绝邮件,下面是

我们在连接到IPv6网络的Wi-Fi上运行iOS 10.0.2的iPad和iPhone上查看了应用中的一个或多个错误.具体来说,应用程序在启动时仍保留在启动屏

根据他们的要求,我在我的Mac上创建了NAT64网络,并为iPhone 5S设备10.0.2 os版本共享了互联网,App工作正常,

但苹果表示不与IPv6合作任何人都可以确认我是否需要检查其他内容?

相关问题

环境: Appcelerator Studio Ti SDK 5.1.0 GA XCode版本6.3

提前致谢

iphone ipv6 titanium appcelerator ios

7
推荐指数
1
解决办法
5835
查看次数

Titanium appcelerator是否值得在ipad,iphone和android上开发基于相机的应用程序?

我想构建一个移动/平板电脑应用程序,其核心功能是用相机拍照,查看图片和接收通知.此外,我想针对iPhone,iPad和Android平台.

Titanium appcelerator因其跨平台的吸引力而引起了我的兴趣.但是我很担心因为我在SO和其他网站上阅读了不同的评论.让我担心的是:

  • Subpar android支持
  • 相机支持功能不完全(例如ios 4.1 HDR功能)
  • 相机支持越野车

对我来说,噩梦般的场景是投入钛金属时间,以便稍后发现它是一个主要的PITA并放弃它并且"本土化"

请分享您的想法和经验.

iphone mobile android titanium appcelerator

6
推荐指数
3
解决办法
1万
查看次数

跨设备的IOS唯一用户标识符

感谢您花时间和兴趣阅读本文并希望帮助我.

我需要IOS的唯一用户标识符,我对唯一用户标识符的含义是Apple提供的唯一字符串,对于用户而非设备是唯一的,这意味着它将跨设备保持不变.我想到了Apple ID或类似的东西,但这是不可能的,因为Apple没有提供它(至少不是我所知道的),但我想要类似的东西.

它不能是UDID,因为(除了被弃用之外)它不是跨设备持久的.我希望这样做是为了验证用户,而无需用户登录或注册.有可能这样做,因为有些应用程序会这样做.我没有登录或使用其他设备进行任何操作,但它验证了我.我以为是苹果ID,但是不可能.

我检查了这个答案:iOS唯一用户标识符.它似乎可能是解决方案,但我不太明白它,因为我没有看到每个新用户如何独特(能够区分多个用户和同一个用户,但是不同的设备).

我非常感谢读这篇文章并试图提供帮助的人.谢谢

PD:我使用Titanium的Appcelerator,而不是Apple的IOS SDK或类似的东西.但这并不重要,我只想让这个过程能够与Titanium的Appcelerator一起完成

PS:注意:

谢谢你的回答,速度如此之快!我已经阅读了很多次,我只是不明白.你能帮我理解一下吗?

我理解的方式就是这个.

1.-创建一个UUID(随每个安装而改变)2. - 使用默认服务将其存储到钥匙串(据我所知,保存在钥匙串上的值是设备的本地值)(我认为我把它放在一起)应用程序的id-com.bla.bla-),以及默认帐户,我认为我将它留作"用户".

这将全部是本地的,因此每次安装都会执行此操作,每次安装都使用不同的UUID(每个用户都不需要).3.将UUID保存到NSUserDefaults.4.-将UUID保存到Cloud的公共数据存储中.(Cloud的数据存储中的UUID,Keychain和NSUserDefaults应该是相同的)

因此,如果运行5个安装,Cloud的公共数据存储应该是这样的

An Array of 5 values:
[
XXXX-EEEEE-FFFFF,
SFSDFFWE-WERW-SDFS,
XXXX-XXXXX-XXXXX,
ZZZZZ-ZZZZ-ZZZZX,
XZXZZX-ZXZXZXS-ADADS
]
Run Code Online (Sandbox Code Playgroud)

5.-每次运行应用程序时都会执行所有这些操作,首先检查公共云存储中是否存储了值.这是我困惑的地方,不同的设备将如何知道哪个UUID是你的?我的意思是,有5种不同的UUIDS可供选择.也许它不应该保存在公共数据存储上,而是保存在私有数据存储上,但为此你还需要识别每个用户.这是我感到困惑的地方.

如果没有设置UUID,请执行最后4个步骤.

所以,我在第五步感到困惑,大多数人都理解这个解决方案,没有任何解释,所以我必须对某些工作的方式无知,也许是云服务?我认为问题在于,我可能不了解iCloud是如何工作的,以及它如何存储它的价值.我只是不知道运行应用程序的X的第5个(随机数,可能是第2个或第2000个)设备,将知道UUID XXX ...是用户X的UUID,而不是用户的UUID Z.

再次感谢你回答这么快,我想也许我要等几天,而不是几分钟.请原谅我的无知,我在这件事上有点像菜鸟,但我想学习.几天来一直困在这个问题上

uuid unique identifier appcelerator ios

6
推荐指数
1
解决办法
4652
查看次数

在安装Appcelerator Studio时连接到下载服务器时出错

在此输入图像描述

这是在此处发布的相同错误:https://community.appcelerator.com/topic/3021/installing-on-ubuntu-14-04

我安装了:

oracle-jdk6 nodejs and nodejs-legacy

运用

appcelerator x64

在Ubuntu 14.04上(附件中的规格)

还跑了:

sudo apt-get install libjpeg62 libwebkitgtk-1.0-0 echo 'export MOZILLA_FIVE_HOME=/usr/lib/mozilla' >> ~/.bashrc

并试过:

sudo apt-get install ia32-libs 但这不起作用,而是我使用了这个:

sudo -i cd /etc/apt/sources.list.d echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list apt-get update apt-get install ia32-libs

我在这里找到:如何在Ubuntu 14.04 LTS(Trusty Tahr)中安装ia32-libs

谢谢

在此输入图像描述

ubuntu titanium appcelerator

6
推荐指数
1
解决办法
1056
查看次数