Re: Wondering about iOS background tasks

2016-10-04 Thread Mark Wilcox
On Mon, Oct 3, 2016, at 06:17 PM, William Prothero wrote:
> Folks:
> My currently finished app needs to run continuously, as it must play a
> series of audio files. I found that, in iOS, audio will play when the app
> goes to the background, but the app is only completing the current audio
> file and the next one isn’t loaded, because the app isn’t really running.
>  I solved this by setting mobileLockIdleTimer. This keeps the app in the
> front and it is what I want. Problem solved.

Just FYI, mobileLockIdleTimer will prevent the device locking and
turning off the screen, which is a real battery killer. A mobile device
can play audio with the screen off for many, many hours. Of course if
you actually need the screen on, no problem.

On iOS, assuming you have the audio background mode set (in the
info.plist), the device doesn't suspend your app while it's still
playing audio. It may be the case that the way LiveCode works with audio
APIs, or the way you're using them, means you stop playing between
tracks for too long, so the system assumes the audio is finished. Might
be worth further investigation.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk



___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-25 Thread Mark Wilcox
Hi Kevin & Richard,

Thanks for engaging so positively with this discussion. Let me start by
saying that I'm very much on the side of LiveCode succeeding and want to
help not just complain from the sidelines.

Open source licensing FUD tends to make my blood boil a little, although
leaving that aside, I think this from Richard is absolutely the right
starting point:

> If your project's goal is to share source code the GPL-governed 
> Community Edition can be a good choice, and for any other goals the 
> proprietary license as we've always had is available as well.

I think where the current licensing interpretation goes wrong is that it
effectively creates two completely separate LiveCode communities, one
using the Community Edition which has to license everything under the
GPL and another using the commercial version which mostly cannot or will
not touch anything licensed under the GPL. Given the explicit move
towards an extensible architecture and widgets because LiveCode the
company cannot possibly cater to the needs of all users, and the
community needs to take the product forward in some directions, this
seems like a terrible outcome.

Unfortunately I can't make it to Edinburgh for the conference this year,
otherwise I'd love to take you up on that whiskey-fuelled debate. I have
some ideas for how to improve this but I don't want to use the list to
build support for anything that might not be workable for the company,
so I'll send them separately off-list.

I must just comment on the approach to the GPL licensing, which I see as
a classic example of the FUD approach that annoys me so much.

> A few comments on the statements below though. Firstly, the article Mark
> helpfully references is based on USA law. LiveCode is based in the UK.
> There isn¹t the same concept of ³fair use² over here, and various other
> aspects of copyright law are different. It would be hard to say that the
> statements in that article, if correct in the USA (and as I say they
> haven¹t been tested) would apply here.

The fact the copyright law is different all over the world and the right
jurisdiction for a copyright dispute is not always clear is another can
of worms entirely. However, most people discuss the GPL in terms of US
copyright law because that is largely what it was designed around. The
US has one of the broadest copyright protections in the world, almost
any copying at all is potentially copyright infringement and fair use is
then similarly broadly defined in order to mitigate that. While it's
true that in the UK we have fair dealing, which is much narrower than US
fair use, the scope of what use is restricted in the first place is much
narrower. So, under UK fair dealing, the only infringing use of LiveCode
copyright that would likely be allowed is non-commercial research or
study. However, UK copyright infringement requires much more substantial
copying to take place and case law tends to focus on direct competition
in the marketplace for smaller amounts of copying - e.g. if someone's
app doesn't directly compete with LiveCode itself and only includes
small portions of the code, then it's probably not considered copyright
infringement at all. This is because copyright was never intended to
prevent people from taking someone else's work and building on it to
create new creative works. US copyright law got a bit lost here. From
this perspective it's good that LiveCode has so many users in the US,
where US copyright law could be applied. I believe German copyright law
is much more like US copyright law than UK law too. Within the EU, you
can bring a case in any country where the infringing software is
accessible I believe - that might be helpful pre-Brexit. :)

Simply saying, it's different and hard to say if the same would apply is
classic uncertainty and doubt sowing, when the people releasing the code
under a certain license should be trying to remove as much uncertainty
and doubt amongst users as possible. Particularly when the license
itself is as complex and controversial as the GPL.

> Secondly, LiveCode is very different from Wordpress. Stacks are executable
> binaries that incorporate aspects of the engine. That's even more the case
> now when they start to use and include widgets. There isn¹t a good
> comparison with other text based languages. I personally doubt our script
> only components are GPL, but as I¹ve said this hasn¹t been tested in court
> and its not up to me.

That LiveCode is different from WordPress is true. Also that a stackfile
is more likely to be derivative (or at least subject to copyleft) than a
WordPress plugin is also something I'd agree with - as you say -
particularly if it includes widgets.

However, what I don't like is the "it's not up to me" line. Although
interpretation of the law is ultimately down to a judge (or possibly
jury), that court test is pretty unlikely to happen. In the absence of
an official ruling, it's up to the copyright holder more than anyone
else. Only 

Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-22 Thread Mark Wilcox
On Fri, Jul 22, 2016, at 04:53 PM, Rick Harrison wrote:
> Like I said, LC should consider creating their own license then.
> 
> After this little debate, I will never touch any GPL license ever
> in the future.  In fact, I now consider the community version
> of LC to be worthless.  I’ve always had an indy type license of 
> LC which I’m fine with.  I’m just now totally disappointed that 
> I can’t even suggest the community version to my friends to 
> try out since they wouldn’t be able to use any code generated 
> by it to be used in a later commercial product after they have 
> purchased an indy or business license.  What a waste.

I really don't think there's anything wrong with the GPL for this kind
of usage. The issue is with LiveCode (the company) and how they are
attempting to interpret its application to their code. To be honest I
very much doubt even the FSF and SFLC would support LiveCode's current
position.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-22 Thread Mark Wilcox
On Fri, Jul 22, 2016, at 03:10 PM, Rick Harrison wrote:
> If the GPL license is overly restrictive perhaps LC should consider
> releasing the
> community version under a license similar to that used by PostgreSQL,
> MIT,
> or create it’s own Community License.  Clearly what they are doing now is
> creating a mess that is causing confusion in the marketplace for them.

That would be fatal to LiveCode's business. No-one would need a
commercial license if the engine was MIT licensed.

I don't actually have any problem with the GPL for a dual-licensing
model. It's pretty tried and tested. Qt has been doing it for very many
years and yet they have never tried to claim any copyright in their
users software, they just insist that a program distributed with the GPL
version of the Qt libraries is released under a GPL-compatible license.
Developers working with the GPL version can create plugins for others
and sell them commercially, the user of those plugins would need to get
their own commercial license to make use of them in a closed source app.
The Qt company folks view this as very positive activity in their
ecosystem.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-22 Thread Mark Wilcox
On Fri, Jul 22, 2016, at 03:38 AM, Richard Gaskin wrote:
> Mark Wilcox wrote:
>
>  > My concern around LiveCode over-reaching with their derivative
>  > work claims (which are significantly stronger than those made
>  > by WordPress and Drupal)
>
> In what way(s)?
 
OK, it's not wise to pull too hard on this thread, because LiveCode does
potentially have an issue with people distributing stackfiles
commercially, separate from a copy of the engine.
 
That said, several noteworthy points exist in this regard:
1) First, the Software Freedom Law Centre - which tends to be rather
   biased in attempting to push copyright law interpretations in a way
   that strengthen's copyleft licenses - has only given an opinion on
   WordPress themes, not plugins. That analysis suggested that the PHP
   code in themes was essentially trivial, just calling a fixed set of
   APIs to enable the CSS and images to be used in the right places.
   It's debatable but not unreasonable to suggest that the PHP code in
   themes is subject to the GPL. The SFLC specifically said that the CSS
   and images were not subject to the GPL.
 
2) A core WordPress contributor, Mark Jaquith, publicly stated at the
   time of the SFLC statement on themes that the same argument applied
   to plugins as well. He has since reconsidered that opinion and isn't
   so convinced about themes any more either (see his comment on this
   blog:
   
https://enriquesthoughts.wordpress.com/2014/01/05/wordpress-is-gpl-must-your-plugin-be-as-well/
   - specifically:
"Very well argued. My thinking on this matter has evolved since I wrote
my post, 3+ years ago. The thing about the GPL is that it is a legal
hack. For it to work, it relies on legal concepts like what constitutes
a derivative work. And while some plugins could unambiguously be
derivative works, I no longer think they must necessarily be so, and I
suspect the majority would not be considered derivative works (by a US
court, at least). Same goes with themes with the caveat that themes are
more likely to contain code lifted from WordPress, so they might veer
towards derivation more often than plugins do."
Proprietary WordPress plugins are extremely common and largely
tolerated. Proprietary themes do still exist but are slightly more
frowned upon.
 
3) Drupal modules/plugins are frequently designed to modify the way that
   Drupal works. That does create some reasonable case for them being
   derivative works. The reality is probably that some Drupal plugins
   are derivative and some are not.
 
4) LiveCode is basically claiming that anything written in the language
   is derivative. There is no precedent for this anywhere. Also, large
   parts of the language itself are not really owned by LiveCode, it has
   been previously released under more permissive licenses. Effectively
   by creating a language, you create a new form of expressing creative
   works. It is almost certainly not possible to copyright everything
   expressed in a language. Add to this that the language is "English-
   like" and a lot of the time LiveCode are trying to claim copyright
   over English words... likely to be laughed out of court.
 
5) One of the most critical elements in a court's decision on whether or
   not any use of a copyrighted work is "fair use" is the degree of
   transformative nature of the work. The LiveCode engine is a general
   purpose runtime designed to execute arbitrary programs, on its own it
   doesn't "do" anything. The same broadly applies to any APIs it
   provides. It would be very easy to argue that creating almost any app
   that has a useful specific function is highly transformative of the
   engine code.
 
6) All is not lost for LiveCode in (5) because distributing a standalone
   would involve a direct copying of the entire engine, which would very
   likely override the transformative nature of the use in almost every
   conceivable case. However, the amount of LiveCode owned copyrightable
   material in a stackfile is likely very small and the amount in a script-
   only stack almost non-existent.
 
7) No-one can know the actual position for certain because this has
   never been tested in court.
 
>  > I'd really hope to see a more enlightened policy here
>
> Apparently some clarification would be useful.
 
Don't try to force the GPL on stackfiles created with the community
edition, only standalones. Encourage dual licensing or permissive
licensing. Allow the community edition users to create valuable code
that can also benefit commercial users. Even encourage them to dual
license and sell that without getting a commercial license (we're not
talking about a big market LiveCode would lose out on here). By all
means suggest that anyone building a successful business around this
practice should buy a license to support LiveCode but don't try to force
them to do so with GPL FUD.
 
Frankly, even with a commer

Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-21 Thread Mark Wilcox
So the important clause is this one:

b) The ability to create and distribute Created Software is intended for
You to use with applications You have created or been substantially
involved in developing. You are prohibited from using the Licensed
Edition to build standalone applications for others where You are not
the author of the application, or confer on others the ability to build
standalone applications by any means whatsoever. For the avoidance of
doubt, You may not use the Licensed Edition to create or distribute
Created Software for other users who are using the Community Edition of
LiveCode. This clause is intended to prevent You from providing any
facility or service which would reduce or eliminate the requirement for
other LiveCode users, including users of the Community Edition, to
purchase a Licensed Edition to distribute their own Created Software.

My interpretation (not professional legal advice) is that if you have a
commercial license and you decide to build an open source app released
under the GPL, such that community edition users can use the code if
they want, then you could take patches from community edition users and
as long as they assign copyright you can still release the app on the
App Store.  The reverse situation, where a community edition user has a
GPL app and you as a commercial license holder submit a patch, then
offer to take a non-GPL copyright license (or ownership of the
copyright) and publish on the App Store is clearly not allowed. Anything
in between seems like a grey area and would need clarifying with HQ.

I'm not interested in finding GPL loopholes but rather the health of the
LiveCode ecosystem and removing FUD from open source licensing in
general. My concern around LiveCode over-reaching with their derivative
work claims (which are significantly stronger than those made by
WordPress and Drupal) is that what constitutes a derivative work under
copyright law is not in any way altered by the license applied. So, if
the original code in an app written by a community edition user is
judged not to be a derivative work, then there is nothing that can be
altered in the license to fix that "loophole" in LiveCode's intended
licensing scheme. Having the investment of a lifetime license, I'm not
keen to see LiveCode basing part of their business model on a very
dubious interpretation of copyright law, which also restricts the useful
sharing of code between community edition users and commercial license
holders.

I'd really hope to see a more enlightened policy here. It's much like
the question of trying to prevent app piracy. There's no point. The
people who would pirate were never going to pay anyway. Give people good
reasons to do the right thing and pay, rather than try to scare them
into doing so with GPL-related FUD.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk



___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-21 Thread Mark Wilcox
> If student A wants to assign or sell student B all copyright rights for
> his work
> for let’s say $1.00 (which is consideration in the legal sense of then
> word.)
> then student B legally owns all copyright rights to that work.  It is
> treated
> as though it 

Work for hire is a separate (although related) issue. I completely agree
that LiveCode cannot (with copyright law at least) prevent developers
doing work for hire using a community license only. Of course morally if
someone is making a living doing LiveCode contract development, then
they ought to have their own license but if they don't need to publish
their work themselves, the GPL doesn't place any restrictions on them.

The only reason copyright assignment is required in the collaborative
no-fee changing hands case with one license holder is because the GPL is
incompatible with the App Store EULA and so whoever has the LiveCode
license needs to own the copyright to the rest of the code to be able to
distribute on the App Store GPL-free.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Licensing AGAIN [was: Sharing FontLab Plugin]

2016-07-21 Thread Mark Wilcox
> So If student A writes down some code on text wrangle and gives it to
> student B who (thanks folks) have an indy license, that belongs to student B
> and he can dispose of it as he wishes, open sourced or closed source.

> In that case it seems to me that it is just a case of confidence between the
> group of happy co-contributers, co-thinkers.

If student A assigns his copyright in the code he has written to student
B, and student B has an Indy license then student B can probably publish
on the app store as long as he has written substantial portions of the
whole app himself.

Student A might not be able to assign all of the copyright in his code
to student B (because LiveCode claim it is a derivative work - although
I doubt a judge/jury would agree with them, this has not been tested).
However, any copyright LiveCode claim in the work is OK because student
B already has a license for this anyway. So the GPL is not an issue in
this.

The issue is the wording of the Indy license, which I was going to check
but livecode.com seems to be down. I seem to remember there's an
explicit clause against publishing the work of others, unless you've
written substantial parts of it yourself.

Confidence between co-contributors has no legal basis here.

I continue to believe that despite the obvious struggles LiveCode is
having getting enough licensing revenue, they're shooting themselves in
the foot by trying to over-reach on claiming community users code is a
derivative of the engine.

Mark

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Community PDF Project (was Revenue and the Open Source edition)

2016-05-04 Thread Mark Wilcox
> In a former, not so old, enormous thread dealing with the FOSS license
> and
> trying to understand what it meant in practice, one of the conclusion was
> that *only Livecode can dual license*. Nobody else can do that. And Kevin
> Miller really pushed hard on that point.

Only Livecode can dual license the engine. I think they actually
encourage external/widget/library builders to also dual license.

The argument Livecode have been making is that someone with a community
license only cannot dual license - that basically anything you make with
or for Livecode is a derivative work and you need a commercial license
of some kind if you want to distribute it under anything other than the
GPL. I think they're wrong in this both legally and from a community
building perspective but it's not completely black and white.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Summary: Open source, closed source, and the value of code

2016-03-03 Thread Mark Wilcox
I've hesitated to wade in on this but I think LiveCode's "official"
interpretation of the GPL is wrong and also a mistake. I thought that
there was a policy of encouraging those that produce libraries for other
developers to also dual-license them - I didn't realise that was only
supposed to be allowed for those with a commercial license.

I am not a lawyer. However, I did work for an open source foundation
(The Symbian Foundation - sadly a very short-lived one) and spent lots
of time studying the relevant technical and legal issues and talking to
our in house copyright and software licensing expert lawyer. I was the
person that wrote the licensing FAQs.

Also relevant to what I'm about to say:
1) I've consulted for Intel, Microsoft, Amazon, Google and (also now
almost dead but not because of my advice) BlackBerry on developer
ecosystem issues.
2) I'm a lifetime license holder from the original open source
Kickstarter campaign - I want LiveCode to succeed.
3) I don't actively use LiveCode... just try new bits occasionally. I'm
still waiting (since that original Kickstarter) for what has become v8
and hoping it's good!


First the legal... I really don't believe the GPL can apply to script
only stacks and probably not stackfiles either, just because they were
created with the community version. The case for standalones is much
stronger and I think LiveCode is pretty safe there.

A few points:
> The most critical thing to remember is that it is the *intent* of the 
> GPL that actually matters and not the current text of any particular 
> version. The simple reason for that is if the GPL is ever tested in 
> court and the outcome is not favourable or contradicts any 
> interpretation the FSF have made of it then the FSF will produce a new 
> version which closes any loopholes which have been exposed in the court 
> case.

Legally it is the text that matters and it's not at all certain that all
loopholes can be closed. The FSF are doing something quite ingenious but
they're attempting to extend copyright law in a way it was never
intended to go. Any license they can come up with is fundamentally
constrained by what constitutes a derivative work and what is or is not
fair use.

> The intent of the GPL is clear - it is fundamentally about building an 
> ecosystem of software where everyone has the right to contribute to it. 
> Nothing more, nothing less. It is not an economic force (and thus has 
> nothing to do with money) it is a creative force. It is about ensuring 
> that if I receive a piece of software then I also have the right to 
> modify and adapt that software and distribute any such modifications.

Creating and distributing scripts or stackfiles with LiveCode does not
in any way interfere with the rights or ability of others to modify,
adapt and distribute LiveCode itself. The key distinctions from the
Joomla and WordPress plugin scenarios (where there are already plenty of
IP lawyers who'd disagree strongly with the FSF) are:
1) The GPL is designed to protect programs, not programming languages.
It specifically contains language that excludes "Standard Interfaces"
which are in common use amongst a programming language community. Given
it's a language that predates the company and has existed under more
permissive licenses in the past it'd be hard to claim it as exclusively
LiveCode's IP anyway.
2) The PHP code (which is the only part covered by GPL according to the
FSF, not CSS or images) in WordPress or Joomla plugins can only by
executed in the context of WordPress or Joomla respectively and those
are only available under the GPL. In the case of LiveCode scripts/stacks
they can be executed in the context of a non-GPL program - the
commercial LiveCode engine.

> Absolutely every piece of software is derived from a set of files which 
> can be considered the 'source code' - whether that be actual 
> source-code, artwork, music, prose, or whatever - which is then 
> processed using some set of tools to produce something that you can 
> actually run and use - this is always 100% crystal clear.

If it's absolutely 100% crystal clear what the 'source code' is when it
comes to the GPL and it includes things like artwork, then why would the
FSF even exclude the images and CSS from inclusion in WordPress and
Joomla plugins licensing under GPL? It's because the plugin case is a
real stretch for the GPL - we're talking original creative work that
would be usable in another non-GPL covered environment (see point 2 in
the previous section).

> The point here is very subtle but I do believe it is happily 
> covered by the standard notions of 'derivative work' and there is a 
> simple acid test: could you have written the content of your 
> script-only-stack text file without using the ideas, notions and 
> existence of LiveCode?

