Skip to content

Commit ac0758e

Browse files
committed
feat(android): add ability to use hex sha1 signature string in validateSignature (resolves #10)
1 parent fef08ee commit ac0758e

File tree

7 files changed

+67
-45
lines changed

7 files changed

+67
-45
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
###### 2024.01.09 [v3.4.1]
2+
3+
```
4+
feat(android): add ability to use hex sha1 signature string in validateSignature (resolves #10)
5+
```
6+
17
###### 2023.07.20 [v3.4.0]
28

39
```

example/starling/src/TestPackageManager-app.xml

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8" standalone="no"?>
2-
<application xmlns="http://ns.adobe.com/air/application/50.1">
2+
<application xmlns="http://ns.adobe.com/air/application/50.2">
33
<id>com.distriqt.test</id>
44
<filename>TestPackageManager</filename>
55
<name>TestPackageManager</name>
@@ -88,6 +88,7 @@
8888
<extensionID>com.distriqt.Core</extensionID>
8989
<extensionID>com.distriqt.PackageManager</extensionID>
9090
<extensionID>androidx.core</extensionID>
91+
<extensionID>com.jetbrains.kotlin</extensionID>
9192
</extensions>
9293

9394

example/starling/src/com/distriqt/test/packagemanager/Main.as

+4-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,10 @@ package com.distriqt.test.packagemanager
110110
addAction( "Show Install Settings", _tests.showManageUnknownAppSourcesSettings );
111111

112112
addAction( "Kill Process", _tests.killProcess );
113-
113+
114+
addAction( "Validate Signature", _tests.validateSignature );
115+
116+
114117
addChild( _tests );
115118
addChild( _text );
116119
addChild( _container );

example/starling/src/com/distriqt/test/packagemanager/PackageManagerTests.as

+54-42
Original file line numberDiff line numberDiff line change
@@ -17,32 +17,31 @@ package com.distriqt.test.packagemanager
1717
import com.distriqt.extension.packagemanager.PackageInfo;
1818
import com.distriqt.extension.packagemanager.PackageManager;
1919
import com.distriqt.extension.packagemanager.events.PackageManagerEvent;
20-
20+
2121
import flash.filesystem.File;
2222
import flash.utils.getTimer;
23-
23+
2424
import starling.display.Sprite;
25-
26-
25+
2726
/**
2827
*/
2928
public class PackageManagerTests extends Sprite
3029
{
3130
public static const TAG:String = "";
32-
31+
3332
private var _l:ILogger;
34-
35-
33+
34+
3635
private function log( log:String ):void
3736
{
3837
_l.log( TAG, log );
3938
}
40-
41-
39+
40+
4241
////////////////////////////////////////////////////////
4342
// FUNCTIONALITY
4443
//
45-
44+
4645
public function PackageManagerTests( logger:ILogger )
4746
{
4847
_l = logger;
@@ -59,39 +58,39 @@ package com.distriqt.test.packagemanager
5958
trace( e );
6059
}
6160
}
62-
63-
61+
62+
6463
////////////////////////////////////////////////////////
6564
//
6665
//
67-
66+
6867
public function listen():void
6968
{
7069
log( "listen()" );
7170
PackageManager.service.addEventListener( PackageManagerEvent.PACKAGE_REMOVED, packageRemovedHandler );
7271
}
73-
74-
72+
73+
7574
private function packageRemovedHandler( event:PackageManagerEvent ):void
7675
{
7776
log( event.type + "::" + event.packageName );
7877
}
79-
80-
78+
79+
8180
//
8281
// INSTALLER
8382
//
84-
83+
8584
public function getInstaller():void
8685
{
8786
log( "getInstaller() = " + PackageManager.service.getInstallerPackageName() );
8887
}
89-
90-
88+
89+
9190
//
9291
// INSTALLED APPLICATIONS
9392
//
94-
93+
9594
public function getInstalledApplications():void
9695
{
9796
log( "getInstalledApplications()" );
@@ -108,19 +107,19 @@ package com.distriqt.test.packagemanager
108107
}
109108
log( "getInstalledApplications(): print complete: " + String( getTimer() - startTime ) );
110109
}
111-
112-
110+
111+
113112
public function getInstalledApplicationsAsync():void
114113
{
115114
log( "getInstalledApplicationsAsync()" );
116115
var startTime:int = getTimer();
117-
116+
118117
//
119118
// You can use either a callback function or the event (or both)
120119
//
121-
120+
122121
PackageManager.service.addEventListener( PackageManagerEvent.GET_INSTALLED_APPLICATIONS, getInstalledApplicationsHandler );
123-
122+
124123
PackageManager.service.getInstalledApplicationsAsync(
125124
function ( installedPackages:Array ):void
126125
{
@@ -130,14 +129,14 @@ package com.distriqt.test.packagemanager
130129
);
131130
log( "getInstalledApplicationsAsync(): complete: " + String( getTimer() - startTime ) );
132131
}
133-
134-
132+
133+
135134
private function getInstalledApplicationsHandler( event:PackageManagerEvent ):void
136135
{
137136
printPackages( event.data );
138137
}
139-
140-
138+
139+
141140
private function printPackages( installedPackages:Array ):void
142141
{
143142
if (installedPackages != null)
@@ -148,12 +147,12 @@ package com.distriqt.test.packagemanager
148147
}
149148
}
150149
}
151-
152-
150+
151+
153152
//
154153
// APP INSTALL
155154
//
156-
155+
157156
public function appInstall():void
158157
{
159158
log( "appInstall()" );
@@ -166,7 +165,7 @@ package com.distriqt.test.packagemanager
166165
File.applicationDirectory.resolvePath( "assets/Main.apk" ).copyTo( apkFile );
167166
log( "copying apk complete" );
168167
}
169-
168+
170169
log( "installApplication( " + apkFile.nativePath + " )" );
171170
PackageManager.service.installApplication( apkFile.nativePath );
172171
}
@@ -175,27 +174,40 @@ package com.distriqt.test.packagemanager
175174
log( "canRequestApplicationInstalls() = false" );
176175
}
177176
}
178-
179-
177+
178+
180179
public function showManageUnknownAppSourcesSettings():void
181180
{
182181
log( "showManageUnknownAppSourcesSettings()" );
183182
PackageManager.service.showManageUnknownAppSourcesSettings();
184183
}
185-
186-
184+
185+
187186
//
188187
// KILL PROCESS
189188
//
190-
191-
189+
190+
192191
public function killProcess():void
193192
{
194193
var processName:String = "";
195194
var success:Boolean = PackageManager.service.killProcess( processName );
196195
log( "killProcess(" + processName + ") = " + success );
197196
}
198-
197+
198+
199+
//
200+
// SIGNATURES
201+
//
202+
203+
public function validateSignature():void
204+
{
205+
var signature:String = "SHA1SIGNATUREFROMKEYTOOLWITHNOCOLONS".replace( /:/g, "" );
206+
var valid:Boolean = PackageManager.service.validateSignature( signature );
207+
log( "validateSignature(" + signature + "): " + valid );
208+
}
209+
210+
199211
}
200-
212+
201213
}

lib/VERSION.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
| Extension | Version | Android Lib | iOS Lib |
44
| --- | --- | --- | --- |
5-
| com.distriqt.PackageManager | 3.4.0 | | |
5+
| com.distriqt.PackageManager | 3.4.1 | | |

lib/com.distriqt.PackageManager.ane

-211 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)