If you are a developer, and want test your new build and keeping the old settings of your app.here is the quick answer.
TRY install the new apk, you will get [INSTALL_FAILED_ALREADY_EXISTS] failure.
here is the trick, add the –r, will keep the old setting while applying the new app. ![]()
My Note on Solutions.
Thursday, May 23, 2013
How to: Adb install apk get error, INSTALL_FAILED_ALREADY_EXISTS
Friday, May 3, 2013
ZeroMq, pub/sub mode tutorial , how-to
following the last post, it’s extremely easy to do a pub/sub empowering the zeromq.
IN C#, we setup one socket to pub type, and bind to one tcp port. IN the Node.js and Another C# client, we can create a socket with type Sub. then subscript the topics we are interested.
then in the Node.js, create one special socket sub, and remember to call subscribe with the interested topic.
C# subscriber code, ![]()
Run the app, from c#, we can see message published and received,
from node.js client, ![]()
Wednesday, May 1, 2013
Test ZeroMQ in C# tutorial
ZeroMQ comes with a lot binding, here is a quick tutorial to pickup the C# one.
Create one console application, and search Zeromq in the Nuget package, you will see one for x64 and one for x86.
then we can create a zemomq server and one client which send message to the server, ![]()
Run the application,
for the Node.js, we can install one module called , zmq which is the zeromq binding for node.js
then create one simple js code and send a message to the 5555 service,( using buffer as the encoder for utf8) ![]()
Friday, April 19, 2013
Bug: Android google-tv-remote library
If you use the android google-tv-remote library, and your device modal contains some special characters. it might crashed your android application .
When you check the code, it generate the x509 name through the following logic,
So if you are run a new ATT HTC ONE X+ phone, you might get the Name like
CN=anymote/evitareul/evitareul/HTC One X+/devid
however, according to the naming conventions, the ``special'' characters required by RFC2253 in a field That is ,+"<>; so if you don’t replace it or encoding it, you will get Exception. If you don’t catch it, it might crash your application.
the code only catch the generalsecurityeception, not the naming exception.
so you need to encode or replace the special characters. and catch the exception just in case.
Monday, April 15, 2013
How to : run python script as a windows service on windows 2008
Just setup one django python application, always we run the script Python manage.py start 0.0.0.0:8080 to start a web application, if you want to run this a service. here is a quick tutorial,
Download the windows resource kit which contains one utility called svcany. basically you can run cmd as a service. most command can run on windows server 2008 all though they are designed for windows server 2003. then install it.
Here is a kb about the svcany. http://www.microsoft.com/en-us/download/details.aspx?id=17657
then use the built in command SC to create one windows service. we just point the binPath to the scany.exe location.
| SC Create Askbot80 binPath= “d:\windows resource kit\tools\svcany.exe” #remember there must be a space between binpath= and the value. |
Now when you go to services mmc, you can see the service is there.
then run regedit, to put the python script into the parameters settings.
go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\, you can see the service we just created is there already.
we just create one new key called Parameters, and under Parameters create one string key named Application , then enter the given python and python script there.
then you can start the service we just created.
Wednesday, April 3, 2013
How to : Test Microsoft Enterprise Library 5.0 tutorial , Basic Logging support.
Microsoft enterprise library has been updated with the support for .net framework 4.0 , supporting for the WinRT is coming, you can check the uservoice to vote for the features you want. Here is the quick tutoria to get started , we run some basic click and point setup, then do the GUI based config. then same basic coding,
Installation,
you can setup any project and using the NuGet to search enterprise library, then all the available blocks and extensions are there.
Search “Enterprise” in the nuget source, you will see a lot blocks , we pickup the logging block first,
it will show you all the dependencies , here the unity is the IOC Container , common is the shard base library .
Now our project has the required assembilies, Next step, we need one editor to do the configuration. Download and Install this Config Editor. and restart the IDE, then you can right click app.config, and see the editor option with along with the WCF configuration
Now let’s do some basic configuration to turn on the logging. basically we inject some implementation of the logwriter and it’s dependencies for implementations.
click the blocks menu, you will see all the available blocks we can configure. (once we add more nuget package like cryptography , you will see more options in the menu) ![]()
by default, it pick up one eventlog listener and using the giving format. . we just leave it as it. then save the config
Now, let’s write a helloword app to write some dummy log.
get a container first, then we can retrieve the logwriter from the contonainer, I will use the unitycontainer.
| var container = new UnityContainer(); |
then let’s get the reference to logwriter. then dump some message,
Run it, we can see the log in the event log there.
Now app is there, we can simply change the config file, and change the log to a text file or event a Database table.
right click the target listener and add, you can see we have several ones. we just pick up the flat file.
and chose the formmater to the default one, which you can config it too, like add more fileds.
then assign this listener to the right category. for this demo just assign to the general one. ![]()
Save it and run. we can see the log file called trace.log was generated. with the following contents
if we want to save it to DB, search NUget, and add the logging for db blocks
then we you add log listener, you will see a new one.
for the database listener to work, need run the scripts under the package folder and specify the db connection string. that’s it.
Thursday, February 14, 2013
Python REST Framework FLASK
Flask is a very lightweight REST framework for python, here is a very basic tutorial to get started.
install Flask,
pip install flask,
then create one module to test the flask.
hello world test,
then run the web server,
now http://localhost:8000/, you will see the hellofalsk page,
test to list folders and return as Json,
here we put prefix in the url template. in the method we can assess the url passed from user side.
test to get the request information, like the user-agent. just import the global request.
![]()