This is not at all the standard notion of 'derivative work' in copyright
law. The law in many large countries (including the US, which I believe
is LiveCode's biggest market) 

Re: Open source, closed source, and the value of code

2016-03-01 Thread Mark Wilcox
> • What can we/or can't we do with the Open Source version
> • Where does the commercial version step in
> 
> So far, the Q/A on live code site that give examples only deals with the
> CODE and not the content.

The GPL requires that if you distribute your work, you distribute with
it everything needed to make it work under a license compatible with the
GPL. You also have to be able to modify the code and still have a
working version.

It is possible to ship a GPL program with proprietary assets, as long as
they are not essential to its function. Something some games have done
is ship a GPL version with a single working level and assets for other
levels remain proprietary. This is usually where someone has cloned a
game using the original assets - they say if you own the original you
can use theirs with the official assets. This is clearly not in the
spirit of the GPL but that kind of workaround does happen.

Designs can be registered but they are not subject to copyright law in
the same way as text/code is almost globally, so the GPL cannot really
say anything definitive about those. IANAL but I suggest you'd have a
hard time prosecuting someone for using your design if you'd released
open source code that implemented it. There is a similar debate about
patents... and much discussion on that in the open source community.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Any LiveCoders who also use Xamarin?

2016-01-22 Thread Mark Wilcox
> I'm in an slightly weird situation with a client where they want me to
> use
> Xamarin instead of LiveCode for a project (for internal 'political'
> reasons
> as much as anything as far as I can see) - have any of you tried Xamarin
> and
> if so what did you think of it?

I think the important thing to know about Xamarin before getting started
is that there are 2 very different ways to do the UI. One is to build a
separate UI for each platform and there Xamarin really just provides
thin (auto-generated) C# wrappers around the platform UI components - so
you have to learn the APIs for each platform. The other is
Xamarin.Forms, which is a true cross-platform solution but relatively
limited and designed for rapid application development.

Xamarin is pretty capable (indeed you can access any native API) but
performs quite poorly on Android if you need to call the Android Java
APIs a lot. Nothing you'd worry about in an "enterprise" app but
probably not advisable for a mass market consumer effort.

Depending on what platforms you need to support, whether you can use
Forms, and whether or not you already know C#, there can be a pretty
steep learning curve.

Hope that helps,
Mark

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: video conferencing with LiveCode?

2015-08-25 Thread Mark Wilcox
 Just received a query about an app/service that would allow face-to-face
 chat...
 
 Have any of you managed to do this in LiveCode? And/or could you
 recommend a
 service a LiveCode app could hook into?

Almost all of the video chat APIs are built on WebRTC these days. That's
an open standard implemented in some (but not all - Safari is notably
absent) of the major browsers. There are native SDKs for mobile
platforms, plugins for older versions of Internet Explorer etc.

It's not currently enabled in the embedded browser in LiveCode (for
desktop platforms) as far as I know.

You certainly could implement WebRTC for LiveCode but it probably makes
more sense to do this as a web app.

Mark

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: 3 strategic questions I have re iOS development

2015-05-07 Thread Mark Wilcox
Hi Bill,

 1. Can iOS do audio recording, without Xtras?
Not as far as I know. You don't need mergAV though, Monte also has an
open source external mergMicrophone.

 2. Is it possible for LC to link to iTunes songs. Seems I really only
need to determine the directory. I notice there is also a mergeMP
extra, but since I’ll just be playing a selected audio file, I
wonder if it is needed.
On iOS you can't access files belonging to other apps directly.
There are APIs for accessing your media library and hence an
external is needed.

 3. What is the simplest way to store a file in the iOS dropbox (or
Google Drive)? Do I need an external for that?
Monte to the rescue again for the simplest way with mergDropbox. They
have a REST API though, so free and external free option here:
http://forums.livecode.com/viewtopic.php?t=12549

 4. Is it possible (or feasible) to store data in the user’s iCloud
storage?
iCloud drive doesn't have an open web API you could call from LiveCode
(or they couldn't keep it to Apple devices only) so you'd definitely
need an external or extension for this. It is entirely feasible though.

Depending on your timescales and willingness to dig into Apple, Dropbox
and/or Google documentation, you could just start with LiveCode 8 and
try building some extensions. Otherwise I think for most of this you're
still going to need externals.

Mark

--
Mark Wilcox m...@sorcery-ltd.co.uk

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Android Intents/iOS Extensions?

2015-04-23 Thread Mark Wilcox
 On 23 Apr 2015, at 18:43, Richard Gaskin ambassa...@fourthworld.com wrote:
 
 1. Before I dive in, does anyone here know why this wouldn't work?

Custom URLs and Intents are two different systems. The former requires the app 
you receive data from to know about your custom URL scheme. The same exists on 
both iOS and Android. Intents on the other hand, in common with the new iOS 
extensions, allow your app to register as a potential recipient of certain 
common actions.

In both cases you need something different than a URL handler to do the 
receiving.

I don't think Intent handling would be particularly difficult to add to the 
engine. Extensions on iOS would be more complex as the different types have 
their own APIs.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Android Intents/iOS Extensions?

2015-04-23 Thread Mark Wilcox
On Thu, Apr 23, 2015, at 03:45 AM, Richard Gaskin wrote:
 I'd like to have an app be able to accept data from other programs, like 
 when you click the Share button in an image gallery and a list of 
 programs pops up that can accept images - I'd like mine to be among them.
 
 I can see from the iOS and Android docs how to register that support in 
 the manifest, but the APIs for actually receiving the data appear to be 
 lower-level, and I haven't found LiveCode messages for those.
 
 Am I dreaming, or have I just overlooked something buried in a Release 
 Note somewhere?

Not dreaming. Intents have been around forever on Android but I don't
believe LiveCode currently supports receiving them. Extensions are iOS
8+ only, so it's not so surprising that they're not yet supported.

Mark

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Stacks and livecode server?

2015-04-21 Thread Mark Wilcox
 I wish Apple's rules were clearer on this so we could end the confusion 
 without our community.

Obviously Apple has nothing to say specifically about stacks (a bit too
niche) but I think the rules are quite clear. Previously you could not
download executable code of any kind unless it was JavaScript downloaded
by a WebView. There's then a separate requirement not to significantly
change the functionality of the app, which applies whether you are
downloading code or not (e.g. something very different cannot be in the
original code but not activated until some later time or after checking
a certain value on a server).

More recently Apple has added the option to download JavaScript to their
JavaScriptCore engine, which they exposed a new interface to in iOS7.
The reason that Apple give to only allow code downloading to their
JavaScript runtimes is security. I think they're much less concerned
about what an individual app might do (they can pull it from the store
and even remotely remove it from devices) but rather what might happen
if a vulnerability was exploited in a widely deployed third party
runtime.

 AFAIK they have no prohibition on downloading binary files, so stack 
 files that contain media but no code, or even behavior-driven stack 
 files that contain no code themselves, would reasonably seem to fit the 
 narrowest definition of their TOS.

Yes, you can download bundles of content with no code. The file format
doesn't matter. Unity has asset bundles that can contain code on other
platforms but are content only on iOS. I'm not sure if a stack has
significant advantages over some other format here but I don't see why
you shouldn't.

 But they might even allow stack files that contain code, providing the 
 code doesn't substantially alter the features of the app.

That's certainly against the letter of the rules as they stand. Of
course Apple can't really know what every app with every possible 3rd
party runtime is doing, so you may well get away with it. Who wants to
risk getting booted out of the developer program though?

Mark

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Tue, Apr 21, 2015, at 01:43 AM, Richard Gaskin wrote:
 jbv wrote:
 
   Richard Gaskin wrote:
   A majority of the projects I'm working on at the moment are
   standalones that download stacks - depending on what your app
   does and the needs of its audience, it can be an excellent
   delivery solution.
  
   Same here.
   But there's a question in my mind for quite a while : as I'm about
   to develop apps for some professionals who will use them on iPads
   and iPhones, I was wondering how this follows Apple's rules ?
   After all, what prevents to submit a first version of the app, and
   once it's available on the Appstore, to switch to different
   downloaded stacks, with different functions and content ?
   Am I missing something ?
 
 I wish Apple's rules were clearer on this so we could end the confusion 
 without our community.
 
 I haven't read Apple's TOS in a while, and no matter what the rules are 
 today as we learned in 2010 Apple has demonstrated a willingness to 
 change them drastically without warning, so there's no way to know what 
 they'll be tomorrow.
 
 So while I can't speak for Apple, that won't stop me from random
 conjecture:
 
 Any script engine can download files containing scripts from a server, 
 thereby enhancing or even altering the behavior of the app.
 
 I believe Apple's concern here is merely to make sure the user 
 experience they approve is what end-users get.
 
 AFAIK they have no prohibition on downloading binary files, so stack 
 files that contain media but no code, or even behavior-driven stack 
 files that contain no code themselves, would reasonably seem to fit the 
 narrowest definition of their TOS.
 
 But they might even allow stack files that contain code, providing the 
 code doesn't substantially alter the features of the app.
 
 That is, if you get approval for an app that claims to track football 
 scores, but once it's released it suddenly morphs into a root kit. Apple 
 would probably not want to see that.
 
 But if the app merely downloads stack files containing data and UI 
 elements for new teams or other things that don't fundamentally alter 
 the app's purpose or behavior, it would be hard to believe they'd ban it 
 from the app store.
 
 Has anyone here had a discussion with Apple on this?  Anyone using 
 downloaded stack files as data containers in a way that would seem 
 consistent with Apple's TOS?
 
 I'm not sure this issue is as murky as it seems, and may be quite simple.
 
 -- 
   Richard Gaskin
   Fourth World Systems
   Software Design and Development for the Desktop, Mobile, and the Web
   
   ambassa...@fourthworld.comhttp://www.FourthWorld.com
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit

Re: Stacks and livecode server?

2015-04-21 Thread Mark Wilcox
 On 21 Apr 2015, at 15:09, Richard Gaskin ambassa...@fourthworld.com wrote:
 
 Mark Wilcox wrote:
 
  Yes, you can download bundles of content with no code. The file format
  doesn't matter. Unity has asset bundles that can contain code on other
  platforms but are content only on iOS.
 
 Thanks for that info.  How does Unity provide cross-platform compatibility 
 while using two different delivery models?

Unity is the sort of cross-platform tool where you have plenty of conditionally 
compiled bits to deal with platform specifics. :)

Actually I think you couldn't deliver the code in asset bundles to iOS with 
Unity anyway because the bundles contain byte code for the Mono VM, IIRC, and 
the code is all compiled directly to a native binary on iOS, there's no VM to 
run it.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LiveNode Server

2015-04-14 Thread Mark Wilcox
This is an interesting thread. Let me add a few comments:

The CGI / FastCGI thing is a red herring. CGI is slow and so is FastCGI.
:)
Slighter faster options (e.g. for things like PHP and Python) implement
the language runtime via a plugin module to the web server.
However, things like Node.js and Go are fast because they don't have
Apache or similar in the way. I once saw a presentation by a guy that
had built the most carefully optimised (and very popular) HTTP proxy in
Python and then discovered that a very simplistic implementation with
Node.js was more than an order of magnitude faster. This was because
Apache was out of the loop, not because JavaScript is so much faster
than Python (it is faster but nowhere near that much).

Now Apache and other web servers are really good at serving up files but
these days we often want to build APIs. If you've got static files
you're better off putting them on Amazon S3 or similar. For getting a
chunk of JSON querying a database and spitting some more JSON back the
other way you're better off with something architecturally like Node.js.
The fact that the whole ecosystem has been forced to do everything
asynchronously is a big help. JavaScript and its single threaded nature
are not virtues here but not a fatal handicap either. Someone mentioned
Meteor.js - that's built on Node.js but they actually use Node Fibers,
basically lightweight threads (that have to yield explicitly - no
pre-emption) - it makes the code a whole lot more readable.

Not having real threads is bad when it comes to processor intensive
operations but Node.js got a very long way without them and I think a
Node-like LiveCode server could too. It would need to have proper
asynchronous I/O everywhere though and that's not trivial from where we
are now. It is definitely a project worth pursuing if anyone has the
time. The quickest way to get their might be to integrate libevent (as
used in Chromium) rather than libuv (as used in Node.js) because it
comes with DNS, HTTP and SSL support - you really want all of those in
the C/C++ layer, not implemented in LiveCode on top of a raw socket . It
might not be the best way overall but alternatives probably involve
quite a lot more work.

Adding something like blocks in Objective-C (very closure-like), or
Node's TAGG, to enable real multi-threaded programming but limited to
avoid all the usual thread synchronisation headaches would also be
fantastic for LiveCode but another big chunk of work. There didn't seem
much point in even looking at any of these things while the engine was
undergoing a major architectural overhaul but maybe things are starting
to stabilise enough now that it'll make sense to think about them again
soon.

Mark

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Wed, Apr 8, 2015, at 02:47 PM, Andrew Kluthe wrote:
 To clarify just a little bit further. The code and objects weren't
 holding
 onto memory, the variables used in that code were due to weird scoping.
 Big
 chunks of db results, etc that persist after I've already done my
 business
 with them and tried to move on.
 
 If I can recommend a book on Javascript, I can't speak highly enough of
 the
 insights given by  JavsScript: the Good Parts from O'Reilly. He
 provides
 some history behind some of the design choices in javascript and some of
 the problems still being worked around today in regards to the bad parts.
 

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Why can't LC do what PencilCase does?

2015-04-14 Thread Mark Wilcox
Apple added another exception to the code downloading rule, using 
JavaScriptCore you can download JavaScript and run it. So it probably is just a 
WebView but it doesn't have to be.

Sent from my iPhone

 On 14 Apr 2015, at 17:24, Geoff Canyon gcan...@gmail.com wrote:
 
 No idea. Their basic projects don't have code -- just a bunch of
 properties that include things like when this happens, do this, but then
 you can open the project up and write javascript. Maybe the end result is a
 specialized web page? I'll experiment more.
 
 gc
 
 On Tue, Apr 14, 2015 at 10:56 AM, Dr. Hawkins doch...@gmail.com wrote:
 
 On Tue, Apr 14, 2015 at 8:17 AM, Geoff Canyon gcan...@gmail.com wrote:
 
 
 If they can do it, shouldn't LC be able to as well? Or is there something
 I'm not thinking of?
 
 How are they getting past Apple's ban on downloading code???
 
 
 --
 Dr. Richard E. Hawkins, Esq.
 (702) 508-8462
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LiveNode Server

2015-04-14 Thread Mark Wilcox
 On 14 Apr 2015, at 18:17, David Bovill david@viral.academy wrote:
 
 Yes - thanks for the input Mark.
 
 How about having Livecode as a Node extension that we could install with
 NPM? Is that not a much easier first step? I still would like to get to the
 bottom of not being fork able means?
Unless you want to ban most of the language then you'd still have to replace or 
integrate the event loop with libuv, which is probably not a small or easy job. 
If a future LiveCode has a more modular core you might be able to take just the 
bits you need.

 
 It would be fantastic to get add Live code to a Node server with a couple
 of lines. Particularly for serving dynamically created images. I guess this
 route will also be possible when we have JavaScript export?
 
I think it would be possible with JavaScript export but that's a very 
heavyweight solution. Dynamically creating images is the sort of processor 
intensive task where Node performs badly. It would probably make more sense to 
have a separate LiveCode executable that can run in another process on another 
CPU core on the same server. You could signal it via sockets from the Node 
server, or even just communicate via the file system.

 On Tuesday, April 14, 2015, Jim Lambert j...@netrin.com wrote:
 
 
 Mark Wilcox wrote:
 
 This is an interesting thread.
 
 
 Indeed it is. Thanks for your informative comments.
 
 Jim Lambert
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com javascript:;
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Android local notifications

2015-04-03 Thread Mark Wilcox
Android can delay notifications for power saving reasons. As I understand it 
the more there are from one app and the less the user interacts with them, the 
more likely they are to be delayed.

I think to do what you want more reliably you'd need to use background 
processing (wake up every 30 seconds, clear the current notification and 
replace with a new one) and I don't think LiveCode enables you to that yet.

Mark

Sent from my iPhone

 On 3 Apr 2015, at 05:27, J. Landman Gay jac...@hyperactivesw.com wrote:
 
 Is anyone using local notifications on Android? I need to know more about how 
 they work and I can't find much online about it.
 
 I need to send notifications every half hour for a 5-minute period, 30 
 seconds apart. I have this working in theory; notifications are scheduled 
 correctly and mostly fire on time until the user opens the app, when I cancel 
 any pending ones.
 
 First issue: often some alerts do not trigger at all, or trigger 
 sporadically, or are significantly delayed (up to 2 minutes late.) A 5-minute 
 interval will have 10 notifications if the user does not respond. Sometimes 
 fewer icons appear in the status bar than audio alerts were heard. Sometimes 
 more icons appear than audio alerts.
 
 Second issue: I would like a way to replace an existing notification icon 
 with the next one (every 30 seconds) so that there is only one at a time, but 
 I don't see how we can do that. If the phone is sleeping or the app is 
 backgrounded we have no control, so to overcome that I need to schedule all 
 10 alerts in a block while the app is frontmost. When those come due they all 
 stack up in the notification bar until the user opens the app (when I cancel 
 them all.)
 
 So briefly, I need:
 
 Alerts to trigger on time, every 30 seconds, with no delay
 A subsequent alert should replace an existing alert
 
 The timely delivery is more important than the multiple icons in the status 
 bar. Does anyone know how Android prioritizes these? What are the rules for 
 the default priority, which I assume is what we've got.
 
 There are no other apps running on the phone, and it has no cell service. It 
 is intended to be a dedicated device for this one app, so there shouldn't be 
 anything else running except for normal OS operations.
 
 -- 
 Jacqueline Landman Gay | jac...@hyperactivesw.com
 HyperActive Software   | http://www.hyperactivesw.com
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: mobile app stores - personal v. corporate customers

2015-03-30 Thread Mark Wilcox
 Is it possible to have an app in both the Apple store and the Android store
 which functions in this way.

Yes. Apple and Google are not trying to make money out of your B2B sales. An 
ideal solution might be to have a free app with some minimal functionality that 
lets you unlock the main content/functions with an IAP or a company login.

Alternatively it is possible to create two versions and go the paid download 
route for the consumer version. Then in the B2B version you can have almost 
everything behind a login in a free app. Apple prefer it if the app does 
something without a login. The only major restriction is that you can't link to 
a website where a company could sign up and pay for your app.

Hope that helps,
Mark

Sent from my iPhone

 On 29 Mar 2015, at 00:33, Bernard Devlin bdrun...@gmail.com wrote:
 
 I haven an idea for an app which would function in 2 different ways.
 
 1. users pay to download the app, and the app writes no data back to a
 server
 
 2. companies would pay to provide the app free to their clients/staff, and
 data would be transferred between the company and the end user (the end
 user does not pay to download the app)
 
 Is it possible to have an app in both the Apple store and the Android store
 which functions in this way.
 
 In the 2nd situation, the company would pay a fixed fee for the provision
 of the app to their end users.  Somehow the Apple/Android stores are going
 to want payment for this situation (which is not the pay per deployment
 model).
 
 I'd be grateful if anyone has any ideas about how such things work.
 
 Regards
 Bernard
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LiveCode 8 Library Component: MLT Video Editing Framework

2015-03-22 Thread Mark Wilcox
Hi David,

Module is a generic term with a specific meaning in MLT (and slightly different 
meanings in lots of other projects). Dependencies and how they're resolved 
tends to be platform specific.

C code is just code and can be packaged up to be linked in a static or dynamic 
way.

You have to research each platform (and in some cases project) separately to 
understand how things are managed. I'd love to give some high level article 
pointers but I've never read any (although some probably exist). I think most 
people learn the details by trying to build these things for themselves, or 
port them to new platforms.

LiveCode widget vs. shell command - a widget will be much more integrated. It 
depends what the library does as to whether this just adds convenience and 
performance, or makes the previously impossible possible.

Sorry those are very generic answers but you're opening up a very big topic and 
I'm typing on a phone. :)

Mark

