Skip to content

Commit

Permalink
Final commit before jna
Browse files Browse the repository at this point in the history
  • Loading branch information
yhs0602 committed Sep 28, 2018
1 parent 549b803 commit 358b8f1
Show file tree
Hide file tree
Showing 20 changed files with 41 additions and 19 deletions.
9 changes: 6 additions & 3 deletions AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,12 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.jourhyang.disasmarm"
android:versionCode="1"
android:versionName="1.0">
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
android:versionName="1.0"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
tools:remove="android:maxSdkVersion" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
tools:remove="android:maxSdkVersion"/>

<uses-sdk android:minSdkVersion="4" />
<application android:label="@string/app_name"
Expand Down
Binary file modified bin/classes.dex
Binary file not shown.
Binary file modified bin/classesdebug/adrt/ADRTMetadata.class
Binary file not shown.
Binary file modified bin/classesdebug/com/jourhyang/disasmarm/MainActivity$0$debug.class
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified bin/classesdebug/com/jourhyang/disasmarm/MainActivity.class
Binary file not shown.
Binary file not shown.
Binary file modified bin/classesdebug/com/jourhyang/disasmarm/SettingsActivity.class
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified bin/classesrelease/com/jourhyang/disasmarm/MainActivity.class
Binary file not shown.
Binary file modified bin/classesrelease/com/jourhyang/disasmarm/MainActivity.dex
Binary file not shown.
Binary file modified bin/classesrelease/com/jourhyang/disasmarm/SettingsActivity.class
Binary file not shown.
Binary file modified bin/classesrelease/com/jourhyang/disasmarm/SettingsActivity.dex
Binary file not shown.
Binary file modified bin/resources.ap_
Binary file not shown.
13 changes: 10 additions & 3 deletions src/com/jourhyang/disasmarm/FileSelectorActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import android.widget.*;
import java.io.*;
import java.util.*;
import android.util.*;

public class FileSelectorActivity extends ListActivity {
private List<String> item = (List<String>) null;
Expand All @@ -17,10 +18,10 @@ public class FileSelectorActivity extends ListActivity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.onCreate(savedInstanceState);;
setContentView(R.layout.fileaselactivity);
mPath = (TextView) findViewById(R.id.path);
getDir(root);
getDir("/sdcard/");
}

private void getDir(String dirPath) {
Expand All @@ -35,7 +36,13 @@ private void getDir(String dirPath) {
item.add("../");
path.add(f.getParent());
}

if(files==null)
{
Log.e("Disassembler dirsel","listfile null");
ArrayAdapter<String> fileList = new ArrayAdapter<String>(this, R.layout.row, item);
setListAdapter(fileList);
return;
}
for (int i = 0; i < files.length; i++) {
File file = files[i];
path.add(file.getPath());
Expand Down
4 changes: 4 additions & 0 deletions src/com/jourhyang/disasmarm/ListViewItem.java
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,10 @@ public String getCondition()
return condition;
}

public void AddComment(String comment)
{
this.comments+=comment;
}
@Override
public String toString()
{
Expand Down
33 changes: 20 additions & 13 deletions src/com/jourhyang/disasmarm/MainActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class MainActivity extends Activity implements Button.OnClickListener
ELFUtil elfUtil;
SharedPreferences setting;
SharedPreferences.Editor editor;
private String TAG="Disassembler";
private static final String TAG="Disassembler";

boolean showAddress=true;
boolean showLabel=true;
Expand Down Expand Up @@ -391,6 +391,7 @@ public void run()
long addr=elfUtil.getCodeSectionVirtAddr();
Log.v(TAG, "code section point :" + Long.toHexString(index));
// getFunctionNames();
HashMap xrefComments=new HashMap();
for (;;)
{
DisasmResult dar=new DisasmResult(filecontent, index, addr);
Expand All @@ -404,7 +405,10 @@ public void run()
//break;
}
final ListViewItem lvi=new ListViewItem(dar);

if(lvi.isBranch())
{
xrefComments.put(lvi.getTargetAddress(),lvi.address);
}
runOnUiThread(new Runnable(){
@Override
public void run()
Expand Down Expand Up @@ -443,6 +447,9 @@ public void run()
}
mNotifyManager.cancel(0);
final int len=disasmResults.size();
//add xrefs


runOnUiThread(new Runnable(){
@Override
public void run()
Expand Down Expand Up @@ -543,27 +550,27 @@ public void AdjustShow(TextView t1v, TextView t2v, TextView t3v, TextView t4v, T
t7v.setVisibility(isShowComment() ? View.VISIBLE: View.GONE);
}

final int REQUEST_WRITE_STORAGE_REQUEST_CODE=1;
private void requestAppPermissions() {
public static final int REQUEST_WRITE_STORAGE_REQUEST_CODE=1;
public static void requestAppPermissions(Activity a) {
if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
return;
}

if (hasReadPermissions() && hasWritePermissions()) {
if (hasReadPermissions(a) && hasWritePermissions(a)) {
Log.i(TAG,"Has permissions");
return;
}
requestPermissions(new String[] {
a.requestPermissions(new String[] {
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
}, REQUEST_WRITE_STORAGE_REQUEST_CODE); // your request code
}

private boolean hasReadPermissions() {
return checkSelfPermission( Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED;
public static boolean hasReadPermissions(Context c) {
return c.checkSelfPermission( Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED;
}

private boolean hasWritePermissions() {
return checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED;
public static boolean hasWritePermissions(Context c) {
return c.checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED;
}
/** Called when the activity is first created. */
@Override
Expand Down Expand Up @@ -645,14 +652,14 @@ public void onItemClick(AdapterView<?> parent, View p2, int position, long id)
ListViewItem lvi=(ListViewItem) parent.getItemAtPosition(position);
if (lvi.isBranch())
{

}
// TODO: Implement this method
return;
}
});

requestAppPermissions();
requestAppPermissions(this);
// ViewGroup.LayoutParams lp= listview.getLayoutParams();
//listview.setMinimumHeight(getScreenHeight());
//listview.setLayoutParams(lp);
Expand Down
1 change: 1 addition & 0 deletions src/com/jourhyang/disasmarm/SettingsActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ protected void onCreate(Bundle savedInstanceState) {
}
//setOnPreferenceChange(findPreference("userNameOpen"));
// setOnPreferenceChange(findPreference("autoUpdate_ringtone"));
MainActivity.requestAppPermissions(this);
}

private void setOnPreferenceChange(Preference mPreference) {
Expand Down

0 comments on commit 358b8f1

Please sign in to comment.