2014년 11월 30일 일요일

PhoneNumberPicker status

I've been using AI Classic for a couple of years and am waiting with 
impatience for the migration to AI2 tool to materialize. I have a rather
big and complex app that I gave up on coding manually in AI2, so I hope
that the tool does at least 40-50% of the work for me :-).

But here is the problem that I'm having in my app compiled many times
(including just an hour ago) on AI Classic: The app uses the 
PhoneNumberPicker component at its very core, but it stopped working on most of
the recent phones/tablets I'm doing my tests on (LG, Samsung). 

I get the "Unfortunately, Contacts has stoppped." error. The same APK works 
fine on older phones (ZTE Blade S, Galaxy S1) and Android versions, like 2.3.3. 
The Name, Phone, Email and Picture of any contact can be obtained and worked 
on just fine, so bugs in my code are unlikey.

I found this issue mentioned in, for example, 
https://code.google.com/p/app-inventor-for-android/issues/detail?id=2528&q=phonenumberpicker&colspec=ID%20Status%20Summary%20Owner%20Reporter%20Stars

No problem, I'll eventually port the app to AI2 where this feature must be working OK
and my app will live on.

However, I found some other bug entries stating that the situation around contact 
picking is the same in AI2. But, in this forum I found posts (from Hal and Jos) 
that imply that the issue is resolved and tested. But is it in the latest code?

So, is anybody using PhoneNumberPicker on AI2 successfully with newer phones?
If it works in AI2, that's good enough for me, although porting the fix back to AI Classic would be great!

Thanks in advance for any comments regarding this (show-stopper, for some) issue?



I use the PhoneNumberPicker with no issues on a two year old Koycera phone with an AI2 app. OS 4.0.1

You are aware that MIT intends to discontinue AI Classic very soon?   

To make your AI Classic and Ai2 app, you have to manually convert the project.    Yes, this means start making the blocks all over again.

MIT said in late September  an AI to AI2  transfer tool might be available Fall 2014.  There are huge changes going on at the moment regarding AI2 that probably could set that timing for the tool back indefinitely as AI2 goes from Android API 3 to Android API 4.       Be aware, the 'converting'  tool DOES NOT EXIST yet.  When or if the tool does become available,  the tool probably will not provide a seamless conversion.   Everything probably will NOT convert and the users may have to make a lot of manual changes to the 'converted' app to get it to run properly.  Using the tool that is contemplated might be more difficult for some developers than programming their AI apps in AI2 manually.

The moderators recommend users do not depend on the tool and start converting their AI Classic projects to AI2 manually NOW.    Yes, that is a lot of work.    If you depend on a vaporware tool, you will be disappointed.

To help with a manual conversion, here are some links that may help your manual conversion:

At the moment the only way to do the AI Classic to AI2 conversion is to manually recreate the app from Classic to AI2.

Here are two documents that will help.  The first is a comparison of Classic Controls compared to the new AI2 controls and some advice on how to convert:   https://groups.google.com/forum/#!searchin/app-inventor-developers-library/Classic$20/app-inventor-developers-library/BFtMa0BpJq8/tY_9ZCXbtH8J

The second is a summary of the new features in AI2 and in some cases, the controls from AI they replace  http://appinventor.mit.edu/explore/ai2/whats-new.html  




Thanks for the quick and elaborate reply and the PhoneNumberPicker working in AI2 confirmation! 

Yes, I am aware of the situation completely -- there is no future in staying with AI Classic, of course. I'm busy with other things, so I'm postponing porting from AI1 to AI2 until/if the magic tool materializes. I code new stuff in AI2, of course.

By examining an AI1 app source archive, one sees no problems "porting" the assets folder and the project.properties file. The problem is in the two screen1.* files. I'm hoping that at least screen1.scm will be simple/straightforward to convert to AI2. For me, this would be a great time saver since I have lots of screen objects there, plus, I took the effort to rename most of the objects to something meaningful.

So, if I get at least the screen layout generated by the tool, blocks coding would be so much easier.


댓글 없음:

댓글 쓰기