Sent from my iPhone

 On 22 Mar 2015, at 07:58, David Bovill david@viral.academy wrote:
 
 Thanks so much for the reply Mark. I would like to understand the
 difference between module and dependent code sufficiently to be able to
 look at C code and its documentation and understand this issue.
 
 When a package manager (like brew) lists a bunch of things it is going to
 install is there a way to know what sort of dependency is being fetched?
 
 Other questions (related to the one above) I'd like to get a handle on -
 specifically in this area of wrap-able command line tools: what are the
 advantages to wrapping a library in a widget over creating a library in
 livescript that makes shell calls?
 
 * is there a speed advantage (its usually only one shell call out per
 library handler)
 
 Taking MLT as an example - it uses / depends on FFMPEG. My assumption is
 that this is a module, and that if it were installed on my machine with an
 appropriate package manager then would my MLT widget library would be able
 to use FFMPEG?
 
 Any pointers on reading / how to gain this level of knowledge would be
 greatly appreciated.
 On Sun, 22 Mar 2015 at 06:40, Mark Wilcox m...@sorcery-ltd.co.uk wrote:
 
 The framework is free of dependencies and probably quite easy to wrap as a
 component for LiveCode 8. However, on it's own it doesn't do anything.
 There are lots of modules that make it incredibly powerful but they do have
 dependencies, some of them huge, like Qt. The video rendering is via SDL,
 so it's not immediately clear how you'd integrate that with the rest of
 your LiveCode app. It might be necessary to replace that module.
 
 If you wanted to write video editing tools in LiveCode this might be a
 good place to start. For other AV related functionality it'd probably be
 better to go for simpler single purpose libraries.
 
 Mark
 
 Sent from my iPhone
 
 On 21 Mar 2015, at 17:16, David Bovill david@viral.academy wrote:
 
 This framework is great and written in C -
 http://www.mltframework.org/bin/view/MLT/Framework
 
 It's the basis for most of the best cross platform video editors. On OSX
 I
 can recommend http://www.shotcut.org/
 
 Does that look like a good candidate for a new LiveCode 8 library
 component?
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LiveCode 8 Library Component: MLT Video Editing Framework

2015-03-22 Thread Mark Wilcox
The framework is free of dependencies and probably quite easy to wrap as a 
component for LiveCode 8. However, on it's own it doesn't do anything. There 
are lots of modules that make it incredibly powerful but they do have 
dependencies, some of them huge, like Qt. The video rendering is via SDL, so 
it's not immediately clear how you'd integrate that with the rest of your 
LiveCode app. It might be necessary to replace that module.

If you wanted to write video editing tools in LiveCode this might be a good 
place to start. For other AV related functionality it'd probably be better to 
go for simpler single purpose libraries.

Mark

Sent from my iPhone

 On 21 Mar 2015, at 17:16, David Bovill david@viral.academy wrote:
 
 This framework is great and written in C -
 http://www.mltframework.org/bin/view/MLT/Framework
 
 It's the basis for most of the best cross platform video editors. On OSX I
 can recommend http://www.shotcut.org/
 
 Does that look like a good candidate for a new LiveCode 8 library component?
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [semi-OT] Distributing apps for iOs outside iTunes

2015-03-18 Thread Mark Wilcox
I've used Ad Hoc Distribution for this a few times before - it can become a  
bit of a pain because employees join and people get new devices - you have  
to manage updates to the provisioning profile manually - more often than  
you'd think. 


A better option is if you can get the client to join the iOS Developer  
Enterprise Program: 

https://developer.apple.com/programs/ios/enterprise/ 


It's $299/year but then you can get Enterprise distribution profiles/ 
certificates. These don't have any device restrictions at all, it's just  
part of Apple's rules that they're only allowed for internal use within an  
Enterprise. This removes all the issues with collecting UDIDs and keeping  
provisioning profiles updated. 


-- 

Mark Wilcox 

m...@sorcery-ltd.co.uk 


On Wed, Mar 18, 2015, at 06:36 AM, j...@souslelogo.com wrote: 

 Hi list
 One of my clients needs an app for his employees that will run
 on their iphones or itabs. Those employees are very few (less than
 10) and no one else will be interested in the app because it's
 related to a very specific activity, therefore using iTunes doesn't
 seem relevant.
 I took a look at Apple's distribution options, and the Ad Hoc
 Distribution looks like the way to go, but I was wondering if
 anyone had already use it, or if there was any better option...

 Thanks in advance
 jbv


 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [semi-OT] Distributing apps for iOs outside iTunes

2015-03-18 Thread Mark Wilcox
I have some points to consider here having done it both ways a few
times:
1) I'd definitely have them give you sufficient permissions to manage
the certificates, keys and profiles yourself in their account. You still
do everything apart from sign-up, pay and sign (click through) contracts
with Apple, the account is just in their name.
2) The enterprise account's extra $200/year should be saved in the cost
of your time not managing profile updates and issuing new builds when
devices change (maybe not for a lot less than 10 people, but still the
difference must be almost nothing in the total development cost).
3) It also removes any delay for a new employee/device - the enterprise
signed build can be installed automatically without going through the
whole UDID collection, provisioning profile update and rebuild process.
This is what enterprise accounts are for. Not having to explain why it
doesn't work on new devices (which is after all rather technical and all
down to Apple) is also of value. Overall a better customer experience.
4) If you build up a decent sized client base over time you will
struggle with the 100 device limit, even in multiple standard developer
accounts (I have access to 4 accounts at the moment, 2 of them are
almost at the limit). I've mostly used ad-hoc builds for demos for
potential new clients - even that can fill up your device slots over
time.
5) In theory you can remove old devices but do you want your clients to
have to tell you when they retire old ones? Will they remember anyway?
Analytics can no longer tell you which UDIDs are still in use, since
developer access got cut off some time ago.

Technically ad-hoc distribution shouldn't be used to deliver to clients
for internal builds but I can confirm that Apple shows no signs of
caring about enforcing that.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Wed, Mar 18, 2015, at 12:06 PM, Mike Kerner wrote:
 I take this the other way:  I want more control, not less.  I take it
 personally when something I build isn't freaking awesome.  I consider
 other
 enterprises' employees to be part of my team when I write something for
 them.  I am their IT guy, so the last thing I want to do is take a chance
 on someone over there dropping the ball and making something break,
 that
 I then have to clean up, especially when they're under the gun.  Spoiling
 them rotten is my privilege.  They will be in one of my profiles.
 
 On Wed, Mar 18, 2015 at 7:58 AM, Matthias Rebbe | M-R-D 
 matthias_livecode_150...@m-r-d.de wrote:
 
 
 
   Am 18.03.2015 um 12:16 schrieb Colin Holgate colinholg...@gmail.com:
  
   I would do a mixed approach. Get your client to join at $99 per year,
  and to have you as a team member. They would include at least one of your
  devices in their list, so you can test installs, and you would be able to
  build for up to 100 devices. If they only need about 10, that would cover
  quite a few employee and device changes.
  
  And if i remember right every year you can reset that list of devices.
  This would allow you to delete non active devices and it increases the
  number of possible test devices again.
 
 
 
 
  
   On Mar 18, 2015, at 6:23 AM, Mark Wilcox m...@sorcery-ltd.co.uk
  wrote:
  
   I've used Ad Hoc Distribution for this a few times before - it can
  become a
   bit of a pain because employees join and people get new devices - you
  have
   to manage updates to the provisioning profile manually - more often than
   you'd think.
  
  
   A better option is if you can get the client to join the iOS Developer
   Enterprise Program:
  
   https://developer.apple.com/programs/ios/enterprise/
  
  
   It's $299/year but then you can get Enterprise distribution profiles/
   certificates. These don't have any device restrictions at all, it's just
   part of Apple's rules that they're only allowed for internal use within
  an
   Enterprise. This removes all the issues with collecting UDIDs and
  keeping
   provisioning profiles updated.
  
  
   --
  
   Mark Wilcox
  
   m...@sorcery-ltd.co.uk
  
  
   On Wed, Mar 18, 2015, at 06:36 AM, j...@souslelogo.com wrote:
  
   Hi list
   One of my clients needs an app for his employees that will run
   on their iphones or itabs. Those employees are very few (less than
   10) and no one else will be interested in the app because it's
   related to a very specific activity, therefore using iTunes doesn't
   seem relevant.
   I took a look at Apple's distribution options, and the Ad Hoc
   Distribution looks like the way to go, but I was wondering if
   anyone had already use it, or if there was any better option...
  
   Thanks in advance
   jbv
  
  
   ___
   use-livecode mailing list
   use-livecode@lists.runrev.com
   Please visit this url to subscribe, unsubscribe and manage your
   subscription preferences:
   http://lists.runrev.com/mailman/listinfo/use-livecode
  
   ___
   use

Re: [semi-OT] Distributing apps for iOs outside iTunes

2015-03-18 Thread Mark Wilcox
I've used ad-hoc provisioning as a free and simple per device licensing 
mechanism before but it doesn't offer any protection. Devices get lost and 
stolen and you can't remote kill the app via the provisioning mechanism. 
Anything with a real data security requirement has to have a user 
authentication system. Whether you or the client manages that is up to them and 
their IT capabilities.

Too easy to disagree while talking in generalities though. Every client app is 
different.

My main point for this thread is that the enterprise developer account is a 
major convenience and worth considering. I once had a large client that got one 
just for internal test builds, the app was for consumers and releases were on 
the App Store. Even then it saved a lot of time and hassle.

Sent from my iPhone

 On 18 Mar 2015, at 16:24, Mike Kerner mikeker...@roadrunner.com wrote:
 
 The reason for explicitly provisioning (and therefore multiple developer
 ID's), and banning a device is that you get an extra layer of protection
 for your corporate clients from having just anyone with their random device
 get access to the corporate app.  That also means when someone leaves you
 have the ability to explicitly cut them off from updates.  Sure, you can
 hope that the corporate IT department locks them out, as well, but this way
 you have an incentive to communicate with them at least once per year about
 who has access.
 
 On Wed, Mar 18, 2015 at 11:02 AM, Mark Wilcox m...@sorcery-ltd.co.uk
 wrote:
 
 I have some points to consider here having done it both ways a few
 times:
 1) I'd definitely have them give you sufficient permissions to manage
 the certificates, keys and profiles yourself in their account. You still
 do everything apart from sign-up, pay and sign (click through) contracts
 with Apple, the account is just in their name.
 2) The enterprise account's extra $200/year should be saved in the cost
 of your time not managing profile updates and issuing new builds when
 devices change (maybe not for a lot less than 10 people, but still the
 difference must be almost nothing in the total development cost).
 3) It also removes any delay for a new employee/device - the enterprise
 signed build can be installed automatically without going through the
 whole UDID collection, provisioning profile update and rebuild process.
 This is what enterprise accounts are for. Not having to explain why it
 doesn't work on new devices (which is after all rather technical and all
 down to Apple) is also of value. Overall a better customer experience.
 4) If you build up a decent sized client base over time you will
 struggle with the 100 device limit, even in multiple standard developer
 accounts (I have access to 4 accounts at the moment, 2 of them are
 almost at the limit). I've mostly used ad-hoc builds for demos for
 potential new clients - even that can fill up your device slots over
 time.
 5) In theory you can remove old devices but do you want your clients to
 have to tell you when they retire old ones? Will they remember anyway?
 Analytics can no longer tell you which UDIDs are still in use, since
 developer access got cut off some time ago.
 
 Technically ad-hoc distribution shouldn't be used to deliver to clients
 for internal builds but I can confirm that Apple shows no signs of
 caring about enforcing that.
 
 --
  Mark Wilcox
  m...@sorcery-ltd.co.uk
 
 On Wed, Mar 18, 2015, at 12:06 PM, Mike Kerner wrote:
 I take this the other way:  I want more control, not less.  I take it
 personally when something I build isn't freaking awesome.  I consider
 other
 enterprises' employees to be part of my team when I write something for
 them.  I am their IT guy, so the last thing I want to do is take a chance
 on someone over there dropping the ball and making something break,
 that
 I then have to clean up, especially when they're under the gun.  Spoiling
 them rotten is my privilege.  They will be in one of my profiles.
 
 On Wed, Mar 18, 2015 at 7:58 AM, Matthias Rebbe | M-R-D 
 matthias_livecode_150...@m-r-d.de wrote:
 
 
 
 Am 18.03.2015 um 12:16 schrieb Colin Holgate colinholg...@gmail.com
 :
 
 I would do a mixed approach. Get your client to join at $99 per year,
 and to have you as a team member. They would include at least one of
 your
 devices in their list, so you can test installs, and you would be able
 to
 build for up to 100 devices. If they only need about 10, that would
 cover
 quite a few employee and device changes.
 And if i remember right every year you can reset that list of devices.
 This would allow you to delete non active devices and it increases the
 number of possible test devices again.
 
 
 
 
 
 On Mar 18, 2015, at 6:23 AM, Mark Wilcox m...@sorcery-ltd.co.uk
 wrote:
 
 I've used Ad Hoc Distribution for this a few times before - it can
 become a
 bit of a pain because employees join and people get new devices -
 you
 have
 to manage updates to the provisioning profile manually - more often
 than
 you'd

Re: Mobile cloud storage

2015-02-05 Thread Mark Wilcox

 So most folks have either iCloud, Goggle Drive, Dropbox, or OwnCloud,
 and using those sure beats building a complex storage backend for
 simple apps.

 Does our community have yet a library for allowing the user to pick
 which common storage system they have and an API for
 reading/writing to it?

Apple made a generic solution for this on iOS and OS X. Document
Provider Extensions (OK, new OS versions only).
https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/ExtensibilityPG/FileProvider.html#//apple_ref/doc/uid/TP40014214-CH18-SW1

If you want to read and write files from/to cloud storage then there's
single interface and the device only shows providers that the user has
installed/configured.

The latter part you obviously can't get without being the OS provider
and having providers write Extensions to tell the system they offer file
storage. For Apple platforms at least it would make sense to mimic the
interface as far as possible though, assuming you don't just want to
wrap what they've already done.

--
Mark Wilcox m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Confusion about making 64 bit binaries for submission

2015-02-03 Thread Mark Wilcox
 OK so I am trying to submit a new iOS app and of course it needs to be 64
 bit now. So I prepared the standalone with 7.0.2 RC 1 but ran into all
 sorts of minimum OS compatibility issues with the app loader in Xcode.
 Waited and then tried again with 7.0.2 RC 2 but it now doesn't seem to
 generate a 64 bit binary - at least that is what app loader says. 
 
 Any ideas? Is it me?

Which version of Xcode are you using? As far as I know, if you're using
LiveCode 7.0.2 and Xcode 6.1 upwards then you can't not try to build for
the 64-bit architecture as part of your binary.

There's a neat little command line tool called lipo which lets you see
which architectures are included in your binary if you want to double
check.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Building apps for iOS 7?

2015-02-03 Thread Mark Wilcox
 I¹m using an enterprise license so I¹m not going through the
 app store and what I really want to do is to roll back to an earlier
 version of Xcode so that I can build my app using some pre iOS 8
 compatible externals.

What problem are you running into with the build using incompatible
externals? Is it a missing 64-bit architecture?
A suitable combination of old LiveCode and old Xcode should work.


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Building apps for iOS 7?

2015-02-02 Thread Mark Wilcox
Just as a general FYI - you can create a minimal app skeleton with the
wizard in Xcode and check how far back through versions it'll let you
build. You can almost always go a couple of major versions back. So,
although the latest Xcode comes with the 8.1 SDK you can set the
deployment target as far back as 6.0. If it won't work there's some
other reason, not the Xcode update. Provisioning profiles is a common
cause. It might be nice if the LiveCode standalone builder had a little
more intelligence built-in there, rather than allowing me to select
anything back to 4.3.

Unless you're not building for the App Store it's a bit of lost cause
trying to support older versions than the latest official SDK allows -
Apple always come up with some new submission requirement that means you
need to use the new SDK sooner or later.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Mon, Feb 2, 2015, at 02:21 PM, Dave Kilroy wrote:
 Hi Terry - I also can build for iOS7 using LC 6.6.5 and Xcode 6.1.1. I
 believe LC 6.6.5 is the oldest version you can use with Xcode 6.1.1 so
 you
 will get errors if you try to use earlier versions.
 
 Could it be that you recently created new provisioning profiles (or
 updated
 existing ones)? If so I would check on the development portal to make
 sure
 that nothing has been added to them that means they won't work in iOS7
 (their payment thingie for example...)
 
 Dave
 
 
 
 -
 Some are born coders, some achieve coding, and some have coding thrust
 upon them. - William Shakespeare  Hugh Senior
 
 --
 View this message in context:
 http://runtime-revolution.278305.n4.nabble.com/Building-apps-for-iOS-7-tp4688368p4688371.html
 Sent from the Revolution - User mailing list archive at Nabble.com.
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: which iPhone...

2014-11-10 Thread Mark Wilcox
If you don't have the appropriate launch screen / launch images for the iPhone 
6/6+ then your app gets run at iPhone 5 size and scaled up.

Sent from my iPhone

 On 10 Nov 2014, at 22:16, John Dixon dixo...@hotmail.co.uk wrote:
 
 
 
 
 Now I am a little confused ...
 
 xCode 6.0, OSX 10.9.5, LC 7.0, iOS 8 simulator
 
 Let me be a little pedantic here in my explanation. I have prepared a stack 
 at a size of 320 x 480... It has one button with the following script...
 
 on mouseUp
   answer the screenRect of this stack
 end mouseUp
 
 If I choose Hardware  Devices  iPhone 4s running in the simulator returns 
 0,0,320,480 
 If I choose Hardware  Devices  iPhone 5s running in the simulator returns 
 0,0,320,568
 
 but...
 
 If I choose Hardware  Devices  iPhone 6 running in the simulator returns 
 0,0,320,568
 
 It is at this point that I expected to see 0,0,375,667... 
 I am more than a little confused!
 
 Dixie
 
 
 
 
 From: gerry.or...@gmail.com
 Date: Mon, 10 Nov 2014 21:27:31 +
 Subject: Re: which iPhone...
 To: use-livecode@lists.runrev.com
 
 Randy's code gives me a screen rect of 0,0,375,667 on an iOS 8 iPhone 6
 simulator. Those are the correct values (remember for the iPhone 6 and 6+
 you need to multiply by 2x and 3x respectively). The code also works
 accurately on a 4s and 5s simulator.
 
 Thanks Randy!
 
 Gerry
 
 On Tue Nov 11 2014 at 5:03:48 AM Randy Hengst iowahen...@mac.com wrote:
 
 Xcode 5.1, OSX 10.8.5, LC6.5, iOS 7.1 Simulator... this code in StartUp
 shows correct dimensions... I don't have iOS 8 simulator on this mac.
 
 
 on startUp
 
   answer (word 1 of the machine)
 
   iphoneSetAllowedOrientations landscape left,landscape right
 --portrait,portrait upside down,landscape left,landscape right
 
  switch (word 1 of the machine)
  case iPod
  case iPhone
 set the fullscreenmode of this stack to exactFit
 --letterbox--noScale -- exactFit --letterbox --empty --
 --exactfit --showAll
 break
   end switch
 
   answer the ScreenRect
 end startUp
 
 
 On Nov 10, 2014, at 11:35 AM, John Dixon dixo...@hotmail.co.uk wrote:
 
 
 
 Subject: Re: which iPhone...
 From: jac...@hyperactivesw.com
 Date: Mon, 10 Nov 2014 11:12:32 -0600
 To: use-livecode@lists.runrev.com
 
 Does it work if you omit working and just ask for the screenrect?
 Hi Jacque...
 
 No it doesn't...
 
 Dixie
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: 64-bit App Store requirement

2014-10-24 Thread Mark Wilcox

 On 23 Oct 2014, at 14:45, Richard Gaskin ambassa...@fourthworld.com wrote:
 
 You may just be ahead of your time.
 
 After all, it seem unlikely Apple will be shipping an iOS device that has 
 more than 4 GB RAM, and even if they did, with PAE it would only be logically 
 necessary if they expected individual apps to need more than 4 GB.
 
 True, it's more efficient to use native addressing, and having committed to 
 64-bit gates it'll certainly help - but only very modestly, unlikely 
 significant enough to end-users to make it a requirement.
 
 So what could be driving this?

I believe this is primarily driven by the desire not to need more RAM in iOS 
devices. Supporting both 32  64-bit apps on the same device means having the 
system frameworks for both in memory at the same time.

When they can drop 32-bit app support in new devices it'll save on firmware 
update size and build, release and test work at Apple.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: iPhone kiosk

2014-08-26 Thread Mark Wilcox
Obviously I don't know the details but if you're going to run in a
single app mode, then complete control of the phone while your app is
running is possible without a jailbreak - it's just control whilst in
Springboard and other people's apps you need to jailbreak for.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Mon, Aug 25, 2014, at 02:49 PM, Richard Miller wrote:
 The hardware device controls an iPhone remotely through bluetooth... not 
 a process Apple supports. This isn't a game controller. It is complete 
 control of the phone.
 
 
 On 8/25/14, 5:26 PM, Mark Wilcox wrote:
  I'm no jailbreaking expert but as I understood it, the issue is not that
  you can't get new versions of iOS quickly but that you can't install
  older firmware to a device unless you have already jailbroken it. You
  can't overwrite legitimate firmware with anything but newer legitimate
  firmware because the firmware itself includes version and signature
  checking.
 
  What's so special about this custom hardware that the device needs to be
  jailbroken? Why can't it go down the MFi route?
 
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: iPhone kiosk

2014-08-25 Thread Mark Wilcox
Jailbreaking is a pain - do you really need it? I ask because iOS has a
kiosk mode - look up Guided Access. If you have to jailbreak you
always get new devices with the latest firmware and then have to wait
for someone to create a new jailbreak.

If you retain control/ownership of the devices then you can use an
enterprise developer account for production and manage updates with a
Mobile Device/Application Management solution - MDM can also trigger
single app mode (not sure how this is different from Guided Access)
remotely. There are third party solutions and Apple provides a basic
free one (called Profile Manager) that ships as part of OS X Server
(which you can have a copy of for free with an iOS developer account).

Updating apps by simply downloading a new stackfile is entirely doable
in an iOS device - as stated by others, it's just against the app store
rules. That doesn't let you update LiveCode itself though, in case you
ever need that.

I think the key consideration around updates is how the app will get
updated if it is always running. For that I think you probably need a
MDM solution so you can release the device from single app mode, update
it and put it back into single app mode.

Of course the devil is in the details but I recommend looking into all
of the legitimate solutions before going down the jailbreak route.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Mon, Aug 25, 2014, at 06:45 AM, Richard Miller wrote:
 Hoping someone here knows the answer to this. I realize it's an unusual 
 situation.
 
 I am setting up a jail-broken iPhone with a LC app. This phone will be 
 set to boot directly into the LC app. The phone will only ever be used 
 for this one purpose. Think of it as an iPhone kiosk. Users will not be 
 able to access any functions on the phone outside of the app.
 
 Once I have completed all the development work on the first phone, I 
 want to clone this phone to other iPhones so that each is an exact copy. 
 Is that possible? Can I create an iTunes backup of the first phone and 
 then use that backup to restore it to new iPhones?
 
 Second question is in regards to distributing and updating the app.
 
 The app itself is not to be sold through the App Store. My business 
 model is based on distributing these iPhones (with the app 
 pre-installed). Again, the phone will never be used for any purpose 
 outside of my app. The phone will not be used to make calls, but it does 
 need to access the internet. Most importantly, my app needs to be kept 
 updated. Is there some way to automatically update the app (even through 
 a jail-broken means)? I imagine larger corporations have exclusive apps 
 that are not distributed publicly and are kept updated. How does that
 work?
 
 Thanks,
 Richard Miller
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: iPhone kiosk

2014-08-25 Thread Mark Wilcox
I'm no jailbreaking expert but as I understood it, the issue is not that
you can't get new versions of iOS quickly but that you can't install
older firmware to a device unless you have already jailbroken it. You
can't overwrite legitimate firmware with anything but newer legitimate
firmware because the firmware itself includes version and signature
checking.

What's so special about this custom hardware that the device needs to be
jailbroken? Why can't it go down the MFi route?

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Mon, Aug 25, 2014, at 12:55 PM, Richard Miller wrote:
 Jailbreaking is a pain, but I see no way around it. We use a custom 
 hardware add-on that can only communicate to the iPhone if it is 
 jailbroken.
 
 As far as jailbreaking new devices is concerned, the idea is to maintain 
 a cloned image of an earlier jailbroken device and then restore that 
 image to all new iPhones... overwriting any new OS upgrades it may have 
 shipped with.
 
 We're not concerned about having access to typical new iOS upgrades. If 
 a new OS comes out that has a significant new feature in it for us, we'd 
 have to wait to use that feature until a jailbreak was available. But 
 that wait doesn't effect our ongoing business.
 
 Richard
 
 

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Matching funding

2014-07-19 Thread Mark Wilcox
The matched funding is in addition to the total. I don't know the exact source 
but assume it's some government scheme, matched funding seems to be the 
preferred method in the UK.

It's the main thing that makes the campaign worthwhile. They pre-sell licences 
people would need anyway at a slight discount but get nearly double the normal 
amount thanks to the matching.

Mark

On 19 Jul 2014 02:22, Peter Haworth p...@lcsql.com wrote:

 Reading the HTML5 FAQs in today's newsletter, there's mention of matching 
 funds.  I may have missed it in prior announcements but I didn't know about 
 that. 

 Any info available on where those matching funds will come form, if they 
 are part of the $395k or in addition to, etc? 

 Pete 
 lcSQL Software http://www.lcsql.com 
 Home of lcStackBrowser http://www.lcsql.com/lcstackbrowser.html and 
 SQLiteAdmin http://www.lcsql.com/sqliteadmin.html 
 ___ 
 use-livecode mailing list 
 use-livecode@lists.runrev.com 
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences: 
 http://lists.runrev.com/mailman/listinfo/use-livecode 
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: [OT] SWIFT

2014-07-15 Thread Mark Wilcox
http://swift-lang.org/main/ 
This is the wrong Swift.

Yes, Apple gave their new programming language the same name as an existing one.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: CEF browser - how to allow cross origin requests using the file:// protocol?

2014-07-11 Thread Mark Wilcox
 Now, if you use a server and http://, Keynote uses Ajax and transitions
 work fine. This means I need to remove the JSONP option and
 tell the CEF browser somehow to allow cross origin requests
 using the file:// protocol. With Chrome this can be achieved by using
 a -–allow-file-access-from-files command line switch.
 
 Does anybody know how to set this flag for the CEF browser
 in LiveCode?

I had a very quick look at the code and I don't think it can be done
without a change to the engine. One way to do it would be to implement:
CefApp::OnBeforeCommandLineProcessing()

In revbrowser/src/cefbrowser.cpp

It could be a fixed command line argument that is added if no-one is
concerned about the security implications, otherwise some new command in
LiveCode that lets you add to this argument list before you create a new
browser object. The second option would obviously be much more flexible.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: WebRTC support and Chromium Embedded Framework in LiveCode

2014-07-01 Thread Mark Wilcox
I assume CEF doesn't build the WebRTC support in the Chromium project by
default because it has extra dependencies on the audio stack. I guess
LiveCode could include such support if it wanted.

Does LiveCode plan to bundle CEF on Android? Given the built-in web view
in Android is already based on Chromium that would seem like a lot of
bloat for little gain.

For iOS it's against the App Store rules to include your own browser
engine (no downloadable code execution allowed) and not even technically
possible to ship the V8 JavaScript engine (because you can't mark memory
both writable and executable - so can't ship your own JIT compiler). As
far as I know Safari doesn't yet support WebRTC on Mac OS or iOS. Even
when it does, there's not yet any guarantee that it will have a common
video codec with other implementations because the standards people
can't agree on a mandatory one.


-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Tue, Jul 1, 2014, at 02:40 AM, David Bovill wrote:
 Thanks Alejandro - I just tested and on OSX with revBrowserOpenCEF (which
 is Chrome 32) - I get a score of 472 rather than 503 for Chrome 32. It
 looks like webRTC is not available on Chrome 32 version in CEF for OSX.
 
 I'm not sure about Android and iOS versions yet?
 
 
 On 1 July 2014 00:13, Alejandro Tejada capellan2...@gmail.com wrote:
 
  According to http://html5test.com/
  this new Chromium Embedded Framework
  is identified as Chrome 31 and scores 450
  from 555 points.
 
  http://forums.livecode.com/viewtopic.php?f=89t=20501
 
 
 
  --
  View this message in context:
  http://runtime-revolution.278305.n4.nabble.com/WebRTC-support-and-Chromium-Embedded-Framework-in-LiveCode-tp4680734p4680747.html
  Sent from the Revolution - User mailing list archive at Nabble.com.
 
  ___
  use-livecode mailing list
  use-livecode@lists.runrev.com
  Please visit this url to subscribe, unsubscribe and manage your
  subscription preferences:
  http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: WebRTC support and Chromium Embedded Framework in LiveCode

2014-07-01 Thread Mark Wilcox
I'm getting the impression that the LiveCode roadmap is primarily user
demand driven, so there isn't really a long term strategy apart from
keep the platform relevant and grow the user base. :)

If you really want something relatively simple like this in the roadmap
I think pledging for the new campaign with a Premium (or maybe Pro)
license and asking them to do it sooner rather than later is the best
way forward! Alternatively it's simple enough that you could contract
someone to do it after all the refactoring is sorted for significantly
less than the cost of a Premium license.

I think the main issue with doing this for mobile platforms is backwards
compatibility. On Android the WebView completely changed (to a modern
Chromium base from an old WebKit base) in one of the recent releases
(can't remember which 4.x version) - making sure it works identically on
both might be tricky - Android has always had a simple method for doing
this though. On iOS this was only doable via fake URL load requests in
the WebView before iOS 7, then iOS 7 added an almost completely
undocumented and slightly cumbersome way of doing it properly. Now iOS 8
has added a new WKWebView with a much nicer way of doing it (and much
better JavaScript performance!).

So, it's going to be cheaper and easier to do via an external/extension
if you only care about newer platform versions but to get it into the
engine where it belongs means supporting all the platform versions that
LiveCode does.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Tue, Jul 1, 2014, at 09:28 AM, David Bovill wrote:
 Ah yes - I see the Chromium Embedded framework is really desktop only - I
 missed that. I'd like to down what the long term strategy regards browser
 controls cross mobile and desktop is.
 
 For instance *revBrowserAddJavaScriptHandler* is for now CEF specific -
 is
 the plan to add this to mobile platforms?
 
 
 On 1 July 2014 14:08, Mark Wilcox m...@sorcery-ltd.co.uk wrote:
 
 
  For iOS it's against the App Store rules to include your own browser
  engine (no downloadable code execution allowed) and not even technically
  possible to ship the V8 JavaScript engine (because you can't mark memory
  both writable and executable - so can't ship your own JIT compiler). As
  far as I know Safari doesn't yet support WebRTC on Mac OS or iOS. Even
  when it does, there's not yet any guarantee that it will have a common
  video codec with other implementations because the standards people
  can't agree on a mandatory one.
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: We're Funding LiveCode For the Web

2014-07-01 Thread Mark Wilcox
 My concern is that it have local, in-memory SQLite wherever it happens to
 be running, whether that be the browser or the server.
 
 
 -- 
 Dr. Richard E. Hawkins, Esq.

It's running in the browser, with the LiveCode engine compiled to
JavaScript. Compiling SQLite to JavaScript and running it locally in the
browser is not a great option - how will you reliably persist the data
and keep decent performance? Not that there aren't JavaScript based DB
solutions that use local file storage.

Sadly the web standards folks messed up here. Web SQL was effectively
killed because Mozilla and Microsoft refused to implement it. IndexedDB
looks like the option that everyone eventually agreed on but it's not
implemented everywhere yet. I suspect it will be fairly widespread by
the time the HTML5 deployment option is complete though...

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Compile IOS Externals

2014-06-20 Thread Mark Wilcox
Hi,

This external is only a couple of lines of code - I very much doubt it
doesn't compile, you probably have a linking problem.

If you post the errors then maybe it'll be easy to solve and it might
also provide valuable learning for other externals.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

On Thu, Jun 19, 2014, at 04:58 PM, Nakia Brewer wrote:
 Hi,
 
 In the past (Before xCode5) I have been able to compile and use the
 following external without issue but in xCode5 I get errors that are way
 beyond my understanding.
 https://github.com/trevordevore/iosclipboard
 
 Would any of the external builders perhaps be interested in getting this
 to compile for a fee?
 
 
 COPYRIGHT / DISCLAIMER: This message and/or including attached files may
 contain confidential proprietary or privileged information. If you are
 not the intended recipient, you are strictly prohibited from using,
 reproducing, disclosing or distributing the information contained in this
 email without authorisation from WesTrac. If you have received this
 message in error please contact WesTrac on +61 8 9377 9444. We do not
 accept liability in connection with computer virus, data corruption,
 delay, interruption, unauthorised access or unauthorised amendment. We
 reserve the right to monitor all e-mail communications.
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: IOS 8 and xCode

2014-06-19 Thread Mark Wilcox
 Does the current or coming IDE support IOS 8?
 If it does support IOS 8, will it also address any content that can be
 used
 where Swift Programming is used? This means is the IDE going to allow
 Swift scripting in the IDE?

Swift is not a scripting language, it is a compiled language like
Objective-C. You can't use Objective-C in the IDE and you won't be able
to use Swift. It will be possible to write extensions (externals) in
Swift but because the engine is C++ they will need a standard C or
Objective-C wrapper to be able to talk to the engine.

-- 
  Mark Wilcox
  m...@sorcery-ltd.co.uk

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: iOS reference document - iOSBrowser

2014-06-19 Thread Mark Wilcox
 1. Does anyone know how i might find this iOS reference document?



[1]https://developer.apple.com/library/ios/documentation/uikit/referenc
e/UIWebView_Class/Reference/Reference.html



 2. Does one of the newer versions of LC for iOS contain an even
better

 browser, one with more features or capability?



No, UIWebView has not changed significantly (until iOS 8) and the App
Store rules prevent you from shipping your own browser engine. I
believe LiveCode is going to be shipping it's own WebKit version on
other platforms though.



 3. Is there a stack somewhere that demonstrates features of a newer
iOS

 browser?



No, although there is a new WKWebView class in iOS 8 that allows
significantly more interaction between the app and the web content.
There are of course no official plans to support it in LiveCode yet.



--

Mark Wilcox

m...@sorcery-ltd.co.uk

References

1. 
https://developer.apple.com/library/ios/documentation/uikit/reference/UIWebView_Class/Reference/Reference.html
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC, Android video control

2014-05-01 Thread Mark Wilcox
I'm not aware of any external that gives you low-level video access on Android.

I think it would be possible to create such an external but - Android externals 
are a rather new feature, Monte did a lot of the work to enable them (I'm not 
sure if anyone else has built one yet?) and lower level video control / editing 
only appeared in Android version 4.0. To support anything earlier than that 
you'd have to do it all on the CPU with the Android FFmpeg port rather than the 
hardware video decoders.

Guaranteeing it would work across a very wide range of Android devices would be 
tough due to the hardware fragmentation. Some new Android devices don't have 
the stock Movie Studio app included - makes me suspicious. Probably OK on 
anything with a Qualcomm chip though.

RunRev are supposed to be doing an overhaul of multimedia as part of the 
Kickstarter goals... not sure what's in the requirements for that.

Mark
On Thursday, 1 May 2014, 12:11, Richard Miller w...@together.net wrote:
 
Is it possible to have frame-by-frame video control through LC on an 
Android phone? As well, to be able to jump to any point in a video?

Thanks,
Richard Miller


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC, IOS 7 and UIKeyCommand

2014-04-30 Thread Mark Wilcox
Hi Richard,

Sorry for a rather late reply to this. I#39;m not sure what level of answer 
you#39;re looking for. You#39;ve found the appropriate incantations in 
Objective-C. They need to be used in an external, or someone would need to 
contribute this feature to the engine. Given the issue noted in your link with 
sub-classing UIApplication, this would be better contributed if RunRev will 
accept such a contribution. It could be done in an external but you#39;d have 
to go the more complex route of detecting dialogs and setting your class back 
to first responder manually when they#39;re dismissed.

If contributing to the engine or writing an external is outside your comfort 
zone then you could either ask RunRev to add it to their list of features to be 
implemented and wait, or pay someone to implement it for you.

Usually I think Monte would pick this sort of request up very quickly. If 
he#39;s not available/interested then I have a Bluetooth keyboard and the 
necessary skills.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Enterprise iOS License Distribution...

2014-04-16 Thread Mark Wilcox
2. I’m also wondering if there is something special that needs to be done to 
the iOS app after LiveCode creates the iOS app. The iOS appears to have a app 
extension and not an ipa extension. Also, I’m guessing the iOS app hast to be 
compressed before changing the file extension to ipa otherwise it results in 
just the folder with it’s iOS app components. I hope this makes sense. 

Bingo! A .app file does not necessarily have the necessary signature but 
assuming LiveCode was set up properly to build the standalone with your 
Enterprise distribution profile then it should. Simply compress the .app file 
with finder and change the extension from .zip to .ipa manually. Then it should 
work with Profile Manager. I have no idea why LiveCode doesn#39;t finish the 
job here.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Enterprise iOS License Distribution...

2014-04-10 Thread Mark Wilcox
Profile Manager includes Mobile Device Management for iOS devices. It's 
definitely the right way to be doing this.

No idea why it's not recognising the file but I thought I'd add that an app 
signed for enterprise distribution can be installed directly on ANY iOS device, 
not just through MDM. So check your .ipa file installs locally before trying to 
upload to Profile Manager, there might be something wrong with it.

Mark

On 9 Apr 2014 19:59, J. Landman Gay jac...@hyperactivesw.com wrote:

 I don't know anything about Profile Manager, so take this with a grain 
 of salt. But my guess is that it only recognizes Mac apps, and a iOS app 
 is a different beast entirely and requires a different kind of 
 installation. Also, as far as I know, Apple prohibits remote 
 installation on iOS devices, so I doubt a bulk install is possible. It's 
 a walled garden. 

 There are a few utilities that allow you to create ad-hoc installations 
 where the files are stored on a web site or server. My AirLaunch is one, 
 Monte has mergTestApp which integrates with the TestFlight web site, and 
 there are other web sites out there too. 

 To install an iOS app you need an html file that points to a special 
 manifest file, which in turn initiates the download of the actual app to 
 the device. 


 On 4/8/14, 6:19 PM, JOHN PATTEN wrote: 
  Thought I’d ask just in case somebody else has experienced this 
  situation. We have a new Apple Enterprise iOS license for 
  distributing iOS apps built with LiveCode.  I have configured the our 
  workstation with the proper profiles, first creating a development 
  profile and making sure that we could test apps out on a iPad. 
  Everything in that department works fine. 
  
  I then installed our distribution profile and created the same app 
  with the Enterprise distribution profile. In our school district we 
  are using Profile Manager (part of OS X Mavs Server) to manage apps 
  we purchase and, eventually, apps we create. Profile Manager works 
  fine and we can easily push out apps we puchase over the air. 
  
  However, when trying to add an app we developed with our Enterprise 
  profile,  it spits back: Filetype Not Supported. The file you 
  selected is not supported. Please choose a different file. 
  
  Anybody have any experience with this specific situation? 


 -- 
 Jacqueline Landman Gay | jac...@hyperactivesw.com 
 HyperActive Software   | http://www.hyperactivesw.com 


 ___ 
 use-livecode mailing list 
 use-livecode@lists.runrev.com 
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences: 
 http://lists.runrev.com/mailman/listinfo/use-livecode 
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: The status of 6.5.1

2014-01-20 Thread Mark Wilcox
 There's not enough time to test every pre-existing feature.
 There needs to be an automated monkey machine to run each new
 version through.

 There is, they've been writing one for a while now.


The only quibble I have here is that I foresaw and asked about this potential 
quality issue doing such a major rewrite without a comprehensive suite of 
automated tests. Kevin responded (on the Kickstarter comments page) to say that 
they had one - turns out it was somewhat embryonic rather than comprehensive at 
that stage.

Having met several of the team at RunRev Live last year I'm confident they'll 
sort it out though. It's just going to take a bit longer than originally 
advertised.



On Monday, 20 January 2014, 9:58, Matthias Rebbe 
matthias_livecode_150...@m-r-d.de wrote:
 
Same here: I used mTropolis and Director for a long time before i switched to 
Revolution in 2005.  But i do not miss them at all. Maybe mTropolis a little 
bit. ;)


Am 20.01.2014 um 03:41 schrieb Earthednet-wp proth...@earthednet.org:

 Tom,
 I'm a Director escapee too and I can't tell you how refreshing it is to be 
 working with livecode now.
 Bill
 
 William Prothero
 http://es.earthednet.org
 
 On Jan 19, 2014, at 4:40 PM, tbodine lvhd...@gmail.com wrote:
 
 So far, I find the resolution independence and fullscreen features of 6.5.1
 are really great time savers for me. I've seen a few bugs, too, but, wow,
 these new features will save me months of work. 
 
 Coming from the Adobe-ruled Director universe, I have to say, Richmond, you
 don't know how good you have it with RunRev. With Adobe, upgrades are *years
 apart* and always deliver disappointment by breaking existing features,
 introducing new complications and driving third-party developers out of the
 market. At least with RR you know another update isn't far off, the road map
 is not a secret, there is frequent communication with the developer
 community, and there's a solid commitment to the product and its community.
 I don't see anything but a determined, good faith effort by RunRev.
 
 Progress is an uneven, bumpy journey. RR has committed to a lot of progress,
 so my attitude is buckle up! I'm going to do what I can to help. (Bug
 reports. Testing. Minimal whining.) For those who don't like the ride, you
 can always stick with your last favorite version and hunker down.
 
 My two cents.
 Tom Bodine
 
 
 
 --
 View this message in context: 
 http://runtime-revolution.278305.n4.nabble.com/The-status-of-6-5-1-tp4674797p4674838.html
 Sent from the Revolution - User mailing list archive at Nabble.com.
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode



Matthias Rebbe
Tel:     +49 5741 31
        +49 160 5504462
eMail: matthias underscore livecode underscore 150811 at m dash r dash d dot de





___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: New Year Roadmap

2014-01-20 Thread Mark Wilcox
 Funny how it is the Roadmap from last year.

As someone who bought a lifetime license in the Kickstarter based on the 
promised new functionality, I really wasn't expecting them to deliver in the 
originally stated timeframe - I have too much experience with complex software 
projects for that. We do appear to be further behind than even my pessimistic 
guesses though. At present rates I'm expecting to see the Kickstarter stretch 
goal feature set completed sometime this summer. :)

Given that I went for the lifetime license this really isn't a big deal for me, 
but if I'd gone for 1 or 3 years then I'd be slightly miffed.




On Friday, 17 January 2014, 21:12, Richmond richmondmathew...@gmail.com wrote:
 
Really?

Funny how it is the Roadmap from last year.

Naughty; where's the 'top story' ?

What would be much more useful is the 'Roadmap' with the items that have 
been completed ticked off,
and a more definite idea of a timescale (GANTT chart?) as to when it is 
envisaged the other goals and stretch
goals are likely to be completed.

Richmond.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [OT] web training video delivery - how do YOU do it?

2013-10-09 Thread Mark Wilcox
Hi Phil,

I don't deliver web training but I do have some experience with getting videos 
to work across a lot of browsers.

The only way of delivering videos to old browsers and maintaining your sanity 
is Flash. Even then, Adobe dropped support for IE6 last year, so the user has 
to have an old version already installed and if they've got a dud there's not a 
lot you can do to upgrade it. You'd definitely need to check if they really are 
using IE6 and if the browsers haven't been locked down to prevent plugin 
installs.

YouTube isn't a magic solution either unfortunately - they dropped support for 
IE6 back in 2010 and IE7 in 2012. Google have actually stopped supporting IE8 
in some of their apps (although not YouTube).  I was going to suggest 
Brightcove instead because they serve video for a lot of dinosaur corporate 
environments but I checked and they ended IE6  7 support early this year:
http://support.brightcove.com/en/video-cloud/docs/customer-communication-about-end-life-ie6-and-ie7


Sadly the reason government clients are interested in web-based solutions in 
the first place is the same reason it's nearly impossible to guarantee a 
consistent experience - locked down and inflexible IT policy.

I don't think you really can do much better than mediaelement.js as a general 
purpose solution. If you can find out from the IT folks a specific minimum 
Flash version, for example, that's installed on all PCs then you might have a 
chance to do better. If they really are still using IE6 without the chance to 
upgrade then I fear you have no chance - even Microsoft is trying to kill IE6:
http://www.ie6countdown.com/


Probably not the advice you were looking for but I hope it helps avoid too much 
searching for a magic bullet.

Mark



 From: Phil Davis rev...@pdslabs.net
To: How to use LiveCode use-livecode@lists.runrev.com; LiveCode Developer 
List livecode-...@lists.runrev.com 
Sent: Tuesday, 8 October 2013, 21:44
Subject: [OT] web training video delivery - how do YOU do it?
 

Hi Friends,

If your clients or company deliver web training that includes videos, I would 
greatly appreciate any insight you can share from your experience.

My largest client delivers web training to his customers. His entire content 
development / deployment / management system is built with Livecode, and one 
app uses FFMPEG to render desktop movies (mostly QT) for the web (mp4, ogv, 
webm). That app then uploads content to an on-rev server. The server has code 
that serves the content and collects the training results. (To be clear, the 
training content is a set of web pages containing text, video, images and 
sometimes audio. It's interactive. We don't upload a single monolithic 
30-minute training video, but rather a training title may have any number of 
smaller videos that are available on various pages in the training.)

My client now has a new opportunity to enter US state and fed government 
agencies in a big way. Problem is, they often use IE6/7/8 and are not open to 
change. As you may know, these are THE most problematic browsers in existence. 
We have found it extremely difficult to make all movies work all the time in 
all (IE) browsers. (Chrome, Firefox, Safari, later IE browsers are not a 
problem.)

We're very concerned that we'll blow this opportunity if we can't deliver a 
rock-solid web training experience, specifically the video part.

Do your clients or company have a great way of delivering web training that 
includes videos that always work every time, even in old IEs? If so, how do you 
do it? (Maybe your JS/CSS/HTML is better than ours.) We use John Dyer's 
mediaelement.js http://mediaelementjs.com/ as the core of our web video 
playback.

We're considering ditching our in-house movie rendering process and using a 
media delivery service (like YouTube) for videos. Then the training movies 
would be uploaded to that service, and movies would be served from their 
server. We would use their embedded links and THEY would handle browser 
compatibility. At least that's how we're thinking about it. What am I missing? 
Have you ever done this? What has your experience been?

I'm stretching the limits of approved list subject matter with this, but here I 
am anyway. As you can imagine, there is a LOT resting on the way we go forward 
in this. Thanks so much for your time and feedback.

Feel free to contact me off-list as well.

-- Phil Davis
p...@pdslabs.net
503-307-4363 mobile

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: A Text file format for LiveCode

2013-10-07 Thread Mark Wilcox
Personally I think there may be some value in having the default developer view 
of a stack as a set of (mostly) text files. There would then be a tool that 
does a lot of what lcVCS does which turns that into a binary stack format for 
runtime size and performance - a lot of languages compile things in that way.

However, note that the Live part of LiveCode is made faster by this almost 
direct manipulation of the binary that the engine interprets rather than having 
an intermediate step.

So, if the lcVCS route can be made to work robustly then optimising for coding 
rather than optimising for serialising for version control seems like a pretty 
good tradeoff.

Mark



 From: David Bovill da...@scimatch.org
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Monday, 7 October 2013, 14:18
Subject: Re: A Text file format for LiveCode
 

On 6 October 2013 23:46, Monte Goulding mo...@sweattechnologies.com wrote:


 On 07/10/2013, at 8:52 AM, Dr. Hawkins doch...@gmail.com wrote:
  The format is probably pretty obvious, too . . .
 
  begin button myBtn
   owner: card buttonville of stack buttonland
   type: pushbutton
   label: My Favorite button
   loc:   823, 445
   width:  92
   height: 39
 
   script:
      on mouseup
          do something awesome
      end mouseup
 
  end button myBtn

 How would you represent multi-dimensional properties in this format?


You can use folders. I structure things as follows - toplevel we have an
array based representation of stacks, under which you can choose to export
this to either XML, JSON or my preferred representation text and folder
based.

These don;t get around the problems Monte points out - but an established
practice of using handers to define a default state which is triggered on
each save / export to vcs works though it is time consuming to create each
handler - better is to avoid using those features in stacks.

Monte - I thought there was some new stuff in the developer releases for
creating IDs of the sort you advocate? Can you update us?
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Updating iOS apps

2013-10-02 Thread Mark Wilcox
FWIW, you can also use TestFlight with an Enterprise developer account (I think 
it's limited to 1000 users) but an Enterprise distribution certificate frees 
you from the hassle of managing device IDs - for an extra $200/year it's almost 
certainly worth it for avoiding the pain of the provisioning portal on a 
regular basis.

Mark



 From: Mike Kerner mikeker...@roadrunner.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Wednesday, 2 October 2013, 16:36
Subject: Re: Updating iOS apps
 

TestFlight (not testApp - sorry) also lets the users pull the app update,
so it's like using the app store without using the app store.  As he
mentioned, if you're going to be at 99 users or under, you can just put
their devices on your developer profile and and testFlight will put the
relevant profile on their device so they can execute your app.

Once you're over 99, you need to purchase an Enterprise license, to do your
own private distribution.


On Wed, Oct 2, 2013 at 11:34 AM, Mike Kerner mikeker...@roadrunner.comwrote:

 Monte has a tool that integrates with testApp, which lets me notify my
 users of updates.  Then I give the users a certain period of time before
 the app locks them out if they don't update.


 On Tue, Oct 1, 2013 at 5:50 PM, Monte Goulding 
 mo...@sweattechnologies.com wrote:


 On 02/10/2013, at 7:23 AM, Andrew Kluthe and...@ctech.me wrote:

  How is ad-hoc deployment handled on iOS with livecode? I recall
 something
  on the list from some time ago about being able to deploy test code to
  devices via dropbox.

 If it's not on the app store (you have an enterprise program or are using
 a development profile) then yes you can do this fine. However, you would
 still need to handle new versions of the engine or externals so in the end
 it might be simpler to use a service like test flight to rapidly notify of
 updates and distribute your app. The advantage of having some form of
 auto-updater though is that hotfixes can be automatically integrated rather
 than requiring users to do anything. Another option might be to disable
 your app until users install the latest version although if you're updating
 as frequently as you mention that would get pretty annoying... You possibly
 want some combination of both.

 Cheers

 --
 Monte Goulding

 M E R Goulding - software development services
 mergExt - There's an external for that!






 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




 --
 On the first day, God created the heavens and the Earth
 On the second day, God created the oceans.
 On the third day, God put the animals on hold for a few hours,
    and did a little diving.
 And God said, This is good.




-- 
On the first day, God created the heavens and the Earth
On the second day, God created the oceans.
On the third day, God put the animals on hold for a few hours,
   and did a little diving.
And God said, This is good.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: iOS 7 / Xcode 5 and the status bar.

2013-10-01 Thread Mark Wilcox
John's right - on iOS 7 apps are full screen by default with a translucent 
status bar floating on top. This happens to native apps when you build under 
the iOS 7 SDK too.

It's a platform change that apps should adapt to. Since the status bar is 
translucent it matters what goes underneath, so there's no good default for 
LiveCode to implement to hide this platform change.

Note that this platform change also affects screenshots and default.png (the 
splash image - which if you're using it properly is not a splash screen at all 
but something that makes it look like your app is loaded almost instantly and 
about to fill in data - this does somewhat depend on the type of app, e.g. 
games almost all use it as a splash screen). The splash image now includes 
the status bar area.

Mark



 From: John Dixon dixo...@hotmail.co.uk
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Tuesday, 1 October 2013, 8:08
Subject: RE: iOS 7 / Xcode 5 and the status bar.
 

Ralph...

The top of the card could be the top of the device under iOS6 if the status bar 
was hidden... when set to translucent the top of the card is the top of the 
device... I don't see it as a bug.

Dixie

 From: rdim...@evergreeninfo.net
 To: use-livecode@lists.runrev.com
 Subject: iOS 7 / Xcode 5 and the status bar.
 Date: Mon, 30 Sep 2013 20:56:38 -0400
 
 On an iPad 2 running iOS 7 with LC 6.6.2rc1, the top of the card is now the
 top of the device. The first 20 pixels(iPad 2) of the card is in the status
 bar area. I think this was introduced by integrating Xcode 5 into LC not
 from the update to the 6.1.2 engine from the 6.1.1 engine. Old apps that
 were linked using 6.1.1 running on a iOS 7 device do not exhibit this
 behavior.
 
 I see this as a bug.
 
 The items that are different have a * preceding them.
 
 iOS 6.1
 *the rect of this stack==0,20,768,1024
 *the rect of this card==0,0,768,1004
  the screenRect==0,0,768,1024
 *the working screenRect==0,20,768,1024
 *the effective working screenRect==0,20,768,1024
  the top of this card==0
 *the bottom of this card==1004
 
 iOS 7
 *the rect of this stack==0,0,768,1024
 *the rect of this card==0,0,768,1024
  the screenRect==0,0,768,1024
 *the working screenRect==0,0,768,1024
 *the effective working screenRect==0,0,768,1024
  the top of this card==0
 *the bottom of this card==1024
 
 
 LC 6.1.2 rc1
 OSX 10.8.5
 Xcode 5, 4.6.3, 4.5.2, 4.4.1, 4.2
 Arm7 build.
 
 Ralph DiMola
 IT Director
 Evergreen Information Services
 rdim...@evergreeninfo.net
 
 
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
                          
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Pitch shifting Audio

2013-09-20 Thread Mark Wilcox
To pitch shift audio in real-time here is the basis for a cross-platform 
external:
http://www.surina.net/soundtouch/
This could probably be integrated alone quite neatly.

Pulling the audio out of a video to be able to pitch shift it in real-time 
could be done with ffmpeg (you need to decode it before you can pitch shift), 
although on mobile platforms that is extremely inefficient vs using system 
frameworks that take advantage of dedicated hardware. If you need this you 
might as well be replacing LiveCode's multimedia support.

When the platform refresh is complete it might be feasible to extend LiveCode 
in this direction but I wouldn't recommend anyone attempt it at the moment.

Unless this requirement is just a small part of a bigger project that LiveCode 
is very well suited for then I'd be inclined to agree that it's the wrong tool 
for the job.

Mark


Beat Cornaz b.cor...@gmx.net wrote:

Hello to everyone,

Is there a way to pitch-shift audio without changing the speed (playback rate) 
in real time in LC? 

And is there a way to get the audio of a movie player to be pitch-shifted 
without changing the speed (playback rate) in real time?

If this is not possible, is there an external that can do the job?

Thanks a lot,

Beat Cornaz

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Facebook authorisation on iOS

2013-09-10 Thread Mark Wilcox
Hi Gerry,

I don't know how Andre Garcia's library works but assume it's not using an 
external that wraps the Facebook SDK for iOS. From painful personal experience 
I'd advise against any attempt to access Facebook other than through the 
official SDKs or platform native interfaces (e.g. for sharing on iOS). I'd also 
suggest avoiding using the web/JavaScript SDK unless you're building a web app. 
Facebook has a move fast and break things culture and they regularly break 
their APIs. When you're using an official SDK (even wrapped) you share the pain 
with everyone else and it usually gets fixed very quickly. If you've got some 
community generated solution with a minimal number of users then you're almost 
on your own and every time it breaks you need to rush through an update to your 
app to fix it. Not even slightly fun.

My experience came through trying to integrate with Facebook via native apps on 
platforms they don't provide official SDKs for - it was a mandatory requirement 
from the client and I didn't have a choice. If you have any other choice - take 
it. Either go down the external route or just don't use Facebook auth.

FWIW, this is almost unique to Facebook, we didn't have similar problems 
integrating with other services.

Hope that helps,
Mark



 From: Gerry Orkin gerry.or...@gmail.com
To: How to use LiveCode use-livecode@lists.runrev.com; LiveCode Developer 
List livecode-...@lists.runrev.com 
Sent: Tuesday, 10 September 2013, 1:50
Subject: Facebook authorisation on iOS
 

Hi all

As you know lots of sites and apps use Facebook authentication to verify user 
identities. I'm trying to get that working in iOS using Andre Garcia's Facebook 
library. I can get the FB sign on screen but the app always crashes after I 
enter my log in details. I'm having no luck debugging the problem :(

Has anyone got this to work? Is it work persisting?


Cheers

Gerry
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Implications of DOJ vs Apple for developers?

2013-08-26 Thread Mark Wilcox
 Publishers could set their price, they just couldn't set it any lower than 
 was available in Apple's store.



Apple very clearly did collude with publishers to try to set some minimum 
pricing for ebooks, which is most certainly against the law. The DoJ is bonkers 
because the minimum pricing they were setting was below that typically 
available in the near-monopoly Amazon store. Apple was colluding with 
publishers to try to introduce competition to the market and break some of 
Amazon's monopoly power.

 In that regard, the situation seems similar to that of any content provider - 
 I suspect we'll see similar rules across the board as others start wondering 
 why ebook publishers can bypass the store but they can't.

As I understood the proposed change, it's not ebook publishers or ebook apps 
that are being singled out for special treatment, but ebook stores/readers. So 
Amazon's Kindle app (for example) would be able to link to its own store for 
purchasing ebooks but an individual ebook app wouldn't be able to use an 
external payment mechanism to download additional chapters. I very much doubt 
this particular change will happen because it is entirely outside the scope of 
the original price fixing issue but also draws an obvious parallel to other 
media (e.g. music) where Apple has massively more pricing power and market 
share than they do in ebooks.

On the general topic of allowing external payments for in-app purchase, Google 
has just changed it's policies to be much more in line with Apple. Content on 
Google Play has to use Google Play's in-app billing service as the method of 
payment except:
* where payment is primarily for physical goods or services (e.g. 
buying movie tickets, or buying a publication where the price also includes a 
hard copy subscription); or
* where payment is for digital content or goods that may be consumed 
outside of the application itself (e.g. buying songs that can be played on 
other music players).
The first point is almost identical to the app store (except Apple doesn't 
allow you to use their in-app purchase for physical goods at all). The second 
point is similar to Apple's allowing external content purchases and 
subscriptions for apps, except Apple doesn't allow that payment to occur within 
the app, nor link to an external website where it can happen. Obviously the 
second point allows for ebook purchases in e.g. the Kindle app to go through 
Amazon.

Apple's basic premise is that if you use their store for discovery or as the 
only channel for delivering your service then you can pay them a sales 
commission. Since the app store is truly terrible as a discovery mechanism (for 
all but a handful of apps at the top) and most services need to be on both iOS 
and Android now, this issue seems to get much more attention than it deserves. 
The only condition that's occasionally tricky to comply with is providing some 
content for those that haven't paid, so the app isn't just a login box. Since 
Apple clearly doesn't have a monopoly in smartphones (or even tablets) I don't 
see why any kind of regulator should get involved. Apple is just being a bit 
greedy.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Sprite Kit, Box2D, Performance and LiveCode's Approach to Game Coding

2013-08-21 Thread Mark Wilcox
I wrote an extensive response to your original mail on this thread but sadly 
lost it to rubbish Yahoo! webmail + the 15k limit on the list. (FWIW, 
JavaScript is not 50 times slower than C++ but with modern JS engines like 
Google's v8 more like 5 times + that amazing Citadel demo with the unreal 
engine is compiled from C++ to asm.js  WebGL and the asm.js is then ahead of 
time compiled to native code in the browser before it is run - IIRC it only 
works in Firefox nightlies and is sadly unlikely to be supported in browsers 
other than Firefox anytime soon).

 Can't a coding platform be blazing-fast yet having an excellent IDE, built 
on an event-driven foundation and supporting multiple platforms?

The answer here is yes (try coding for Qt in C++ using their excellent Qt 
Creator IDE) but you also want the convenience of a high-level dynamic language 
and in that case the answer is no. Even in the article you linked, the author 
had to give up the convenience of Objective-C and drop down to C++ to get that 
level of optimisation.

The good news is you can also drop down into C++ from LiveCode, so if you 
really need to optimise some algorithm to that level, you can.

The other thing to note is that hardware advances also bail us out, making more 
and more possible with inefficient tools - the iPhone 5 is about 10 times 
faster than the iPhone 3G used in that article.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Sprite Kit, Box2D, Performance and LiveCode's Approach to Game Coding

2013-08-21 Thread Mark Wilcox
Box2d is definitely fun to play with but it's really only good for games that 
inherently need physics simulation - Angry Birds is a good example. (BTW, box2d 
is also the physics engine in Sprite Kit, which is basically Apple's cocos2d 
Lite - since the cocos2d developers started focussing on the cross-platform C++ 
cocos2d-x rather than the Apple only Objective-C original.)

Here's a recent article on why you don't want to use a physics engine for a lot 
of 2D games:
http://www.learn-cocos2d.com/2013/08/physics-engine-platformer-terrible-idea/


I've personally been having lots of similar issues with Unity3D building some 
micro-games recently. The games involve some magic and thus objects that 
don't obey physics. Their interaction with objects that do obey physics needs 
quite a lot of tweaking. Also physics simulation at high performance on a 
mobile device is quite CPU intensive, so they turn down the accuracy (this is 
much more of a problem in 3D than 2D) - that results in lots of tweaks just to 
avoid simple things like falling objects going straight through the floor! All 
in all I think it's debatable whether I'd have saved time simply ignoring the 
physics engine and coding my own limited physics for the little parts of it I 
needed. You get a lot working quickly by plugging into the physics engine but 
it then takes ages to polish it to an acceptable quality.

I few years ago I ported a successful side scrolling platform game from iOS 
(cocos2d) to Qt. It did all of its own physics for gravity and collisions and 
that probably added up to significantly less than 100 lines of code - all very 
simple maths and not optimised. That still ran comfortably at 60fps on the 
early iPhones and iPod Touches.

I'm not saying box2d isn't a good thing to have for LiveCode, I'm just 
suggesting we shouldn't expect it to turn the platform into a gaming 
powerhouse. :)

Mark



 From: John Craig j...@splash21.com
To: use-livecode@lists.runrev.com 
Sent: Wednesday, 21 August 2013, 12:26
Subject: Re: Sprite Kit, Box2D, Performance and LiveCode's Approach to Game 
Coding
 

I'm also interested in creating games with LiveCode and looking forward 
to box2d integration.  I've been checking out Corona and (more recently) 
- Unity (3D), to familiarize myself with physics stuff.  It makes a 
massive difference having a physics engine taking care of collisions, 
gravity, etc.  I assume that box2d performance with LiveCode will be on 
a par with other platforms using the same engine, so it will really open 
up a lot of possibilities :D

The following Unity demo only required a couple of hundred lines of 
code, since all the physics was taken care of, so I'm really looking 
forward to seeing what LiveCode is capable of in the coming months.
http://youtu.be/XuA5xbsdx_M

Since Unity has a web player, you can have a play around with the demo here;
http://splash21.com/Buggy/
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: community vs commercial for internal distribution of iOS apps

2013-08-20 Thread Mark Wilcox
It's distribution not use that counts in the GPL. If you put the download 
behind a login then you could possibly argue that the distribution was entirely 
internal, however, students are not generally under the control of an 
organisation in the same way that employees are - a student could legitimately 
argue that you gave them the binary, therefore you have to give them the source 
code too. For a company with an internal distribution, employees or 
sub-contractors are unlikely to raise the same objection. Even if you did make 
source code available internally, you can contractually prevent employees and 
sub-contractors from distributing it further, whatever the license says. With 
students I don't think that's the case.

Note that the GPL never forces you to publish your source code publicly when 
distribution is limited, just that everyone who gets the binary also gets the 
source and is free to pass it on to others.



 From: Terry Judd terry.j...@unimelb.edu.au
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Tuesday, 20 August 2013, 13:56
Subject: Re: community vs commercial for internal distribution of iOS apps
 



On 20/08/2013, at 8:31 PM, Richmond richmondmathew...@gmail.com wrote:

 On 08/20/2013 06:32 AM, Terry Judd wrote:
 I've been looking at the FAQs, and in particular this question...
 
 Can you give me some examples of where I do and don't need a commercial 
 license?
 
 ... and I'm still not exactly clear on where I stand.
 
 My situation is that I am distributing apps to students within my 
 institution using an iOS Enterprise Developer license. The apps are hosted 
 on one of our sites and are can be downloaded by anyone but they will only 
 work for our students as they require users to logon securely through the 
 uni's authentication system. I've been distributing these up to now using a 
 commercial license but I'm wondering whether this is necessary. The 
 pertinent question seems to be - do I need to distribute the source code to 
 students to be within the terms of the community license?
 
 I have a feeling that you have to make the source code available NOT only to 
 the students in your institution, but to anyone who downloads your apps; 
 whether they have a logon account or not.
 
I suspect you're right.

 This means that other institutions could pinch your app.
 
 If this fusses you, you have to buy the commercial version.

I'm about to renew anyway but was curious about what my obligations were.

Cheers,

Terry...
 
 Richmond.
 
 Terry...
 
 Dr Terry Judd
 Senior Lecturer in Medical Education
 Medical Education Unit
 Faculty of Medicine, Dentistry  Health Sciences
 The University of Melbourne
 
 
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: community vs commercial for internal distribution of iOS apps

2013-08-20 Thread Mark Wilcox
 Just for clarify : if i look in the binary of a standalone created by the 
 community edition, i can see all the scripts aka the source code, no ?


Yes, there's no encryption or password protection on community edition stacks 
but the GPL does not accept being able to extract the code in some way from the 
binary as sufficient (you can reverse engineer/dis-assemble almost any binary 
you like). You have to give them the code in such a form that they can easily 
re-build a modified binary for themselves.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Getting the Public IP address

2013-08-08 Thread Mark Wilcox


 I am trying to establish the User's public IP address. The Scripter's

 Scrapbook has several methods, all of which return the same result and all
 of which seem to return a local IP address (e.g. put the hostnametoaddress
 of the hostname into myIP). I am getting 192.168.2.2 (local) instead of the
 required 85.210.89.23 (public). It must be possible as a google search on
 'My IP address' displays it.


You didn't say anything about what you want that IP address for. Make sure you 
do really want the public IP address as there are lots of situations where 
this concept isn't very useful. The IP address for the device that is running 
the app is almost certainly a local network address. In most homes the public 
IP address belongs to your router and your PC, Mac or mobile device knows 
nothing about it.

As such something like Mark's:
 put URL http://qery.us/iptest.php;


Is the only sane way to go about getting your public address.

Note that in some scenarios there can also be a proxy at your company or ISP 
between you and the server at the other end, so this address may not even 
belong exclusively to you, it's just the address that a remote server needs to 
send packets back to for them to be routed to you.  In most situations, without 
explicit routes set up, there's no way for a remote computer to initiate 
contact with you. For example in some large corporate environments all traffic 
is routed through a central monitoring system, so this kind of web lookup 
results in an address that might not even be in the same country as you. Also, 
depending on the robustness of your required solution, you may not want to rely 
on a 3rd party service to return your address to you.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: MobGui and Resolution Indipendence

2013-08-07 Thread Mark Wilcox
 Then I wonder how to deal with the MIT licence if I have to deploy a 
commercial app.

The MIT license tells you - you have to provide a copy of the copyright notice 
and permission statement (essentially a copy of the license file) with all 
copies of the software, although I'm sure Monte isn't planning to sue anyone 
who doesn't.

There is nothing that says you have to make a copy of the license highly 
visible or easy to access, so you could just add it to the app bundle as an 
external file. However, generally accepted practice is to either include the 
license in an about box in your app if you have one, or add it to the end of 
your EULA on the App Store if you don't.

 Then, to sumarize, at the present time, what is the best practice  to create 
a little commercial  app for the iOS devices ?

There isn't really an ideal solution at the moment, so it depends on your 
current and expected future requirements. How long is the app likely to be 
maintained? Might you ever want to build it for Android?

 - build an app with several different layouts taylored according the 
 iphoneUseDeviceResolution

This works for iOS only but as an approach doesn't scale to Android where there 
are so many more resolutions to deal with.  The native iOS development 
community have been strongly encouraged towards auto-layout recently which 
suggests there may be some additional resolutions on the way for iOS too.


 - installingMobGui plugin and let this software to manage the resolution 
 issues

I believe the future of this plugin will remain uncertain until RunRev have 
released (or at least revealed much more detail on) their resolution 
independence and native platform themes functionality.  It would work for now 
but you *might* need to switch away from it in the future.

 - using mApp framework

This appears to be a viable long term solution across all platforms but as you 
say it doesn't really have any documentation yet, so there will be a greater 
learning curve.

 - wait for the resolution independence be integrated in LiveCode


If you have no time pressure then this is the easiest option but I wouldn't 
count on having something complete and stable in the next few months.  It's 
also not yet clear that this will be sufficient for most apps or if you'll 
still need something like mApp to manage layouts dynamically - from what I've 
read about the feature so far it looks like the latter may be the case.

Hope that helps,
Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: linking for armv7 failed...

2013-08-07 Thread Mark Wilcox
Are you using any externals that might not have been built for armv7?



 From: John Dixon dixo...@hotmail.co.uk
To: use-livecode@lists.runrev.com use-livecode@lists.runrev.com 
Sent: Wednesday, 7 August 2013, 9:48
Subject: linking for armv7 failed...
 

I am in the middle of trying to upload an ipad app to itunes...

To cover what I have showing in the livecode prefrences under 'mobile support'
I have xcode 4.4.1, 4.52, 4.6, 4.6.2, 4.6.3 
Available SDK's 5.1, 6.0, 6.1
Available simulators 5.1, 6.0, 6.1

I have my app identifier, development provisioning profile, distribution profile

I can build and run in the simulator... I can build a standalone and run it on 
an iPad... but I can only build the standalone with the 'build for' setting set 
to arm6... universal or arm7 doesn't seem to want to know.

I tried using the 'application loader' to load the 'distribution build' set to 
arm6, but it quiclky tells me that the armv7 component is missing...

When I try to build for armv7 the error message displayed, reads :-
There was an error while saving the standalone application
linking for armv7 failed with arm-apple-darwin10-llvm-g++-4.2:
/private/var/folders/z9/zhgc043x3cxbg5955vch0mbwgn/T/TemporaryItems/tmp.554.AdxUp0vO:
No such file or directory

Anyone know where I am going wrong ?

Dixie

                          
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: revOnline and Open Source

2013-08-02 Thread Mark Wilcox
Monte Goulding mo...@sweattechnologies.com wrote:


 It's nice when you guys get involved. I totally agree with the logic behind 
what you said by the way. Unfortunately this stuff isn't as logical as we 
often assume it is ;-)


I also think the law in this area is bonkers and agree with the more common 
sense view of intellectual property Richmond and Heather are describing.  
However, it's also worth considering that something published without a license 
may not belong to the person who published it.  It's also possible that someone 
would deliberately remove or change someone else's license but that would 
likely place most/all of the liability for subsequent infringement on them.

If you're building a business around some code, or building apps for others who 
are, then you need to be certain you have the right to distribute (and usually 
modify) all of the code you use.  The flip side to that is anyone publishing 
code that's happy for others to use it in that way needs to explicitly state 
that with a license.

I do think there's a place for anyone that facilitates code sharing to help 
raise awareness and make it easy for people to do the right thing.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: revOnline and Open Source

2013-08-01 Thread Mark Wilcox
This thread is too long and full of misunderstandings (even from the expert 
lawyer on the technical side) to reply to every post separately.  Here's my 
take (IANAL but I did work for a open source software foundation and write the 
licensing FAQs etc):

1) Anything published without an explicit copyright license (or public domain 
disclaimer) has an implied license for you to make use of it personally but not 
to redistribute it or derivatives.  GitHub very recently woke up to this issue 
and the huge amount of legally suspect sharing they were encouraging - they 
added a license picker to their repository creation process: 
https://help.github.com/articles/open-source-licensing
As part of this they created the very helpful http://choosealicense.com/ which 
in turn includes http://choosealicense.com/no-license/ - for another carefully 
crafted take on what having no explicit license means.

2) If you choose to create and share an open source library under an open 
source license then you don't usually also need a contributors agreement.  Code 
contributed to a project with an explicit license falls under the terms of that 
license.  Contributors agreements are for the ultra-paranoid or for situations 
(like RunRev's) where you need extra rights from the contributors than those 
given by the license (e.g. RunRev also needs the right to distribute 
contributions in the commercial version as well as the GPLv3 community 
version).  If you want to have an open source library (usable with community 
edition) and accept external contributions but you also want to use it in 
commercial closed source apps then choose a permissive license (e.g. MIT).

3) Stackfiles are (almost certainly) not derivative works. The content of 
stacks is generated by LiveCode but they do not contain bits of the engine 
code.  You could think of this as similar to the paint package case - most 
image files will have a header and encode your pixel data in some special 
machine readable format - they don't put parts of the paint package code in the 
file.

4) Standalones include the engine code and most definitely are derivative works 
and thus subject to the GPL.

5) Regardless of licensing issues, you can do whatever you want with 
(non-password protected) stacks you find on revOnline or anywhere else with the 
community edition *for your own use* - its further distribution of what you do 
that is restricted by the GPL.  Indeed the GPL very carefully secures your 
right to do almost anything you like with LiveCode for your own personal 
consumption.  The concept of fair use also applies to things like learning 
and study, giving you freedom to do those whatever the original license on the 
stack - it does not usually apply to commercial use or redistribution, although 
if your use is sufficiently transformative (i.e. you make the code do something 
else) it may.  However, copyright law is frankly completely inappropriate for 
software, having evolved for books, newspapers, songs etc.  There is not a 
great deal of case law in this area to clear up the mess, I suspect because 
most software companies don't want to risk
 precedents being set and thus settle out of court.  What precedents there are 
tend to follow a general trend of you can do whatever you like if you don't 
distribute it (e.g. hacking/reverse engineering etc) but if you're making money 
out of any reproduction or derivative work you'll have to pay the copyright 
holder.  As such, it's best to avoid any commercial use of material with 
unknown licensing.

6) You can't patent ideas - only inventions.  Patents for software are an even 
worse idea than copyright, unfortunately US lobbyists somehow managed to get 
that form of protection extended.  There's a stackexchange site specifically 
for patent examiners to crowdsource prior art for dodgy patent applications: 
http://patents.stackexchange.com/
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: revOnline and Open Source

2013-08-01 Thread Mark Wilcox
Kevin Miller wrote:
 I think most of the people sharing on revOnline are happy for their ideas
 to be used, otherwise they wouldn't have uploaded the stacks. However I do
 agree that some legal clarification is a good idea. How about we state
 that everything on revOnline is automatically public domain, *unless* the
 author of the stack places a clear notice on the stack that declares
 copyright and an alternative license of their choice (they can use
 whatever they like but only if they say so clearly)?
 
 This is just a suggestion for feedback, not policy yet, so let me know
 what you think.


Yes, great idea.  Just 2 points:
1) CC0 - the creative commons public domain equivalent with fallbacks (you 
can't give up your rights to your work in the same ways everywhere in the 
world) is better for software than a simple public domain declaration.
2) You'd do this by making it part of the terms and conditions of use.  I'm not 
at all sure about the legality of retrospectively applying it to content that's 
already been uploaded without explicit permission, even if you broadcast a 
change to the T's  C's.  What fraction of the content is regularly updated?  
How complex would it be to get permission for the existing stuff?  That said, 
only new stuff having an automatic CC0 license would be much better than doing 
nothing.


Mark

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: revOnline and Open Source

2013-08-01 Thread Mark Wilcox
Dr. Hawkins doch...@gmail.com wrote:


 If they don't contain *any* code, I agree.  If I designed such a file
 format, it would only
 have descriptions of what the user did, and would be pure ascii.

 I can't tell; there are certainly non-ascii characters in there, and I
 just don't know what
 they are.  I *assume* that they're just part of the description . . .


Here's one of many reasons why copyright is so bad for software.  Pure ascii 
file formats are horrendously inefficient for some types of data, yet if file 
formats aren't human readable then how is anyone supposed to judge whether or 
not they contain any copyrighted material?

I think Monte said that the binary parts of the file are just the properties of 
the various objects serialised.  We could go through the source with a 
fine-toothed comb to make sure there's no common little bit of code from the 
engine sources copied into every stack but I don't believe that would create a 
derivative work in any case.  Every stack will have the common handler 
definitions too, whether generated by the IDE or typed.  Starting a story Once 
upon a time... doesn't make it a derivative work of the first such story to do 
so (OK probably a bad example as I'm sure that's out of copyright by now but 
you get the point).  It's also not in RunRev's interests to have their engine 
license infect stacks - that wouldn't work well with the commercial license.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: revOnline and Open Source

2013-08-01 Thread Mark Wilcox
Richmond wrote:

 If copyright is not explicitly stated then, surely, the thing is up for grabs 
 . . .

That is very definitely not the case, although ideas can't be copyrighted only 
a particular expression of an idea.  So if you made a calculator app that 
looked and/or worked exactly like mine, or at least extremely similar then I 
may be able to sue you for copyright infringement.  It's much easier to prove 
infringement on visual copying than functional copying.
 I own a copy of The Microbiblion (published 1640), and were I to believe 
 that as it has no explicit copyright
 statement it was somehow protected by some implicit law I would be flying in 
 the face of the people who
 published it, when there were no copyright laws, and even the concept of 
 copyright did not exist.

If it was published in 1640 then the copyright has definitely expired, whether 
it existed at the time of creation or not.  I believe books currently get 70 
years after the year of the author's death and computer created works 50 years 
from the creation date (what about eBooks I wonder?).  After that time they are 
automatically public domain (in the UK) - the rules differ slightly in 
different countries but have been adjusted to be broadly the same in most of 
the developed world at least.




 From: Richmond richmondmathew...@gmail.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Thursday, 1 August 2013, 16:30
Subject: Re: revOnline and Open Source
 

On 08/01/2013 12:52 PM, Robert Mann wrote:
 So to sum it up :
 
 1. Situation is a big mess :: all stacks published at revOnline are ab
 initio protected by copyright, which is in apparent conflict with the
 purpose of revOnline, which is to share code ideas and code.
 2. Authors SHOULD specify the terms and license they agree upon
 3. Clearly, taking a revOnline stack and distributing a commercial version
 without the original author consent would be illegal.
 4. Open  Source Side effect : If authors do not do not care to specify an
 Open Source License, the stack cannot be simply modified and re-published
 with OS Livecode, as the second user will have no clean right to do so,
 except if he asks the original author for authorization or license to do so.
 That should be cleared a minimum at the revOnline publishing stage otherwise
 one could end up with a bunch of mixed spaghettis.
 
 5. The protection of libraries remains to be clarified.
 
 ---
 Question :: what if I open a revOline stack, find some handlers and
 mechanism I like to use elsewhere, just copy part of the script from the
 editor, modify a little to suit my precise needs and environment.
 
 Copyright applies to a complete work and does and should not protect
 ideas. The purpose of revOnline is to promote the communication of ideas
 of implementations... so we are on a kind of frontier.
 
 So that practice of using revOnline as a source of inspiration should not
 break copyright rules???
 
 

What you are doing is showing how dicky the concept of copyright, unless 
directly stated, seems
to be . . .

. . . many years ago my father had the idea of making rubber overshoes for 
horses, and wrote
about that idea to a friend of his, who said that the idea sounded fairly daft 
. . .

. . . almost simultaneously, my father discovered that somebody had had the 
same idea, and later started marketing the things. There was absolutely no 
question that my Dad's friend had done anything sneaky with
my Dad's idea; he hadn't.

Now, I suppose my father could have wasted a lot of time, effort and money 
trying to make a case for his getting some of the profits from the sales of 
rubber overshoes for horses because he had had the idea, and written about it 
to a friend, about a year before the other chap started making them.

So: I really don't see how ideas can be copyrighted.

I have pupils of mine making calculator apps with Livecode as part of their 
progging classes with
me: I cannot see why (should one of those kids decide to market his/her app) 
anybody should
have to start paying royalties to the first person who developed a calculator 
app for a computer, or,
for that matter, the person who first marketed a handheld electronic calculator.

I show the kids I work with my (bust) Sinclair calculator [ 
http://www.vintage-technology.info/pages/calculators/s/sinccamuni.jpg ] (well 
it is good for a few laughs), explain its erstwhile functionality  on the 
whiteboard,
and off they go with their progging. I am not sending five pound notes to Sir 
Clive Sinclair (even though I
admire tha man immensely).



If copyright is not explicitly stated then, surely, the thing is up for grabs . 
. .

I own a copy of The Microbiblion (published 1640), and were I to believe that 
as it has no explicit copyright
statement it was somehow protected by some implicit law I would be flying in 
the face of the people who
published it, when there 

Re: Submitting to Apple... at what size ?

2013-08-01 Thread Mark Wilcox
The only automated check that Apple are likely to do is ensure that you include 
the retina splash screen images in the bundle.  Beyond that, it's down to a 
reviewer deciding that your graphics look low-res/poor quality on a retina 
display - I haven't heard of any rejections for that reason.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: App Failed to install - iPad app

2013-07-10 Thread Mark Wilcox
Sadly the install process is one where Apple believes in security through 
obscurity.  You get generic error messages for everything that goes wrong with 
no further debug info.

Make sure you have the correct device ID included in the provisioning profile 
you are using in the standalone settings, make sure it's a development or 
ad-hoc profile and not an app store distribution profile and make sure the 
requirements and restrictions set for the app match up with the ones 
configured for the app ID on the provisioning portal.

If it still doesn't work try taking a look inside the generated .ipa file to 
see if you can see anything obviously wrong.  After that there are some tools 
for checking the signing/certificates from the command line but best come back 
to ask about that if you're still stuck.

Mark



 From: Jim Sims s...@ezpzapps.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Wednesday, 10 July 2013, 10:57
Subject: App Failed to install - iPad app
 

Hello - went through the Apple Dev process (Provisioning file made, Device IDs 
added, etc) then added my test iPad app to the list of apps in iTunes.

The app started to install (appeared and blue line for installing) but before 
completed install it stopped with a dialog of Failed to install

App works in Simulator.

Any suggestions on how to debug this?

sims
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Object Architecture ?

2013-07-09 Thread Mark Wilcox
 IDE: Object Architecture



My take on this was that the IDE part implies this is restructuring of the 
IDE and not a feature of the engine or language at all. 
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LiveCode and WebSockets

2013-07-09 Thread Mark Wilcox
Thanks Pierre, I'm pretty sure I could make something like that work but it's a 
nasty kludge, I'm not in any hurry (busy with non-LiveCode projects at the 
moment anyway) and when I get around to looking at it, I want to do it 
properly. :)



 From: Pierre Sahores s...@sahores-conseil.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Tuesday, 9 July 2013, 0:56
Subject: Re: LiveCode and WebSockets
 

Mark ,

Should work (untested) :

Node.js on the server side + revBrowser (desktop) or mobileBrowser 
(iOS/android) + some js +  a href…client-side pseudo urls/a to get catched 
by :

on browserLoadRequested pUrl, pType
-- prefered on the iOS platform (desktop platforms untested)
end browserLoadRequested

and 

on browserStartedLoading pUrl
-- prefered on the Android platform (desktop platforms untested)
end browserStartedLoading

to being able to exchange bidirectional messages between your web layer to the 
native livecode one.

note : your web view pseudo URLs needs to match existing files 
(workingpath/file.html…) in your client app sandboxed cache or document 
directory to be catchable on the Android platform at least. To maintain a 
common codebase with the iOS app, i have the habit to create the on this 
platform too.

Pierre
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: LiveCode and WebSockets

2013-07-09 Thread Mark Wilcox
 Would you care to discuss the difference between websockets and the 
socketswe work with in livecode or point me to some basic information on the
websocket implementation you think we could implement in pure livecode?
What things would keep it from working very efficiently?


I see you already have some good references.  Proper websockets implement a 
protocol on top of standard TCP socket connections on port 80.  I think you 
could write or port an implementation of this protocol directly using the 
sockets available in desktop LiveCode.

For socket.io there are also other transports available (i.e. web sockets are 
emulated over some other transport).  I think it might be possible to implement 
the XHR-polling transport in LiveCode, using load URL for the GET request (with 
the header set to keep the connection alive - it doesn't return anything until 
the server wants to send you something) and doing standard HTTP posts.  What I 
don't know is whether LiveCode can actually do a POST request while you still 
have an async load operation running, or whether it will keep the HTTP 
connection alive as required by XHR-polling (a.k.a. long polling) rather than 
just timing out??

As for efficiency, LiveCode has pretty good performance because the language is 
very high level, so each line of code typically does quite a lot in native code 
in the engine underneath.  Implementing a protocol is quite a low-level thing 
to do in such a high-level language, parsing/formatting all the messages in 
LiveCode directly is probably quite computationally expensive vs just 
putting/getting the content of those messages into/from a websocket object 
that handles the formatting/parsing for you in native code.

Also, as Pierre said, you could kludge this through the browser too, using the 
socket.io client directly.  That's going to be much, much less efficient though.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LiveCode and WebSockets

2013-07-08 Thread Mark Wilcox
We know, I'm interested in websockets for realtime comms between apps. Right 
now I think it'd be possible to implement one or more of the supported 
transports for socket.io in pure LiveCode but maybe not very efficiently. An 
alternative would be to wrap existing native implementations as externals. I've 
not looked into it in any great depth as I'm basically waiting for the engine 
refactoring to be completed before trying to hook new stuff in.

Pierre Sahores s...@sahores-conseil.com wrote:

The HTTP(S) REST architecture is full supported on any LC desktop or mobile 
platform, iOS and Android included. They can be set to act as clients of any 
kind of nTier server side application (LC-Server, PHP, RoR, etc...).

Le 8 juil. 2013 à 18:19, Mark Wilcox a écrit :

 I'm interested in using something like socket.io as part of a backend for 
 mobile (and maybe also desktop) apps.  However, we don't have proper sockets 
 support on mobile (without externals at least) and websockets are very 
 definitely not the same thing as standard sockets.
 
 What do you have in mind?  I'm certainly interested in discussing it.
 
 Mark
 
 
 
 From: Andrew Kluthe and...@ctech.me
 To: How to use LiveCode use-livecode@lists.runrev.com 
 Sent: Monday, 8 July 2013, 16:05
 Subject: LiveCode and WebSockets
 
 
 I have been learning a little bit about websockets lately for a project and
 I have never really played around with livecode's socket communication
 methods. This makes me curious.
 
 Is there anyone else on the list that might be more familiar with both that
 would be interested in discussing using something like socket.io as part of
 a backend for livecode desktop applications?
 
 
 -- 
 Regards,
 
 Andrew Kluthe
 and...@ctech.me
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

--
Pierre Sahores
mobile : 06 03 95 77 70
www.sahores-conseil.com


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Memory usage

2013-07-03 Thread Mark Wilcox
On desktop platforms, yes, as long as the user hasn't changed settings to 
disable it (unlikely). On mobile platforms, no, use too much memory and the OS 
will kill your app.

Mark
 

J. Landman Gay jac...@hyperactivesw.com wrote:

Can I safely assume that if I load a whole bunch of stacks into RAM, 
that virtual memory will take care of memory usage for me?

My project is getting huge.

-- 
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Augmented reality with LiveCode ?

2013-07-02 Thread Mark Wilcox
If you don't need the Pro features and can live with the standard Unity 
splash screen then it's free for iOS now. If those thing aren't true then yes, 
its several times the cost of LiveCode.

Sergio Schvarstein sschvarst...@gmail.com wrote:

Thanks Mark for your answer.

These days I am exploring different possibilities and I found Vuforia as a 
very possible solution.

I will also look Unity, following your advice. I have a lot of 3D programming 
skills inherited from 3D Lingo so maybe I can find a good path with Unity. 
I've explored Unity's 3D possibilities a year ago, but the licensing price 
didn't convinced me. Maybe it's time for a new approach and thanks for 
reminding it.

Regards.


__
Sergio Schvarstein
sschvarst...@gmail.com

__


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Augmented reality with LiveCode ?

2013-07-01 Thread Mark Wilcox
 Is there any way or tool for creating an Augmented Reality app for iOS using 
 LiveCode ?



LiveCode is (currently at least) a truly terrible tool for building augmented 
reality apps - primarily because it has no functionality for handling 3d 
content or 3d rendering.  Even if you're doing the sort of AR that's based on 
sensor input and location with 2d overlays rather than marker or point cloud 
recognition, you still need to render in a 3d world.  With an external you'd 
either have to handle all of the 3d stuff outside of LiveCode, or build quite a 
complex interface to enable it to be managed from LiveCode.

At least until LiveCode adds 3d graphics capabilities the best general purpose 
environment for building cross-platform AR apps is Unity and the best 
library/plugin for tracking markers or point clouds is Qualcomm's Vuforia.  I'd 
suggest looking at those first.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Android published app live...

2013-06-27 Thread Mark Wilcox
I've seen anywhere from minutes to a few hours.



 From: Paul Maguire m...@paulmaguire.me
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Thursday, 27 June 2013, 14:48
Subject: Android published app live...
 

Hi.

Anyone know how long it takes for a published Android app to go live in Google 
Play? I pushed the button to publish an hour ago and apparently it should take 
'a matter of minutes'

Kind regards,        Paul.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: OOH! Here are a couple of cool ios7 features that I hope LC takes advantage of!

2013-06-27 Thread Mark Wilcox
I think Monte is right, this is per-app control of system services rather than 
something implemented by the apps themselves.  Like you have per-app settings 
for notifications right now which the user controls, the first two of these 
will be settings controlled by the IT department.  App Data Protection is, as 
it says, automatic for all apps, although only works while the device is 
passcode locked.

Mark



 From: Mike Kerner mikeker...@roadrunner.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Wednesday, 26 June 2013, 22:33
Subject: Re: OOH! Here are a couple of cool ios7 features that I hope LC takes 
advantage of!
 

Without looking at the API's for 7, I was guessing each of those were
things that could be set up per app, which, if correct, would then be
subject to LC implementing them.  The context implied that to me, but I
don't know that for sure.

This will be unbelievably useful for our in-house apps, and will both
greatly reduce the stress we go through with them, and will make iOS the
first choice, I think, for in-house apps.



On Wed, Jun 26, 2013 at 5:00 PM, Monte Goulding mo...@sweattechnologies.com
 wrote:

 All three of these look like things that IT departments setup and work
 with any app... managed open in for example would just change the list of
 open in apps you see in mergDoc. Just a way for them to further interfere
 with your life when you BYOD


 On 27/06/2013, at 3:27 AM, Mike Kerner mikeker...@roadrunner.com wrote:

  www.apple.com/ios/ios7/business/
 
  1) Managed Open In  - can make your data only openable in your app,
 which
  takes the sandbox (which was already really good) even further
 
  2) Per app VPN
 
  3) App Data Protection is now automatic, no need to set it for your app.
 
 
  --
  On the first day, God created the heavens and the Earth
  On the second day, God created the oceans.
  On the third day, God put the animals on hold for a few hours,
    and did a little diving.
  And God said, This is good.
  ___
  use-livecode mailing list
  use-livecode@lists.runrev.com
  Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
  http://lists.runrev.com/mailman/listinfo/use-livecode

 --
 Monte Goulding

 M E R Goulding - software development services
 mergExt - There's an external for that!





 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




-- 
On the first day, God created the heavens and the Earth
On the second day, God created the oceans.
On the third day, God put the animals on hold for a few hours,
   and did a little diving.
And God said, This is good.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: iOS App from 2012 - iphone5 pages are resized in simulator

2013-06-25 Thread Mark Wilcox
 (you can check inside the app bundle - it has to be called 
default-5...@2x.png)

Sorry to avoid causing confusion, let me correct my typo - that should have 
been default-5...@2x.png.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Post command help

2013-06-24 Thread Mark Wilcox


 Another suggestion would be setting the property libUrlSetSSLVerification
 to false
 as this may also resolve the issue..

 Another question: does setting libUrlSetSSLVerification to false mean 
 security is turned off completely, or only that the certificate isn't checked?

Not doing SSL Certificate Verification means that the certificate isn't 
checked, the content is still sent encrypted.  Whether this matters depends on 
the setup - if you control both the client and server ends then it's not such a 
big deal, although technically it does leave you vulnerable to 
man-in-the-middle attacks.  You still have the option of bundling a collection 
of root certificates with your app (and you can find up to date collections 
online freely) but that will mean the certificates will not be updated unless 
your app is, so overtime they will go out of date.  If you're only connecting 
to your own server that's not much of a problem either - you need to give 
everyone an update of the app when a certificate in your one certificate chain 
expires but that's all.  Keeping a general set of certificates for the open web 
up to date is another matter entirely.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Running LiveCode on Google Chrome Books

2013-06-24 Thread Mark Wilcox
Mike Kerner wrote:

 The new units also have a certain amount of local storage for using with
 Google Drive.

 The chromebook is designed mainly to be a lightweight, fast, cheap,
 high-battery life machine for running HTML5.  The main weakness, IMHO, is
 that it is about 5 years late because ipads and android tablets are far
 more appealing at around the same money.


This is very true - in fact, Android tablets (+ a keyboard case if you need 
one) are available for much less and they're getting cheaper and more capable 
at an astonishing rate.  Wholesale price in China is $45 (US) for decent 
Android tablets and falling.  You can buy capable devices 10 in the UK for 
just over £100 (a bit more than half that for 7). Keyboard cases are about $10 
for USB and $25-50 for Bluetooth.

If you want something portable primarily for a single simple app then it's 
definitely worth looking into.  The lack of decent tablet software for Android 
in general makes then much less appealing than iPads at much higher prices for 
general use currently - that's bound to change for a lot of people over the 
next year or two though.

Personally I don't see the point of the Chromebooks at all.

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: old habits are hard to break

2013-06-21 Thread Mark Wilcox


Richmond wrote:

 Well that is rather the same as my being extremely mean when removing 
 the core of a green pepper,
 cutting as near to the stem as possible, because at one time in my life 
 I was really living on the edge,
 financially (when I was in the USA); while now I can both afoord lots of 
 green peppers and live in
 a country where they are super abundant.

It's not exactly the same though. With a physical thing like a green pepper, 
cutting nearer the stem will always get you more to eat. Micro-optimisations to 
code are dependent on assumptions about underlying compilers/interpreters and 
hardware and so generally best avoided until required.  A good example from 
this thread is having four different versions of the same function with tiny 
variations at the beginning. One of the key bottlenecks in a modern device 
(desktop or mobile) is the speed of the RAM vs the speed of the processor; if 
your whole program doesn't fit in the CPU caches then splitting out function 
variants can actually make things slower, due to the need to fetch a different 
variant from RAM (or even disk or flash memory) vs having a single longer 
version that remains in cache.  Combine that with the fact that you then have 
to maintain multiple versions of the same code and we have a good example why 
premature optimization is the root of
 all evil (Donald Knuth).

Most people use very high level languages like LiveCode to optimise for code 
clarity, simplicity and readability - certainly not performance.

Maybe the old habits are worth the effort required to break them?

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: mobile image gallery / slider - web or standalone based?

2013-06-06 Thread Mark Wilcox
Yes, my file-based method is purely to avoid needing to run a server at all 
(because it's really cheap just to host files on, say, Amazon S3) but if you 
run your own servers anyway then it's a much neater solution to have a simple 
API to tell you which images you need to download and where to get them from.  
The usual pattern here is for the app to store the date of the last time it 
refreshed it's local cache and send this to the server every time it starts up 
to find out if it needs to download any updates.  This way you can use server 
side timestamps for everything and avoid the problem of device time skew.

Mark



 From: Matthias Rebbe matthias_livecode_150...@m-r-d.de
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Thursday, 6 June 2013, 11:31
Subject: Re: mobile image gallery / slider - web or standalone based?
 

Mark,

thank your for your thoughts. I think i will let livecode download the images 
to store and chache them directly.
I could let my livecode app communicate with an LiveCode server script to get 
information about modification dates.

Regards,

Matthias
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: First App rejected for odd reasons

2013-06-05 Thread Mark Wilcox
 I may be wrong about this (can anyone verify?), but if you're building for 
 iOS 5 or later, you should be perfectly safe selecting armv7 only and 
 building for that, since any devices capable of running iOS 5 and above are 
 armv7 devices only.


Yes, this is correct and a good idea - the iPhone 3G was the last device to 
have an ARMv6 processor and that can only run iOS 4.3 or earlier - that's why 
Apple has dropped support for armv6 builds from the more recent Xcode versions.

I expect (really hope) that LiveCode only duplicates the engine code within the 
Universal binary and puts the main stack in a data section that is shared by 
both code variants - if that's the case, this might only save you a few 
megabytes of engine code, but you should do it anyway - iOS5+ with armv6 is 
pure waste.

I'd not seen the main executable size issue before and a quick Google suggests 
both this and the not yet mandatory PIE warning are new.  This is either a 
subtle crackdown on low quality apps produced by tools other than XCode or 
there are some new products or tools on the way which will care about this in 
the future.  I'll bring it up on the engine forum.

As I understand it, only the main stack is actually bundled inside the 
executable in a standalone, so a simple fix would be to create a launcher stack 
as your main stack which simply loads the previous main stack which you can 
include in the bundle separately.  However, creating apps much, much larger 
than they need to be is not friendly to your users.  Large images should be 
JPEG compressed - if they contain text that loses quality due to JPEG 
compression then split the images up (or if it's all text, store it as text not 
an image!).  Audio should also be in a suitable compressed format (i.e. not 
WAV).

In this case it sounds like LiveCode 6's application browser might be handy for 
finding out what's actually inside the stack easily, then removing all the 
media and referencing it externally.  Otherwise it might be easier to rebuild 
the stack by copying the scripts across into a new one that only references 
external media from the start?

Mark



 From: Chris Sheffield cmsheffi...@icloud.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Monday, 3 June 2013, 20:54
Subject: Re: First App rejected for odd reasons
 

Another thought. In the standalone settings, are you building a universal 
binary? I may be wrong about this (can anyone verify?), but if you're building 
for iOS 5 or later, you should be perfectly safe selecting armv7 only and 
building for that, since any devices capable of running iOS 5 and above are 
armv7 devices only. This may also reduce the size of your executable.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: mobile image gallery / slider - web or standalone based?

2013-06-05 Thread Mark Wilcox
Hi Matthias,

If you go the LiveCode route you can download updates to images in the 
background to add/replace existing ones in the app - just make sure you include 
the images external to the stack.  No need to do app updates to replace images.

If you went the browser/jqtouch route in a native app you could also use 
standard web cache control features so the images didn't get reloaded all the 
time - you just have to manually persist your own browser cache between app 
launches.  I don't know for sure but I doubt LiveCode does this last bit for 
you, so the web option is not as flexible right now and the slide/scroll 
performance will be poorer (a LiveCode swipe should move the image with your 
finger, like you're actually dragging the page, while the jqtouch version lags, 
so you've already swiped when the image starts moving).

If you really prefer to create the gallery with web technology then you could 
use LiveCode to download updates to local files and have your web content 
reference those, rather than remote images directly.

The downside to loading the images in the background with LiveCode at present 
is I don't think you can get the HTTP headers for the image files with LiveCode 
(which would let you check things like last modified date on files and folders 
on the web server) so you'd have to maintain a small file on your web server 
with details of the latest files and their modification dates so the app can 
figure out what it need to download in order to avoid lots of repeated 
downloads of the same files.  Does that make sense?

Mark



 From: Matthias Rebbe matthias_livecode_150...@m-r-d.de
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Monday, 3 June 2013, 19:43
Subject: mobile image gallery / slider - web or standalone based?
 

Hi,

what would be the best way to create a mobile image gallery with slider effect.
I have to include an image gallery in an mobile app (ios and android).

Would it be better to realize that image gallery slider (swiping with the 
finger) as  web based
thing with jqtouch and use a native browser to integrate that in the mobile app?
Advantage would be the ease of adding/replacing images.
Disadvantage: The user does need an internet connection to see the images.

Or is it much better to include all 30 images within the app and create the 
image gallery/slider with livecode?
Advantage: Images are already on the device. No need to download them again and 
again.
Disadvantage: Adding/replacing images  means updating the app in the stores

I would prefer to create a web based image gallery and show that in a native 
browser control.

What do you think?

Regards,

Matthias





___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: First App rejected for odd reasons

2013-06-05 Thread Mark Wilcox
Hi Tom,

No need to test JPEGs again on iOS/Android - the JPEG format itself doesn't 
support transparency! :)

If you need transparency then there is another option which is to store the 
image and it's mask (effectively alpha channel) separately, although I've not 
worked with these features in LiveCode.

If you have a number of very large images such that your app is genuinely 
hundreds of megabytes it's worth doing some optimisation - some users will not 
download really big apps to avoid using up limited storage space on their 
device.  From a performance perspective any further compression of the data 
(e.g. JPEGs are smaller) actually makes more work for the device decompressing 
it although you're unlikely to notice the difference - it's only when you're 
downloading the images that making them smaller improves performance.

One uncompressed image at iPad retina resolution is at least 12MB. 14 of those 
is 168MB.  I generalised on large images before - PNGs can be very good for 
compressing images with relatively few colours in large blocks but terrible for 
compressing photographs.  That said, sticking with PNG there are ways to get 
the exact same image much smaller with a better compressor.  Take a look at 
this:
http://imageoptim.com/ipad.html


On the engine forum Mark Waddingham has said that they can tweak the build 
process to remove images (and even the main stack) from the executable fairly 
easily for future releases.  Then the executable will only be about the size of 
the compiled engine, even if the app itself is much bigger.

Mark's response also hinted that maybe if you're building a universal binary 
(i.e. more than just armv7) you might be getting 2 copies of everything in the 
main stack within the executable.

 So I'm not sure what would constitute a stack being 'much larger' than it 
 needs to be - in my first case it was the main stack that was large and now 
 it is the images folder that is large - either way the download is going to 
 be the same size and be too big for cellular download (which is why I 
 believe Apple has that warning in the first place.)


Well, for a photograph, a PNG might give you 4:1 compression while due to the 
retina nature of the iPad display you typically can't see the reduced quality 
for the same image at medium quality 40:1 JPEG compression - full resolution 
with more compression usually looks better than 25% (original iPad) resolution 
with less compression.  I'd say 10x the size is much bigger. :)

The size restriction is new and unrelated to the 3G download limit (which is 
50MB). For now we can only speculate what the limit is for.

Mark



 From: Thomas McGrath III mcgra...@mac.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Wednesday, 5 June 2013, 13:41
Subject: Re: First App rejected for odd reasons
 

Mark,

At first I wanted to object to the need for JPEG only for large images as all 
of the research that I have done (especially concerning transparency issues) 
has told me to never use JPEG (except for the web) in most of my apps but then 
I realized that I have not tested those same results for iOS and Android 
engines, so I will need to do those tests again to verify/reject my findings. 
That said, using 2048 png's with transparency layers on fourteen cards with 
special visual effects and playing song files on one channel and a voice over 
on another channel did not slow down either the logic code or the effects code. 
I created a Ken Burns effect in LC and it runs as smoothly with the larger 
images as it does with smaller variations. So I'm not sure what would 
constitute a stack being 'much larger' than it needs to be - in my first case 
it was the main stack that was large and now it is the images folder that is 
large - either way the download is going to be
 the same size and be too big for cellular download (which is why I believe 
Apple has that warning in the first place.) I would not think that 14 retina 
sized images on 14 different cards is too large for a mobile app and that 
instead they must be referenced and that that would be a requirement. Normally 
I think if it was like 50 images it should be referenced but not just 14. Most 
LC projects I have seen all use lower quality images or regular 1024 images 
enlarged for retina via code, but they are definitely not retina images.

All of that said, I think what you stated is spot on and should be included in 
a best practices type document somewhere for mobile development. Maybe with 
some recommendations for audio and compression comparisons.

Thanks,

Tom

-- Tom McGrath III
http://lazyriver.on-rev.com
mcgra...@mac.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Successful recipe for LC iPhone apps...

2013-06-05 Thread Mark Wilcox
I haven't submitted an app but here's my take on the official Apple stance and 
what it means:

All apps have to support the iPhone 5 resolution (or 4 Retina) and retina 
displays since May 1st.

The iPhone 5 thing is clear - your app must scale to that resolution and not 
run in compatibility mode (with the black bars top and bottom).  IIRC you need 
to include a default-5...@2x.png file (640x1136 px) image for the system not to 
put you in compatibility mode - even if it's a plain black one.

The retina display support thing is not clear - if your app doesn't look great 
on a retina display they might reject it.  Scaling images up programatically is 
definitely not banned though.  If you're building native apps with Xcode they 
obviously want you to include @2x variants of all your images but the situation 
for apps built with other tools is less clear. I'm guessing most apps that 
include the default.png in all the @2x variants will probably be OK for now, 
since that's the only thing they can easily check programatically at submission 
time.

Position independent code is only a warning for now and RunRev will fix that 
problem in a forthcoming release by setting the appropriate compile/link flags 
- looks like it's to do with a new security feature Apple are enabling to get 
better traction in the enterprise market.

You do definitely need LC 6.0.2 (or 5.5.5) to get the UDID fix though.

Mark



 From: John Dixon dixo...@hotmail.co.uk
To: use-livecode@lists.runrev.com use-livecode@lists.runrev.com 
Sent: Wednesday, 5 June 2013, 13:10
Subject: Successful recipe for LC iPhone apps...
 

There seems to be lots of stories about rejection of LC apps from the iTunes 
store around..
What is the position regarding submission these days in the ever shifting sands 
of Apples' whims ?

Has the iphone app got to be built at 640 x 960 ?
What has position independant code got to do with building the app in liveCode ?

I have an app ready for submission, but it has been built at 320 x 480... 
reading the stories on the forums it seems that submitting at this size will 
attract a rejection... is this correct ?

Anybody submitted one recently and it got through ?
                          
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Successful recipe for LC iPhone apps...

2013-06-05 Thread Mark Wilcox
Not using images?  Are you using images for your graphics/buttons, or is 
everything procedurally generated?  My guess is that it won't matter at least 
at the moment, although procedurally generated stuff is definitely OK.

The default.png and variants (e.g. default-5...@2x.png) I mentioned are what 
LiveCode calls splash screens (they are not actually meant to be used as splash 
screens according to Apple's HIG - apologies for using the native iOS coding 
terminology) in the standalone application settings.  I'm not sure what the 
standalone builder does if you don't set one for a particular resolution?

I assume the app icon should also have a retina version for them to accept apps 
now.  Beyond that if they think your app looks low-res on a retina display then 
they might reject it but I doubt there are any official criteria.

Mark



 From: John Dixon dixo...@hotmail.co.uk
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Wednesday, 5 June 2013, 16:38
Subject: RE: Successful recipe for LC iPhone apps...
 

Mark...

Thanks for the reply... I have already a couple of apps in the store that will 
run at the correct size, ie both on the iphone 4 and the iphone 5... I am not 
using any images... I am vague about whether we have to now only develop in a 
stack size of 640 x 960, for the iphone 4 or 640 x 1136 for the 5... or can I 
still lay it out at 320 x 480 as long as graphics and buttons are moved to 
appropriate places if the user should choose the run the app on an iphone 5 ?


 Date: Wed, 5 Jun 2013 16:06:18 +0100
 From: m_p_wil...@yahoo.co.uk
 Subject: Re: Successful recipe for LC iPhone apps...
 To: use-livecode@lists.runrev.com
 
 I haven't submitted an app but here's my take on the official Apple stance 
 and what it means:
 
 All apps have to support the iPhone 5 resolution (or 4 Retina) and retina 
 displays since May 1st.
 
 The iPhone 5 thing is clear - your app must scale to that resolution and not 
 run in compatibility mode (with the black bars top and bottom).  IIRC you 
 need to include a default-5...@2x.png file (640x1136 px) image for the system 
 not to put you in compatibility mode - even if it's a plain black one.
 
 The retina display support thing is not clear - if your app doesn't look 
 great on a retina display they might reject it.  Scaling images up 
 programatically is definitely not banned though.  If you're building native 
 apps with Xcode they obviously want you to include @2x variants of all your 
 images but the situation for apps built with other tools is less clear. I'm 
 guessing most apps that include the default.png in all the @2x variants will 
 probably be OK for now, since that's the only thing they can easily check 
 programatically at submission time.
 
 Position independent code is only a warning for now and RunRev will fix that 
 problem in a forthcoming release by setting the appropriate compile/link 
 flags - looks like it's to do with a new security feature Apple are enabling 
 to get better traction in the enterprise market.
 
 You do definitely need LC 6.0.2 (or 5.5.5) to get the UDID fix though.
 
 Mark
 
 
 
  From: John Dixon dixo...@hotmail.co.uk
 To: use-livecode@lists.runrev.com use-livecode@lists.runrev.com 
 Sent: Wednesday, 5 June 2013, 13:10
 Subject: Successful recipe for LC iPhone apps...
  
 
 There seems to be lots of stories about rejection of LC apps from the iTunes 
 store around..
 What is the position regarding submission these days in the ever shifting 
 sands of Apples' whims ?
 
 Has the iphone app got to be built at 640 x 960 ?
 What has position independant code got to do with building the app in 
 liveCode ?
 
 I have an app ready for submission, but it has been built at 320 x 480... 
 reading the stories on the forums it seems that submitting at this size will 
 attract a rejection... is this correct ?
 
 Anybody submitted one recently and it got through ?
                          
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
                          
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:

RE: Import Snapshot in iOS

2013-05-15 Thread Mark Wilcox
Is everyone using the same versions of LiveCode and iOS? The code in GitHub 
looks like it won't successfully capture a rectangle from an accelerated 
screen on any recent iOS version.


John Dixon dixo...@hotmail.co.uk wrote:

Ender...

There is not a problem with importing a snapshot from a rectangle !.. and it 
doesn't matter is acceleratedRendering is true or false.. or has even left the 
room ..:-)

 Date: Wed, 15 May 2013 03:13:59 +0300
 From: endern...@gmail.com
 To: use-livecode@lists.runrev.com
 Subject: Re: Import Snapshot in iOS
 
 Yepp :)  
 *import from object* works fine.
 The problem is *import from rect* notation.
 
 @Roger,
 for now the only solution seems this piece of code:
 _set the acceleratedRendering of this stack to false
 _import snapshot from rect tRect
 _set the acceleratedRendering of this stack to true
 
 My sample stack in the forum post works without a glitch with this update.
 So, the code in that stack does 3 things:
 * Prohibits the black snapshot {turning off the a-R temporarily}
 * Prohibits the transparent blank snapshot {excluding the iPhone status bar}
 * Places the final snapshot into the visible portion of the screen
 
 
 Best,
 
 ~ Ender Nafi
 
 ~… together, we're smarter …~
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Import Snapshot in iOS

2013-05-14 Thread Mark Wilcox
I looked up the iOS snapshot code.  It looks to me as if it renders the 
contents of the window into a bitmap context.  I've written my own screen 
snapshot and video recording code on iOS and this doesn't capture the contents 
of a view/window drawn directly with OpenGL - for that you need to read back 
the pixels from the hardware graphics accelerator directly.

So if my understanding of accelerated rendering is correct, then this 
shouldn't work - if LiveCode didn't block you making the call in that mode, you 
should get back a black image. 

I'm hoping to find out how to trace my way down from a command to the code that 
implements it in a workshop on Thursday.  Curious to look at this one some more 
when I understand the code better.

Mark



 From: Roger Guay i...@mac.com
To: How to use LiveCode use-livecode@lists.runrev.com 
Sent: Tuesday, 14 May 2013, 19:59
Subject: Re: Import Snapshot in iOS
 

Richard,

I presume you were asking anyone on the list. I, for one, do not know!

Roger


On May 14, 2013, at 9:37 AM, Richard Gaskin ambassa...@fourthworld.com wrote:

 Ender Nafi wrote:
 Roger's right.
 It's an odd thing but setting the a-R to true prohibits importing snapshots.
 Commenting it out fixes the issue.
 Not tested in LiveCode 6.0.1, though…
 
 That's not mentioned in the Dictionary.  Is that a documentation bug, or does 
 it only affect the older method of importing snapshots by rect while still 
 allowing the new method of making snapshots from object references?
 
 --
 Richard Gaskin
 Fourth World
 LiveCode training and consulting: http://www.fourthworld.com
 Webzine for LiveCode developers: http://www.LiveCodeJournal.com
 Follow me on Twitter:  http://twitter.com/FourthWorldSys
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Re: Import Snapshot in iOS

2013-05-14 Thread Mark Wilcox
Yes, the code I looked at definitely took a rect and not an object. I suspect 
the new method is not taking a snapshot of the screen at all but rendering the 
object into an image. Wouldn't using the new method and asking for the current 
card work for most scenarios? Presumably if you want a subset of the screen 
after that you can crop part of the image?


Richard Gaskin ambassa...@fourthworld.com wrote:

I recently stumbled across this post by Ender Nafi which confirm my 
hunch that it's only the older import from rect option that fails, 
and the newer import from object seems to work well:
http://forums.runrev.com/viewtopic.php?f=49t=15093#p75531

-- 
  Richard Gaskin
  Fourth World Systems
  Software Design and Development for Desktop, Mobile, and Web
  
  ambassa...@fourthworld.comhttp://www.FourthWorld.com


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: While the forum is down...

2013-05-11 Thread Mark Wilcox
Does LiveCode validate the provisioning profile in any way?

Even if it does it shouldn't be too hard to remove that requirement from the 
IDE/build system since it's all open source.

Xcode allows you to build binaries without signing them so I don't see any good 
reason why LiveCode should do any jailbreak policing.


Colin Holgate co...@verizon.net wrote:

Although in theory what you ask could be done, LiveCode won't build the 
standalone app if you haven't selected a provisioning profile, and you would 
only have one of those if you had an iPhone developer license.



___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: While the forum is down...

2013-05-11 Thread Mark Wilcox
You can't build and run unless you have an appropriately provisioned device 
connected but you can build or archive without one - you need to be able to 
for building anything that's not signed for your device, including app store 
submission builds.

Colin Holgate co...@verizon.net wrote:

This may not be true. I just tried, and Xcode let me test on iOS Simulator, 
but when I tried to build for iOS Device it complained about there being no 
provisioned iOS devices connected. When I connected my iPhone 5, which is 
provisioned and in my iOS developer account, I could then test on that device.


 Xcode allows you to build binaries without signing them so I don't see any 
 good reason why LiveCode should do any jailbreak policing.
 

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Odin down ?

2013-05-11 Thread Mark Wilcox
Heather said the on-rev site would be down but the service should be up.

Colin Holgate co...@verizon.net wrote:

Everything is down until Tuesday.


On May 11, 2013, at 7:25 PM, Martin Koob mk...@rogers.com wrote:

 I just checked my site hosted on odin and it is not responding.  
 
 Also when I tried to log in with cPanel there is no response.
 
 I sent an support request to supp...@on-rev.com with 'URGENT' in the subject
 line.  I think that is the way to get emergency support.  I usually used the
 web form at www.on-rev.com but that is down too.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: automated iOS rejection: Non-public API usage

2013-05-09 Thread Mark Wilcox
kellymdempewolf kellymdempew...@gmail.com wrote:


 Is there any way that I can work around this to fix it in my own app in the 
 meantime?


Sadly not, this is why I suggested some sort of community supported process as 
a safety net for Apple rule changes.
Your app almost certainly doesn't use the UDID but the LiveCode engine binary 
links to the banned method, so you can't pass the automated test until you have 
a LiveCode commercial build with the offending method call removed.

I could build a standalone with it removed from the community version source 
code but that can't be used to submit to the app store.

Probably worth adding a note to the bug report and let them know which LiveCode 
version you're using since they may want to prioritise patch releases for those 
actively waiting to submit apps.

Mark



 From: kellymdempewolf kellymdempew...@gmail.com
To: use-revolut...@lists.runrev.com 
Sent: Thursday, 9 May 2013, 14:46
Subject: Re: automated iOS rejection: Non-public API usage
 

Is there any way that I can work around this to fix it in my own app in the
meantime?  I have an app that needs to be sent to iTunes but I have the same
rejection happening!  (I have subscribed to the bug report so I'll see when
it's fixed but for now I need to get the app sent!)

Thanks!



--
View this message in context: 
http://runtime-revolution.278305.n4.nabble.com/automated-iOS-rejection-Non-public-API-usage-tp4664353p4664566.html
Sent from the Revolution - User mailing list archive at Nabble.com.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: suspend/resume messages on Android?

2013-05-08 Thread Mark Wilcox
Terry Judd terry.j...@unimelb.edu.au wrote:

 

 I'm guessing the OS probably doesn't notify the app that it's suspended.

 Maybe not. I think you can potentially get a list of active processes and 
 determine which one is active. If we could poll that list using an external - 
 if we ever get externals for Android - then we could build our own suspend 
 and resume routine.


I know the RunRev team are awesome but I'm a little perplexed anyone would 
assume that the Android app lifecycle model is completely broken rather than 
there's simply a bug/missing feature in LiveCode.

Android does indeed send apps (actually Activities) messages about pause/resume 
and losing/gaining focus.  I had a quick look in the code and as far as I could 
tell most of the relevant messages get passed from Java through to native code 
and then simply logged.

As I understand it, LiveCode iOS apps only officially support exiting on 
suspend.  What do you think should happen instead on Android?

Mark
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


  1   2   >